数据挖掘算法简介 (10/10) - 插件算法

10.        插件算法

a.    目的

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

有关 Analysis Services 用于与插件算法进行通信的接口的完整说明,请参阅 CodePlex 网站上发布的创建自定义算法和自定义模型查看器的示例。

b.   算法要求

若要将某个算法插入 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>