数据挖掘 Web 控件库

更新日期: 2006 年 7 月 17 日

数据挖掘 Web 控件库用于使数据挖掘用户的操作范围能够从 Microsoft SQL Server 2005 Analysis Services (SSAS) 扩展到 Web。此库提供了数据挖掘模型查看器的简化版。使用数据挖掘 Web 控件,您可以在任一安装了 Microsoft Internet Explorer 的计算机上浏览复杂的挖掘模型。

这些控件位于服务器端。也就是说,这些控件位于 Web 服务器的内存空间中。Web 服务器可以是(但不要求一定是)安装了 Analysis Services 的计算机。但是,在将要安装数据挖掘 Web 控件的计算机上,必须安装了并正在运行 Internet 信息服务 (IIS) 和 ASP.NET 2.0(或更高版本)。

与这些示例相关联的文档和源代码位于 C:\Program Files\Microsoft SQL Server\90\Samples\AnalysisServices\DataMining\Data Mining Web Controls 文件夹下。

语言

Transact-SQL 和 C#

功能

“数据挖掘 Web 控件”示例使用了下表中列出的 SQL Server 2005 Analysis Services 功能。

应用领域 功能

DMClusterViewer

聚类分析算法

DMDecisionTreeViewer

决策树算法

DMNaiveBayesViewer

Naïve Bayes 算法

整体

Analysis Services、OLE DB、Transact-SQL、AdventureWorks 示例数据库

必备组件

在运行此示例之前,请确保安装了下列软件:

  • Microsoft SQL Server 2005,包括下列组件:
    • SQL Server 2005 数据库引擎
    • Analysis Services
    • SQL Server Management Studio
    • Business Intelligence Development Studio
    • 两个示例数据库 - Adventure Works DW(数据仓库)和 AdventureWorks (OLTP)
    • Analysis Services 示例
    • 部署到 Analysis Services 实例的 Adventure Works DW Analysis Services 项目
    • .NET Framework SDK 2.0 或 Microsoft Visual Studio 2005。您可以免费获取 .NET Framework SDK。有关详细信息,请参阅 SQL Server 2005 联机丛书中的安装 .NET Framework SDK

AdventureWorks 数据库的更新版本还可以从 SQL Server 开发人员中心网页上下载。

SQL Server 2005 数据库引擎 示例的更新版本还可以从 SQL Server 开发人员中心网页上下载。

ms160727.note(zh-cn,SQL.90).gif注意:
SQL Server 2005 运行基于 Itanium 平台的计算机不支持 Business Intelligence Development Studio;基于 x64 的平台支持 64 位开发环境。将 SQL Server 2005 示例所用的数据库部署在基于 Itanium 的平台上时,可以在运行基于 x86 或基于 x64 平台的计算机上修改和运行这些示例。

生成示例

在生成示例之前,请确保在运行 Web 服务器的计算机上安装 Analysis Services。如果无法完整安装 Analysis Services,至少应在该服务器上安装客户端连接部分,特别是 MSOLAP,即 Analysis Services 的 OLE DB 访问接口。数据挖掘 Web 控件需要通过此访问接口来连接到运行 Analysis Services 和数据挖掘模型的服务器。

若要生成该示例,您必须执行以下任务:

  • 安装和部署 Adventure Works DW 示例 Analysis Services 项目。此项目包含将在该项目中使用的挖掘模型。
  • 生成和安装数据挖掘 Web 控件。

下列步骤说明如何执行每项安装任务。

部署挖掘模型

  1. 在 Windows 资源管理器中,定位到 C:\Program Files\Microsoft SQL Server\90\Tools\Samples\AdventureWorks Analysis Services Project,打开安装的 SQL Server 版本所对应的文件夹,然后双击 Adventure Works.sln 文件。

    将在 Business Intelligence Development Studio 中打开 Adventure Works DW 项目。

  2. 按 F5 以生成和部署该项目。

    ms160727.note(zh-cn,SQL.90).gif注意:
    生成和部署 AdventureWorksAS 项目会将挖掘模型部署到服务器上。

生成和安装数据挖掘 Web 控件

  1. 在 Windows 资源管理器中,定位到 C:\Program Files\Microsoft SQL Server\90\Samples\Analysis Services\DataMining\Data Mining Web Controls,然后双击 WebControls.sln 文件。

    将在 Visual Studio 中打开 WebControls 解决方案。

  2. 在**“生成”菜单上,单击“配置管理器”**。

  3. 在“配置管理器”对话框中,对 DMHTMLViewersSetup 和 WebControls 项目选中**“生成”**复选框(如果尚未选中)。

  4. 在**“生成”菜单上,单击“重新生成解决方案”**。

  5. 在 Windows 资源管理器中,定位到 C:\Program Files\Microsoft SQL Server\90\Samples\Analysis Services\DataMining\Data Mining Web Controls\WebControlsSetup\Debug,然后双击 setup.exe 文件。

  6. 在 Microsoft SQL Server 数据挖掘 HTML 控件安装向导中,单击**“下一步”,然后再次单击“下一步”**以开始安装控件。

  7. 安装了控件之后,单击**“下一步”,然后单击“完成”**以完成向导。

    完成向导之后,就会在服务器上添加下列文件夹:

    • C:\Program Files\Microsoft.AnalysisServices.DataMiningHtmlViewers 文件夹,其中包含控件库、控件源代码和本文档。
    • C:\Inetpub\wwwroot\aspnet_client\microsoft_analysisservices_datamininghtmlviewers 文件夹,其中包含数据挖掘 Web 控件使用的客户端脚本和图像。此文件夹还是 Web 共享文件夹。

将控件添加到应用程序

生成示例之后,您就可以使用数据挖掘控件。若要使用这些控件,首先必须创建一个 ASP.NET Web 应用程序,将所需的控件添加到该应用程序,然后对已添加的控件进行配置。

将数据挖掘控件添加到 Web 应用程序

  1. 在 Microsoft Visual Studio .NET 2005 中,在**“文件”菜单上单击“新建网站”**。

  2. 在**“新建网站”对话框中,选择“ASP.NET 网站”,选择 Microsoft Visual Basic 或 Microsoft C# 作为语言,然后单击“确定”**。

  3. 如果工具箱当前不可见,请在**“视图”菜单上单击“工具箱”**。

  4. 在工具箱中,展开所需数据挖掘控件所属的类别(例如,展开**“标准”),右键单击该类别,然后单击“选择项”**。

  5. 在**“选择工具箱项”**对话框中,找到并打开 C:\Program Files\Microsoft.AnalysisServices.DataMiningHtmlViewers\Microsoft.AnalysisServices.DataMiningHTMLViewers.dll 文件。

    组件列表中将显示三个数据挖掘控件,并已自动选中它们的复选框。

  6. 单击**“确定”**。

    现在,这三个数据挖掘控件就会显示在工具箱中的选定类别下。

  7. 若要将某个数据挖掘控件添加到应用程序,请将该控件从工具箱拖到 Web 窗体设计页上。

    当您将数据挖掘控件放置到 Web 窗体页上之后,某些控件属性是必须设置的,还有一些控件属性是可选的。下一部分将介绍如何设置这些属性。

设置控件属性

数据挖掘 Web 控件具有两类属性:

  • **“数据挖掘内容”**类别包含定义要显示的模型时需要设置的属性。在这些属性中,有些属性是要使用控件时必须设置的。下表列出了由所有 Web 控件共享的属性,并指明了哪些属性是必须对所有控件都设置的。

    属性 类型 默认值 必须更改

    Server

    string

    Localhost

    Database

    string

    <空>

    Model

    string

    <空>

    Connection

    System.Data.OleDb.OleDbConnection

    (无)

    除了这些常用的属性之外,必须对 DMDecisionTreeViewer 控件设置其他一些**“数据挖掘内容”**属性。有关这些额外属性的详细信息,请参阅介绍如何设置 DMDecisionTreeViewer 控件属性的部分。

  • **“数据挖掘布局”**类别包含控件的图形属性。由于每个数据挖掘 Web 控件的图形表示形式都不同,因此与控件相关联的图形属性也会相应地有所不同。您可以按原样使用这些属性的默认设置。

若要设置某个控件的属性,可以使用 Visual Studio 中的“属性”窗口。如果看不到“属性”窗口,请右键单击该控件,然后单击**“属性”**。另外,若要轻松访问控件的属性,请在“属性”中选择“按分类顺序”视图。

ms160727.note(zh-cn,SQL.90).gif注意:
此外,您可以通过编程方式在“源”选项卡上显示的代码中设置这些值。

设置 DMClusterView 控件属性

可以使用 DMClusterView 控件来显示使用 Microsoft 聚类分析算法所创建的模型的内容。此控件的分类查看器不如 Business Intelligence Development Studio 中的分类查看器功能丰富,仅支持分类特征和分类对比。

DMClusterViewer 控件具有属于**“数据挖掘内容”类别的可选属性,必须对这些属性进行设置;还具有属于“数据挖掘布局”**类别的可选属性,可以按原样使用这些属性默认设置。

为 DMClusterView 控件设置数据挖掘内容属性

必须为 DMClusterView 控件设置的、属于**“数据挖掘内容”**类别的属性是那些由所有 Web 控件共享的属性,包括 ServerDatabaseModel。还可以根据需要更改此控件的 Connection 属性。

设置 DMClusterView 控件必需的属性

  1. 在 Visual Studio 中,在 Web 窗体设计视图上选择 DMClusterView 控件。

  2. 在“属性”窗口中,在**“数据挖掘内容”**类别中对下列属性进行设置:

    • Server 属性设置为安装了 Analysis Services 的计算机的名称。
    • Database 属性设置为包含要显示的模型的目录名称。在此示例中,包含挖掘模型的数据库名称是 Adventure Works DW
    • Model 属性设置为要在查看器中加载的挖掘模型。
    • (可选)将 Connection 属性设置为现有 OLE DB 连接(即 System.Data.OleDb.OleDbConnection 对象)。这使得控件可以与应用程序共享连接而不用创建一个新连接。

为 DMClusterView 控件设置数据挖掘布局属性

下表列出了与 DMClusterView 控件相关联的图形属性。可以更改或保留这些图形属性的默认设置。

属性 类型 默认值 必须更改

BarColor

System.Drawing.Color

Navy

ViewerMode

GridViewerMode

Discrimination

设置 DMClusterView 控件的图形属性

  1. 在 Visual Studio 中,在 Web 窗体设计视图上选择 DMClusterView 控件。

  2. 在“属性”窗口中,在**“数据挖掘布局”**类别中对下列属性进行设置:

设置 DMNaiveBayesViewer 控件属性

可以使用 DMNaiveBayesViewer 控件来显示使用 Microsoft Naive Bayes 算法所创建的挖掘模型的内容。DMNaiveBayesViewer 控件仅支持属性特征和属性值之间的对比。

为 DMNaiveBayesViewer 控件设置数据挖掘内容属性

必须为 DMNaiveBayesViewer 控件设置的、属于**“数据挖掘内容”**类别的属性是那些由所有 Web 控件共享的属性,包括 ServerDatabaseModel。还可以根据需要更改此控件的 Connection 属性。

设置 DMNaiveBayesViewer 控件必需的属性

  1. 在 Visual Studio 中,在 Web 窗体设计视图上选择 DMNaiveBayesViewer 控件。

  2. 在“属性”窗口中,在**“数据挖掘内容”**类别中对下列属性进行设置:

    • Server 属性设置为安装了 Analysis Services 的计算机的名称。
    • Database 属性设置为包含要显示的模型的目录名称。在此示例中,包含挖掘模型的数据库名称是 Adventure Works DW
    • Model 属性设置为要在查看器中加载的挖掘模型。
    • (可选)将 Connection 属性设置为现有 OLE DB 连接(即 System.Data.OleDb.OleDbConnection 对象)。这使得控件可以与应用程序共享连接而不用创建一个新连接。

为 DMNaiveBayesViewer 控件设置数据挖掘布局属性

下表列出了与 DMNaiveBayesViewer 控件相关联的图形属性。可以更改或保留这些图形属性的默认设置。

属性 类型 默认值 必须更改

BarColor

System.Drawing.Color

Navy

ViewerMode

GridViewerMode

Discrimination

设置 DMNaiveBayesViewer 控件特有的属性

  1. 在 Visual Studio 中,在 Web 窗体设计视图上选择 DMNaiveBayesViewer 控件。

  2. 在“属性”窗口中,在**“数据挖掘布局”**类别中对下列属性进行设置:

设置 DMDecisionTreeViewer 控件属性

可以使用 DMDecisionTreeViewer 控件来显示使用 Microsoft 决策树算法所创建的模型的内容。DMDecisionTreesViewer 控件可以以下列两种模式工作:

  • 树模式
    显示完整的决策树并允许执行下列操作:

    • 展开和折叠节点。
    • 遵循决策树中的拆分方式。
    • 基于对预测属性的状态支持显示明暗度。
    • 通过使用工具提示检查特定节点的分发情况。
  • 节点详细信息模式
    提供有关树中某个特定节点的详细信息,由 MINING_MODEL_CONTENT 架构中的 NODE_UNIQUE_NAME 字段来标识。根据属性是离散/离散化(分类)的还是连续(回归)的,节点详细信息视图将有所不同。

为 DMDecisionTreeViewer 控件设置数据挖掘内容属性

除了由所有 Web 控件共享的、属于**“数据挖掘内容”**类别的属性 - ServerDatabaseModel 之外,还必须为 DMDecisionTreeViewer 控件设置下表中列出的属性。

属性 类型 默认值 必须更改

TargetNode

String

<空>

TargetTree

String

<空>

注意 必须设置 TargetTree 属性或 TargetNode 属性之一。这两个属性不能都为<空>。

设置 DMDecisionTreeViewer 控件必需的属性

  1. 在 Visual Studio 中,在 Web 窗体设计视图上选择 DMDecisionTreeViewer 控件。

  2. 在“属性”窗口中,在**“数据挖掘内容”**类别中对下列属性进行设置:

    • Server 属性设置为安装了 Analysis Services 的计算机的名称。

    • Database 属性设置为包含要显示的模型的目录名称。在此示例中,包含挖掘模型的数据库名称是 Adventure Works DW

    • Model 属性设置为要在查看器中加载的挖掘模型。

    • (可选)将 Connection 属性设置为现有 OLE DB 连接(即 System.Data.OleDb.OleDbConnection 对象)。这使得控件可以与应用程序共享连接而不用创建一个新连接。

    • TargetTree 属性设置为要显示在控件中的树。请用可预测属性的名称来标识此树。若要在模型中检索可预测属性的名称,请使用类似于以下查询的查询:

      "SELECT ATTRIBUTE_NAME FROM [Model].CONTENT WHERE NODE_TYPE=2"
      
      ms160727.note(zh-cn,SQL.90).gif注意:
      如果以树模式使用 DMDecisionTreeViewer 控件,则必须设置 TargetTree 属性。
    • TargetNode 属性设置为要显示的节点的 NODE_UNIQUE_NAME 值。若要获取树中节点的列表,请使用类似以下查询的查询:

      "SELECT NODE_UNIQUE_NAME, ATTRIBUTE_NAME FROM [Model].CONTENT WHERE NODE_TYPE=3 OR NODE_TYPE=4"
      
      ms160727.note(zh-cn,SQL.90).gif注意:
      如果以节点详细信息模式使用 DMDecisionTreeViewer 控件,则必须设置 TargetNode 属性。

为 DMDecisionTreeViewer 控件设置数据挖掘布局属性

下表列出了与 DMDecisionTreeViewer 控件相关联的图形属性。可以更改或保留这些图形属性的默认设置。

属性 类型 默认值 必须更改

ViewType

TreeViewType

Tree

ShowToolbar

Boolean

True

OverflowBehavior

TreeOverflowBehaviorType

Visible

NodeLowDensity

System.Drawing.Color

White

NodeHighDensity

System.Drawing.Color

Navy

MaxVisibleHistograms

int

6

LineStrokeWidth

int

1

LineStrokeColor

System.Drawing.Color

Black

HistogramTooltipEvent

TreeTooltipEvent

OnMouseOverEvent

HistogramText

System.Drawing.Color

Black

HistogramBackground

System.Drawing.Color

Beige

设置 DMDecisionTreeViewer 控件特有的属性

  1. 在 Visual Studio 中,在 Web 窗体设计视图上选择 DMDecisionTreeViewer 控件。

  2. 在“属性”窗口中,在**“数据挖掘布局”**类别中对下列属性进行设置:

强制模拟

当某个用户打开您的页面时,控件将被实例化。这些控件使用 OLE DB 连接来访问运行 Analysis Services 和数据挖掘模型的服务器。默认情况下,ASP.NET 应用程序使用特定用户 <MACHINE\ASPNET> 的一组凭据来运行,该用户具有有限的权限。这一组权限不足以访问数据挖掘模型。

解决 <MACHINE\ASPNET> 用户的有限权限问题的一种简单而安全的方法是,强制模拟 ASP.NET 应用程序中的 Web 用户。若要进行强制模拟,您必须禁用对正在开发的应用程序的匿名访问。禁用匿名访问之后,您的 Web 应用程序将模拟 Web 客户端的用户,并使用该用户的凭据来访问 Analysis Services 实例。有关禁用对 ASP.NET 应用程序的匿名访问的详细信息,请参阅 Visual Studio 和 IIS 附带的文档。

还有其他一些方法可用来解决由 <MACHINE\ASPNET> 用户导致的访问权限问题:

  • 针对所有请求模拟某个特定用户。(有关详细信息,请参阅 Visual Studio .NET 附带的 MSDN Library 中与 web.config 中的 <identity> 有关的文章)。
  • 为 Analysis Services 实例中的 <MACHINE\ASPNET> 用户添加数据挖掘权限。对于要显示在 Web 控件中的挖掘模型及其相应的数据库和挖掘结构,必须具有读访问权限和读取定义权限。
    ms160727.note(zh-cn,SQL.90).gif注意:
    如果没有使用上述某种方法正确配置安全权限,这些控件将不能访问 Analysis Services 实例。

注释

如果在呈现控件时发生错误,页面上将以红色显示相应的错误消息。

请参阅

任务

SQL Server 插件算法自述文件

其他资源

插件算法

帮助和信息

获取 SQL Server 2005 帮助

更改历史记录

发布日期 历史记录

2006 年 7 月 17 日

新增内容:
  • 添加了有关 Itanium 平台可用性的说明。