处理要求和注意事项(数据挖掘)

适用于:SQL Server 2019 及更早版本的 Analysis Services Azure Analysis Services Fabric/Power BI Premium

重要

数据挖掘在 SQL Server 2017 Analysis Services 中已弃用,现在在 SQL Server 2022 Analysis Services 中已停止使用。 对于已弃用和停止使用的功能,文档不会更新。 若要了解详细信息,请参阅 Analysis Services 后向兼容性

本主题介绍了一些处理数据挖掘对象时要记住的技术注意事项。 有关处理的涵义以及如何将处理应用于数据挖掘的一般说明,请参阅 处理数据挖掘对象

针对关系存储区的查询

处理挖掘结构

处理挖掘模型

处理期间针对关系存储区的查询

对于数据挖掘,有以下三个处理阶段:查询源数据、确定原始统计信息和使用模型定义与算法对挖掘模型进行定型。

SQL Server Analysis Services服务器向提供原始数据的数据库发出查询。 此数据库可能是 SQL Server 2017 或早期版本的 SQL Server 数据库引擎的实例。 处理数据挖掘结构时,源中的数据传输到挖掘结构,并在磁盘上保存为一种新的压缩格式。 并不会处理数据源中的每个列,而仅会处理绑定所定义的挖掘结构中包含的列。

SQL Server Analysis Services使用此数据生成所有数据和离散化列的索引,并为连续列创建单独的索引。 针对每个嵌套表发出一个查询以创建索引,并根据每个嵌套表生成一个额外查询,以处理每对嵌套表和事例表之间的关系。 创建多个查询的原因在于处理特殊的内部多维数据存储区。 可以通过设置服务器属性 DatabaseConnectionPoolMax 来限制SQL Server Analysis Services发送到关系存储的查询数。 有关详细信息,请参阅 OLAP Properties

处理模型时,模型不会从数据源中重新读取数据,而从挖掘结构获取数据摘要。 服务器将使用创建的多维数据集以及缓存的索引和事例数据来创建独立的线程,以便为模型定型。

有关支持并行模型处理的SQL Server版本的详细信息,请参阅 SQL Server 2012 () https://go.microsoft.com/fwlink/?linkid=232473 各版本支持的功能。

处理挖掘结构

可以一起处理所有相关模型的挖掘结构,也可以单独进行处理。 在预期某些模型要用较长时间进行处理并且您想要延迟该操作时,从各模型单独处理挖掘结构可能会很有用。

有关详细信息,请参阅 Process a Mining Structure

如果担心节省硬盘空间,请注意,SQL Server Analysis Services在本地保留挖掘结构缓存。 也就是说,所有定型数据都将写在本地硬盘上。 如果不希望更改缓存数据,则可更改默认值,方法是将挖掘结构的 MiningStructureCacheMode 属性设置为 ClearAfterProcessing。 这会在处理模型之后破坏缓存;但是,这还会在挖掘结构中禁用钻取功能。 有关详细信息,请参阅 钻取查询 (数据挖掘)

此外,如果您清理了缓存,则将无法使用维持测试集;如果已定义一个维持测试集,则此测试集分区的定义也将丢失。 有关维持测试集的详细信息,请参阅 训练和测试数据集

处理挖掘模型

您可以独立于其关联的挖掘结构来处理挖掘模型,也可以与该结构一起处理基于该结构的所有模型。

有关详细信息,请参阅 处理挖掘模型

但是,在SQL Server Data Tools和SQL Server Management Studio中,不能通过结构多选挖掘模型进行处理。 如果您需要控制所处理的模型,则必须单独选择这些模型,或者使用 XMLA 或 DMX 连续处理多个模型。

在需要重新处理时

必须先处理定义的SQL Server Analysis Services模型,然后才能开始使用它们。 无论何时更改挖掘模型结构、更新定型数据、更改现有挖掘模型或在结构中添加挖掘模型,都必须重新处理挖掘模型。

在以下方案中也处理挖掘模型:

部署项目:部署项目时,项目中的挖掘模型通常依赖于项目设置和项目的当前状态进行完全处理。

启动部署时,处理会自动启动,除非SQL Server Analysis Services服务器上存在以前处理过的版本,并且没有结构更改。 可以通过选中下拉列表中的“部署解决方案”或按 F5 键来部署项目。 可以

有关如何设置SQL Server Analysis Services用于控制挖掘模型的部署方式的部署属性的详细信息,请参阅数据挖掘解决方案的部署

移动挖掘模型:在您通过使用 EXPORT 命令移动某一挖掘模型时,将只导出该模型的定义,这包括应该向该模型提供数据的挖掘结构的名称。

针对以下方案使用 EXPORT 和 IMPORT 命令进行重新处理的要求:

  • 挖掘结构在目标实例上存在,并且挖掘结构处于未处理状态。

    必须重新处理结构和模型。

  • 挖掘结构在目标实例上存在,并且挖掘结构已处理。 仅导出了挖掘模型。

    可以不进行处理便使用模型。

  • 还通过使用 WITH DEENDENCIES 关键字导出了挖掘模型定义。

    必须重新处理结构和模型。

有关详细信息,请参阅 导出和导入数据挖掘对象

另请参阅

挖掘结构(Analysis Services – 数据挖掘)
挖掘结构(Analysis Services – 数据挖掘)
处理多维模型 (Analysis Services)