插件算法

除 MicrosoftSQL ServerAnalysis Services 所提供的算法外,您还可以将许多其他算法用于数据挖掘。相应地,Analysis Services 为由第三方创建的“插件”算法提供了某种机制。只要这些算法遵守特定的标准,就可以像使用 Microsoft 算法一样在 Analysis Services 中使用它们。插件算法具有 SQL ServerAnalysis Services 提供的算法的所有功能。

有关 Analysis Services 用于与插件算法进行通信的接口的完整说明,请参阅 CodePlex 网站。

算法要求

若要将某个算法插入 Analysis Services,必须实现下列 COM 接口:

  • IDMAlgorithm
    实现一个生成模型的算法,并且实现该结果模型的预测操作。

  • IDMAlgorithmNavigation
    启用浏览器来访问模型的内容。

  • IDMPersist
    启用算法定型的、将由 Analysis Services 保存和加载的模型。

  • IDMAlgorithmMetadata
    介绍算法的功能和输入参数。

  • IDMAlgorithmFactory
    创建实现算法接口的对象的实例,并向 Analysis Services 提供对算法元数据接口的访问。

Analysis Services 使用这些 COM 接口与插件算法进行通信。虽然使用的插件算法必须支持 Microsoft OLE DB for Data Mining 规范,但是这些算法不必支持该规范中的所有数据挖掘选项。您可以使用 MINING_SERVICES 架构行集来确定一个算法的功能。此架构行集列出了每个插件算法提供程序的数据挖掘支持选项。

将新算法与 Analysis Services 一起使用之前必须对新算法进行注册。若要注册一个算法,请将以下信息包含在要将算法包含在其中的 Analysis Services 实例的 .ini 文件中:

  • 算法名称

  • ProgID(可选并且只能为插件算法包括此信息)

  • 指示算法是否启用的标志

下面的代码示例阐明了如何注册新算法:

<ConfigurationSettings>

...

<DataMining>

...

<Algorithms>

...

<Sample_Plugin_Algorithm>

<Enabled>1</Enabled>

<ProgID>Microsoft.DataMining.SamplePlugInAlgorithm.Factory</ProgID>

</Sample_PlugIn_Algorithm>

...

</Algorithms>

...

</DataMining>

...

</ConfigurationSettings>