适用于:
SQL Server 2019 及更早版本的 Analysis Services
Azure Analysis Services
Fabric/Power BI Premium
重要
SQL Server 2017 Analysis Services 中弃用了数据挖掘,现已在 SQL Server 2022 Analysis Services 中停止使用。 文档不会更新为已弃用和已停用的功能。 若要了解详细信息,请参阅 Analysis Services 向后兼容性。
在 Microsoft SQL Server SQL Server Analysis Services 中,可以定义挖掘结构中列的物理数据类型,以及模型中使用的列的逻辑内容类型,
数据类型确定在创建挖掘模型时算法如何处理这些列中的数据。 定义列的数据类型可提供有关列中数据类型的算法信息,以及如何处理数据。 SQL Server Analysis Services 中的每个数据类型都支持一个或多个用于数据挖掘的内容类型。
内容类型描述列包含的内容的行为。 例如,如果列中的内容在特定时间间隔(如星期几)中重复,则可以将该列的内容类型指定为周期性。
某些算法需要特定的数据类型和特定的内容类型才能正常工作。 例如,Microsoft Naive Bayes 算法不能使用连续列作为输入,也不能预测连续值。 某些内容类型(如密钥序列)仅由特定算法使用。 有关算法和每个支持的内容类型的列表,请参阅数据挖掘算法(Analysis Services - 数据挖掘)。
以下列表描述了数据挖掘中使用的内容类型,并标识支持每种类型的数据类型。
离散
离散 表示列包含有限数量的值,且值之间没有连续。 例如,性别列是典型的离散属性列,其中数据表示特定数量的类别。
离散属性列中的值不能表示排序,即使这些值是数值。 此外,即使用于离散列的值是数值,也不能计算小数值。 电话区号是数字离散数据的一个很好的示例。
所有数据挖掘数据类型都支持 离散 内容类型。
连续
连续 表示列中包含的是按刻度表示的数值数据,并且可以包含中间值。 与表示有限、可计数数据的离散列不同,连续列表示可缩放的度量值,并且数据可以包含无限数量的小数值。 温度列是连续属性列的示例。
当列包含连续数值数据,并且你知道数据应如何分布时,可以通过指定值的预期分布来提高分析的准确性。 在数据挖掘结构级别指定数据列的分布。 因此,该设置适用于基于结构的所有模型,有关详细信息,请参阅列分布(数据挖掘)。
以下数据类型支持 连续 内容类型: Date、 Double 和 Long。
离散
离散化 是将一组连续数据集的值放入存储桶的过程,以便有有限数量的可能值。 只能离散化数值数据。
因此, 离散化的内容类型表明该列包含表示组或区间的值,这些值是从连续列中派生的。 存储桶被视为有序的和离散的值。
可以手动离散化数据,以确保获得所需的存储桶,也可以使用 SQL Server Analysis Services 中提供的离散化方法。 某些算法会自动执行离散化。 有关详细信息,请参阅 更改挖掘模型中列的离散化。
以下数据类型支持 离散化 内容类型: Date、 Double、 Long 和 Text。
Key
键内容类型表示该列唯一标识行。 在事例表中,键列通常是数字或文本标识符。 将内容类型设置为 键 ,表明该列不应用于分析,而是仅用于记录跟踪。
嵌套表也有键,但嵌套表键的使用略有不同。 如果列是要分析的属性,请在嵌套表中将内容类型设置为关键。 嵌套表键中的值对于每个事例必须是唯一的,但整个事例集中可能会有重复项。
例如,如果要分析客户购买的产品,则将案例表中 CustomerID 列的内容类型设置为键,并将嵌套表中 PurchasedProducts 列的内容类型再次设置为键。
注释
仅当使用已定义为 Analysis Services 数据源视图的外部数据源中的数据时,嵌套表才可用。
以下数据类型支持此内容类型: Date、 Double、 Long 和 Text。
键序列
键序列内容类型只能在序列聚类分析模型中使用。 将内容类型设置为 键序列时,它指示该列包含表示事件序列的值。 这些值是有序的,但它们之间的距离不必相等。
以下数据类型支持此内容类型: Double、 Long、 Text 和 Date。
关键时间
关键时间内容类型只能在时序模型中使用。 将内容类型设置为 键时间时,它指示值是有序的,并表示时间刻度。
以下数据类型支持此内容类型: Double、 Long 和 Date。
Table
表内容类型指示该列包含另一个数据表,其中包含一个或多个列和一个或多个行。 对于事例表中的任何特定行,此列可以包含多个值,所有这些值都与父事例记录相关。 例如,如果主事例表包含客户列表,则可以有多个列包含嵌套表,例如 ProductsPurchased 列,其中嵌套表列出了过去此客户购买的产品,以及列出客户利益的 “爱好 ”列。
此列的数据类型始终为 Table。
周期性
循环内容类型表示列包含表示周期有序集的值。 例如,一周的编号天数是一个循环排序集,因为第一天后跟第七天。
循环列在内容类型方面被视为有序列和离散列。
SQL Server Analysis Services 中的所有数据挖掘数据类型都支持此内容类型。 但是,大多数算法将循环值视为离散值,并且不执行特殊处理。
订购时间
“有序”内容类型还指示该列包含定义序列或顺序的值。 但是,在此内容类型中,用于排序的值并不表示集中的值之间的任何距离或数量级关系。 例如,如果有序属性列包含关于技能级别从 1 到 5 的顺序排名信息,那么技能级别之间的距离中没有隐含信息; 技能级别为 5 不一定比技能级别 1 高出五倍。
有序属性列在内容类型方面被视为离散属性列。
SQL Server Analysis Services 中的所有数据挖掘数据类型都支持此内容类型。 但是,大多数算法将有序值视为离散值,并且不执行特殊处理。
机密
除了与所有模型一起使用的上述内容类型外,对于某些数据类型,可以使用分类列来定义内容类型。 有关分类列的详细信息,请参阅“分类列”(数据挖掘)。