数据挖掘项目(Analysis Services - 数据挖掘)

在 Analysis Services 中开发数据挖掘解决方案时,应首先创建 Analysis Services 项目。在该项目中,定义将用于分析的数据源,然后建立包括处理数据所使用的算法和自定义指令的模型。您还可以继续在该项目中测试和完善模型。对解决方案感到满意之后,可以将它部署到其他服务器或者在应用程序中使用它,以便提供预测和分析。

以下各部分概述了创建数据挖掘解决方案的工具和过程,并提供了每个步骤所使用的资源的链接。

创建 Analysis Services 项目

开发数据挖掘解决方案时,必须首先使用 Business Intelligence Development Studio 新建一个 Analysis Services 项目。每个数据挖掘项目都包含以下四种对象:数据源;基于数据源的数据源视图;定义如何在模型中使用数据的挖掘结构;以及创建和存储模式的挖掘模型。

有关详细信息,请参阅:定义 Analysis Services 项目使用数据源向导定义数据源 (Analysis Services)

定义数据源

数据源定义 Analysis Services 服务器连接到此数据源时将使用的连接字符串和身份验证信息。数据源可以包含多个表或视图。Analysis Services 可以使用关系数据库和联机分析处理 (OLAP) 数据库或外部访问接口中的数据集。

定义数据源的此连接之后,可以创建标识与模型相关的特定数据的视图。利用数据源视图,还可以自定义向挖掘模型提供数据源中的数据的方式。您可以修改数据结构,使其与项目的关系更密切,或者仅选择某些种类的数据。如果要筛选数据,则可以在数据源视图或者在模型级别应用的筛选器中执行此操作。

关于所需数据量以及应如何清除和格式化这些数据的要求将根据调查这些数据时所使用的算法的不同而不同。

有关详细信息,请参阅:定义数据源视图 (Analysis Services)

向 Analysis Services 项目中添加挖掘结构

一旦具有足够数据可以开始分析,请选择与业务问题关系最为密切的数据列,并向项目中添加挖掘结构。挖掘结构定义从项目中的数据源视图或 OLAP 多维数据集获取的数据列和带嵌套表的列。

若要添加新的挖掘结构,请启动数据挖掘向导,该向导可引导您完成定义数据和选择创建初始数据挖掘模型的过程。创建结构时,还可以对数据分区,使其包含一个定型数据集和一个测试数据集,前者用于生成模型,后者可用于测试或验证基于该结构的所有挖掘模型。您可以使用数据挖掘设计器的**“挖掘结构”**选项卡修改现有的挖掘结构,包括添加列和嵌套表。

有关详细信息,请参阅:创建新的挖掘结构数据挖掘设计器数据挖掘向导(Analysis Services - 数据挖掘)

使用数据挖掘模型

您可以为每个挖掘结构添加一个或多个挖掘模型。挖掘模型定义将用于数据的算法或分析方法。“处理”每个模型的方法是,通过生成数据的数学模型的算法来运行数据源视图中的数据。此过程也称为“对模型定型”。

处理模型之后,可以用可视化方式浏览挖掘模型,并创建针对该模型的预测查询。

Analysis Services 提供了用于处理挖掘模型对象的若干选项,这些处理功能包括控制处理的对象及其处理方式。例如,可以处理结构并缓存数据,然后向该结构继续添加新模型。如果已缓存数据,则可以使用“钻取”查询返回有关在模型中使用的事例的详细信息。

有关详细信息,请参阅:数据挖掘算法(Analysis Services – 数据挖掘)处理 Analysis Services 对象针对挖掘模型和挖掘结构使用钻取(Analysis Services – 数据挖掘)

验证数据挖掘模型

创建模型之后,可以调查结果,并确定性能最佳的模型。在数据挖掘设计器中的**“挖掘模型查看器”**选项卡中,Analysis Services 为每个挖掘模型类型提供了查看器,您可以使用这些查看器来浏览挖掘模型。

在该设计器的**“挖掘准确性图表”**选项卡中,Analysis Services 提供可用于直接比较挖掘模型并选择最准确或最有用的挖掘模型的工具。这些工具包括提升图、利润图和分类矩阵。 

您还可以使用 SQL Server 2008 中的新增交叉验证报表,对数据子集进行迭代抽样,进而确定模型是否偏重于某一特定数据集。报表提供的统计信息可用于客观地比较模型,并评估您的定型数据的质量。

有关详细信息,请参阅:查看数据挖掘模型验证数据挖掘模型(Analysis Services – 数据挖掘)

创建预测

大多数数据挖掘项目的主要目标是使用挖掘模型来创建预测。浏览并比较了挖掘模型之后,可以使用若干工具中的一个来创建预测。Analysis Services 提供了一种称为数据挖掘扩展插件 (DMX) 的查询语言,该语言是创建预测的基础,并且可方便地编写脚本。为了帮助您生成 DMX 预测查询,SQL Server 在 SQL Server Management Studio 和 Business Intelligence Development Studio 中提供了查询生成器,并在 Management Studio 中提供了用于查询编辑器的 DMX 模板。在 BI Development Studio 中,您可以从数据挖掘设计器的**“挖掘模型预测”**选项卡中访问查询生成器。

有关详细信息,请参阅:创建 DMX 预测查询数据挖掘扩展插件 (DMX) 语句参考

SQL Server Management Studio

使用 BI Development Studio 生成了用于数据挖掘项目的挖掘模型之后,您可以在 Management Studio 中管理和使用模型并创建预测。使用 SQL Server Management Studio 中的查询工具,您可以浏览模型中的数据,创建复杂内容查询,或管理 SQL Server 实例中存储的数据挖掘对象。

有关详细信息,请参阅:SQL Server Management Studio 中的数据挖掘SQL Server Management Studio 中的数据挖掘

SQL Server Reporting Services

创建完挖掘模型之后,您可能需要将结果分发给更多的用户。由于数据挖掘的结果存储在可通过数据库查询随时访问的一致架构中,因此,您可以使用多种客户端工具来呈现分析结果、浏览模型中的模式或进行预测。

可以使用 Microsoft SQL Server Reporting Services 中的报表设计器来创建报表,可以使用这些报表显示挖掘模型包含的信息。您可以使用任何 DMX 查询的结果作为报表的基础,并可利用 Reporting Services 中提供的参数化和格式化功能。

有关详细信息,请参阅:针对 DMX 的 Analysis Services 连接类型 (SSRS)将 Reporting Services 集成到应用程序中

通过编程使用数据挖掘

Analysis Services 提供了数种工具,您可以借助这些工具通过编程使用数据挖掘。DMX 语言提供了一些语句,您可以使用这些语句来创建、定型和使用数据挖掘模型。还可以通过使用 XML for Analysis (XMLA) 和 Analysis Services 脚本语言 (ASSL) 的组合或使用分析管理对象 (AMO) 来执行这些任务。

您可以使用数据挖掘架构行集访问所有与数据挖掘关联的元数据。例如,可以使用架构行集来确定算法支持的数据类型,或确定数据库中存在的模型名称。

有关详细信息,请参阅:数据挖掘扩展插件 (DMX) 参考数据挖掘架构行集在 Analysis Services 中使用 XML for Analysis (XMLA)