使用SSAS安排聚类的维度

时间:2013-05-23 03:30:08

标签: ssas data-mining olap cube bids

我在SSAS和数据挖掘方面遇到了一些问题 - 特别是Microsoft Clustering软件包。

我打算最终在AMO和MDX中完成我的工作,但是现在,很高兴通过Visual Studio了解它在BIDS中的工作原理。一步一步!

整个问题是从垂直组织的表中“垂直”和“水平”(单独)聚类。我的OLTP数据库中的主要源数据表看起来像=>

ID_NUM {number 1 - 20,000}

TECK_ID {number 1-500,{为每个ID_NUM}} (虽然只是抓住了其中一些用于播放屏幕数据中的数据)

TECK_VALUE {a double,'fact'bit}

所以 - 一千万行,两个整数和一个双。

看起来像这样 - http://i.imgur.com/KG1LhaJ.jpg

所以我在Visual Studio中创建一个新的Analysis Services项目,设置一个数据源,并引入上面的表,以及两个“维度表”(id_num的标识,每个teck_id的名称)进入数据源视图并将其链接起来,匹配相应的密钥。

看起来像这样 - http://i.imgur.com/Q0vgwIc.jpg

接下来我想操纵我的数据表示方式,所以我从这个数据源视图中设置一个多维数据集。我根据我的两个“维度”表(上面的“id_num”主键一个,以及“teck_id”主键一个)创建维度,并从我的主表创建teck_value列的单个度量(作为总和)。这一切似乎都成功编译。

看起来像这样 - http://i.imgur.com/y5pUSjh.jpg

我认为一切运作良好的原因是我可以通过浏览多维数据集来安排我想要的数据。我可以将我的“行”定义为id_num,或者作为“teck_id”,另一个填充列。度量“Teck_value”始终构成表的数据集。这正是我想要的,可以灵活地安排我的数据。

看起来像这样 - http://i.imgur.com/ugLUkgg.jpg 而这 - http://i.imgur.com/RwQgj58.jpg

美丽!现在我希望在此基础上进行一些挖掘! 我非常简单地使用Microsoft Clustering(单独) -

  • 根据每个ID_NUM
  • 的不同,为每个TECK_ID分配一个群集号
  • 根据每个TECK_ID
  • 的变化,为每个ID_NUM分配一个群集

看似简单的要求 - 只需更改表示为“行”的内容以及“列”的内容 - 我似乎已经可以通过多维数据集浏览器执行此操作。从我未受过教育的角度来看,这似乎是OLAP的主要观点之一,而不是OLTP!

然而,当我尝试设置时,我完全失败了!

群集向导让我感到困惑,我想出了无意义的结果。我可以选择一个键(我可以选择上面的任何一个),但没有选择通过另一个维度进行解析。事实上,我唯一可以选择采用的是TECK_VALUE,这并不是什么好事,因为它没有将不同的领域分开!

我的向导看起来像这样 - http://i.imgur.com/lHfasv0.jpg

所以,我被留在了泡菜里。我真的不想回去并水平排列我的OLTP数据库,因为1)当我尝试对我的TECK_ID进行分类时,这意味着有20k列。 2)我希望SSAS和OLAP可以为我提供挖掘我想要的字段所需的灵活性 - 这不是你设置一个多维数据集的原因“切割你想要的数据”吗?

帮助我完成AMO / MDX方面的奖励积分! :)

0 个答案:

没有答案