数据挖掘查询

数据挖掘查询可用于许多目的。 您可以:

  • 将模型应用于新数据,以便进行一个或多个预测。 可以将输入值作为参数提供,也可以在批处理中提供。

  • 获取用于训练的数据的统计摘要。

  • 提取模式和规则,或生成表示模型中模式的典型案例的概要。

  • 提取回归公式和其他用来解释模式的计算。

  • 获取与特定模式匹配的例子。

  • 检索模型中使用的各个事例的详细信息,包括分析中未使用的数据。

  • 通过添加新数据或执行交叉预测来重新训练模型。

本部分概述了开始使用数据挖掘查询所需的信息。 它描述了可以针对数据挖掘对象创建的查询类型,引入了查询工具和查询语言,并提供可针对 SQL Server 数据挖掘中提供的算法生成的查询示例的链接。

了解数据挖掘查询

查询工具和接口

不同模型类型的查询

要求

了解数据挖掘查询

Analysis Services 数据挖掘支持以下类型的查询:

在创建查询之前,建议熟悉 SQL Server 提供的每个数据挖掘算法创建的模型之间的差异。

查询工具和接口

可以使用 SQL Server 提供的查询工具之一以交互方式生成数据挖掘查询。 图形预测查询生成器在 SQL Server Data Tools (SSDT) 和 SQL Server Management Studio 中提供。 如果以前尚未使用预测查询生成器,建议按照 基本数据挖掘教程 中的步骤自行熟悉界面。 有关步骤的快速概述,请参阅使用 预测查询生成器创建预测查询

预测查询生成器有助于启动稍后自定义的查询。 可以轻松添加数据源并将其映射到列,然后通过添加 WHERE 子句或其他函数切换到 DMX 视图并自定义查询。

熟悉数据挖掘模型以及如何生成查询后,还可以使用数据挖掘扩展插件(DMX)直接编写查询。 DMX 是类似于 Transact-SQL 的查询语言,可以从许多不同的客户端使用。 DMX 是用于创建自定义预测和复杂查询的工具。 有关 DMX 的简介,请参阅使用 DMX 创建和查询数据挖掘模型:教程(Analysis Services - 数据挖掘)。

DMX 编辑器在 SQL Server Data Tools (SSDT) 和 SQL Server Management Studio 中提供。 还可以使用预测查询生成器启动查询,然后将视图更改为文本编辑器,并将 DMX 语句复制到另一个客户端。 有关详细信息,请参阅 数据挖掘查询接口

可以通过编程方式编写 DMX 语句,并使用 AMO 或 XMLA 将其从客户端发送到 Analysis Services 服务器。 但是,DMX 是针对挖掘模型创建查询时必须使用的语言。

还可以使用基于数据挖掘架构行集的动态管理视图(DMV)查询模型的元数据、统计信息和某些内容。 通过键入 SELECT 语句,这些 DMV 可以轻松检索有关模型的信息;但是,无法创建预测。 有关 Analysis Services 支持的动态管理视图(DMV)的详细信息,请参阅 使用动态管理视图(DMV)监视 Analysis Services

最后,可以使用 数据挖掘查询任务数据挖掘查询转换创建用于 Integration Services 包的数据挖掘查询。 控制流任务支持多种类型的 DMX 查询,而数据流转换仅支持处理数据流中的数据的查询,这意味着使用 PREDICTION JOIN 语法的查询。

不同模型类型的查询

创建模型时使用的算法极大地影响可以从数据挖掘查询中获取的信息类型。 差异的原因是,每个算法以不同的方式处理数据,并存储不同类型的模式。 例如,某些算法会创建群集;其他人创建树。 因此,可能需要使用专用预测和查询函数,具体取决于所使用的模型类型。

以下列表提供了可在查询中使用的函数的摘要:

  • 常规预测函数: 函数 Predict 是多态函数,这意味着它适用于所有模型类型。 此函数会自动检测正在使用的模型类型,并提示输入其他参数。 有关详细信息,请参阅“预测”(DMX)。

    警告

    并非所有模型都用于进行预测。 例如,可以创建一个没有可预测属性的聚类分析模型。 但是,即使模型没有可预测属性,也可以创建预测查询,以便从模型返回其他类型的有用信息。

  • 自定义预测函数: 每个模型类型都提供一组预测函数,这些预测函数旨在处理该算法创建的模式。

    例如,为 Lag 时序模型提供函数,以便查看用于模型的历史数据。 对于聚类分析模型,函数如 ClusterDistance 更有意义。

    有关每种模型类型支持的函数的详细信息,请参阅以下链接:

    关联模型查询示例 Microsoft Naive Bayes 算法
    聚类分析模型查询示例 神经网络模型查询示例
    决策树模型查询示例 序列聚类分析模型查询示例
    线性回归模型查询示例 时序模型查询示例
    逻辑回归模型查询示例

    还可以调用 VBA 函数,或创建自己的函数。 有关详细信息,请参阅函数(DMX)。

  • 常规统计信息: 有许多函数可用于几乎任何模型类型,这些函数返回一组标准的描述性统计信息,例如标准偏差。

    例如,该 PredictHistogram 函数返回一个表,该表列出指定列的所有状态。

    有关详细信息,请参阅常规预测函数(DMX)。

  • 自定义统计信息: 为每个模型类型提供其他支持函数,以生成与特定分析任务相关的统计信息。

    例如,使用聚类分析模型时,可以使用函数 PredictCaseLikelihood返回与特定事例和聚类关联的可能性分数。 然而,如果您创建了线性回归模型,那么您可能更关心检索系数和截距,您可以通过内容查询来实现这一点。

  • 模型内容函数: 所有模型 的内容 都以标准化格式表示,使你能够使用简单的查询检索信息。 使用 DMX 对模型内容进行查询。 还可以使用数据挖掘架构行集获取某种类型的模型内容。

    在模型内容中,返回的表的每个行或节点的含义因用于生成模型的算法的类型以及列的数据类型而异。 有关详细信息,请参阅内容查询(数据挖掘)。

要求

必须先处理数据挖掘模型,然后才能针对模型创建查询。 处理 Analysis Services 对象需要特殊权限。 有关处理挖掘模型的详细信息,请参阅处理要求和注意事项(数据挖掘)。

若要针对数据挖掘模型执行查询,需要不同级别的权限,具体取决于运行的查询类型。 例如,钻取到事例或结构数据通常需要额外的权限,这些权限可以在挖掘结构对象或挖掘模型对象上进行设置。

但是,如果查询使用外部数据,并且包括 OPENROWSET 或 OPENQUERY 等语句,则查询的数据库必须启用这些语句,并且必须具有基础数据库对象的权限。

有关运行数据挖掘查询所需的安全上下文的详细信息,请参阅 安全概述(数据挖掘)

本节中

本节中的主题更详细地介绍了每种类型的数据挖掘查询,并提供有关如何针对数据挖掘模型创建查询的详细示例的链接。

预测查询 (数据挖掘)

内容查询 (数据挖掘)

钻透查询(数据挖掘)

数据定义查询 (数据挖掘)

数据挖掘查询接口

使用这些链接了解如何创建和使用数据挖掘查询。

任务 链接
查看有关数据挖掘查询的教程和演练 第 6 课:创建和使用预测(基本数据挖掘教程)

时序预测 DMX 教程
在 SQL Server Management Studio 和 SQL Server Data Tools 中使用数据挖掘查询工具 (SSDT) 在 SQL Server Management Studio 中创建 DMX 查询

使用预测查询生成器创建预测查询

将预测函数应用于模型

手动编辑预测查询
处理预测查询中使用的外部数据 选择并映射预测查询的输入数据

选择并映射预测查询的输入数据
处理查询结果 查看并保存预测查询的结果
使用 Management Studio 中提供的 DMX 和 XMLA 查询模板 从模板创建单一实例预测查询

使用 XMLA 创建数据挖掘查询

在 SQL Server Management Studio 中使用 Analysis Services 模板
详细了解内容查询并查看示例 在挖掘模型上创建内容查询

查询用于创建挖掘模型的参数

内容查询 (数据挖掘)
设置查询选项并排查查询权限和问题 更改数据挖掘查询的超时值
在 Integration Services 中使用数据挖掘组件 数据挖掘查询任务

数据挖掘查询转换

另请参阅

数据挖掘算法 (Analysis Services - 数据挖掘)
挖掘模型内容(Analysis Services - 数据挖掘)