第 1 课:创建时序挖掘模型和挖掘结构
在本课中,将创建一个挖掘模型,可以使用该模型根据历史数据预测一段时间内的值。 创建该模型时,基础结构会自动生成,且可以用作其他挖掘模型的基础。
本课假定您已熟悉预测模型以及 Microsoft 时序算法的要求。 有关详细信息,请参阅 Microsoft Time Series Algorithm。
CREATE MINING MODEL 语句
为了直接创建挖掘模型并自动生成基础挖掘结构,请使用 CREATE MINING MODEL (DMX) 语句。 可以将语句中的代码分为下列几部分:
命名模型
定义时间戳
定义可选序列键列
定义可预测属性
下面是 CREATE MINING MODEL 语句的一般示例:
CREATE MINING MODEL [<Mining Structure Name>]
(
<key columns>,
<predictable attribute columns>
)
USING <algorithm name>([parameter list])
WITH DRILLTHROUGH
代码的第一行定义了挖掘模型的名称:
CREATE MINING MODEL [Mining Model Name]
通过在模型名称后追加“_structure”,Analysis Services 自动生成基础结构的名称,这样可以确保将结构名称与模型名称区分开。 有关在 DMX 中命名对象的信息,请参阅标识符 (DMX) 。
代码中的下一行定义了挖掘模型的键列,如果是时序模型,则它可唯一标识源数据中的时间步长。 时间步长在列名和数据类型后使用 KEY TIME
关键字进行标识。 如果时序模型具有单独的序列键,则使用 KEY
关键字对它进行标识。
<key columns>
代码中的下一行用于定义将预测的模型中的列。 一个挖掘模型中可以有多个可预测属性。 如果有多个可预测属性,Microsoft 时序算法会为每个序列生成一个单独的分析:
<predictable attribute columns>
课程任务
在本课中,你将执行以下任务:
创建新的空白查询
更改查询以创建挖掘模型
执行查询
创建查询
第一步是连接到 Analysis Services 实例并在 SQL Server Management Studio 中创建新的 DMX 查询。
在 SQL Server Management Studio 中创建一个新的 DMX 查询
打开 SQL Server Management Studio。
在“ 连接到服务器 ”对话框中,对于“ 服务器类型”,选择“ Analysis Services”。 在 “服务器名称”中,键入
LocalHost
或要在本课中连接到的 Analysis Services 实例的名称。 单击“连接” 。在“对象资源管理器”中,右键单击 Analysis Services 实例,指向“新建查询”,然后单击“DMX”。
将打开查询编辑器,其中包含一个新的空白查询。
更改查询
下一步是修改 CREATE MINING MODEL 语句,以创建用于预测的挖掘模型及其基础挖掘结构。
自定义 CREATE MINING MODEL 语句
在查询编辑器中,将 CREATE MINING MODEL 语句的一般示例复制到空白查询中。
将
[mining model name]
替换为:
[Forecasting_MIXED]
将
<key columns>
替换为:
[Reporting Date] DATE KEY TIME, [Model Region] TEXT KEY
TIME KEY
关键字指示 ReportingDate 列包含用于对值进行排序的时间步长值。 时间步长可以为日期和时间、整数或任何有序数据类型,只要值唯一且数据有序即可。TEXT
和KEY
关键字指示 ModelRegion 列包含额外的序列键。 只能有一个序列键,并且该列中的值必须是唯一的。将
< predictable attribute columns> )
替换为:
[Quantity] LONG CONTINUOUS PREDICT, [Amount] DOUBLE CONTINUOUS PREDICT )
将
USING <algorithm name>([parameter list]) WITH DRILLTHROUGH
替换为:
USING Microsoft_Time_Series(AUTO_DETECT_PERIODICITY = 0.8, FORECAST_METHOD = 'MIXED') WITH DRILLTHROUGH
算法参数
AUTO_DETECT_PERIODICITY
= 0.8 指示您希望使用该算法来检测数据中的周期。 如果将此值设置为接近于 1 的数,往往会发现许多模式,不过会降低处理速度。算法参数
FORECAST_METHOD
指示您是否希望使用 ARTXP、ARIMA 或两者的组合来对数据进行分析。关键字
WITH DRILLTHROUGH
指示您希望能够在模型完成后查看源数据中的详细统计信息。 如果希望使用 Microsoft 时序查看器浏览模型,则必须添加此子句。 它不是预测所必需的。现在,完整的语句应该如下所示:
CREATE MINING MODEL [Forecasting_MIXED] ( [Reporting Date] DATE KEY TIME, [Model Region] TEXT KEY, [Quantity] LONG CONTINUOUS PREDICT, [Amount] DOUBLE CONTINUOUS PREDICT ) USING Microsoft_Time_Series (AUTO_DETECT_PERIODICITY = 0.8, FORECAST_METHOD = 'MIXED') WITH DRILLTHROUGH
在“ 文件 ”菜单上,单击“ 将 DMXQuery1.dmx 另存为”。
在“ 另存为 ”对话框中,浏览到相应的文件夹,并将文件
Forecasting_MIXED.dmx
命名为 。
执行查询
最后一步是执行查询。 创建并保存查询后,需要执行查询,以在服务器上创建挖掘模型及其挖掘结构。 有关在 查询编辑器 中执行查询的详细信息,请参阅数据库引擎 查询编辑器 (SQL Server Management Studio) 。
执行查询
在查询编辑器工具栏上,单击“执行”。
语句执行完成后,查询的状态将显示在查询编辑器底部的“消息”选项卡中。 所显示的消息应为:
Executing the query Execution complete
服务器上现在存在名为 Forecasting_MIXED_Structure 的新结构,以及相关的挖掘模型 Forecasting_MIXED。
在下一课中,你将将挖掘模型添加到刚刚创建的 Forecasting_MIXED 挖掘结构。
下一课
另请参阅
时序模型的挖掘模型内容(Analysis Services - 数据挖掘)
Microsoft Time Series Algorithm Technical Reference