ssas中cube的結構
在ssas(sql
serveranalysis services)中構建cube和編寫mdx的時候,我們很容易被一些名詞弄糊塗,比如:dimension(維度),measures dimension(度量維度),measure(度量),hierarchy(層次結構),attribute hierarchy(屬性層次結構),level(級別),cell(單元),member(成員),member property(成員屬性),set(集),turple(元組)等等。要想弄清楚這些名詞,就必須理解cube的結構。
5l%m4t,d+a9x)t#c"j*a7itech.techweb.com.cn
)q g6j/?:g d3k0f2btechweb-技術社群cube、dimension和measure
(x,w,y1r3o!p!z
techweb-技術社群*c/`/w"a'i&x$y;a#[.f
上圖很好的說明了cube、dimension、measure之間的關係。這裡需要注意的是:其實measure也屬於乙個維度,即measures dimension。所有的measure構成了measures dimension,這個維度的只有乙個hierarchy,而且這個hierarchy只有乙個層次(level)。
!d:p:b&r5q!e9p
此外,我們需要說明的是:
;w(h0c;m8ftech.techweb.com.cn
&c,@2}7m!u'@
1) 上圖中說明的是一般dimension的結構,在實際的模型中,其實可以做很多自定義的工作。比如:我們可以修改hierarchy的預設member。 7b-u'h!u*v&k,})w
2m#i8q(n.r)gtechweb-技術社群2) 一般情況下,ssas中hierarchy的預設member是all(在你的模型中,可能叫其他名稱)。換句話說在mdx中[時間].[財政]等價於[時間].[財政].[all],[時間].[財政].children等價於[時間].[財政].[all].children。
g&[1c2i.l#d.x+e
;r-w&y%x$r#b4k9l8q#z
3)dimension_name.hierarchy_name.level_name等價於dimension_name.hierarchy_name.level_name.members。比如:[時間].[財政].[半年]等價於[時間].[財政].[半年].members。level的members是該級別的所有元素(對於[時間].[財政].[半年].members=,其中前兩個是2023年下的,後兩個屬於2023年),而hierarchy的members包含了該hierarchy下所有的內容。4d4v+p!l"_:[*`4*,在ssas的mdx中,我們可以在()中定義多個用逗號分隔開的表示式,編譯器會進行分析,如果發現是set的話,就把它轉化成多個set相乘的形式。/y4i/s4w:|3m
8y#k+k:r2v$b,a4?
3) set中的turple可以重複。比如:並不等於,因為前者有兩個turple,後者只有乙個。
-|4n%r,s8mtechweb-技術社群
techweb-技術社群%l1i%g-p4q$m3n(b
b)上下文需要turple時,[時間].[日曆].[2001].[上半年]自動轉化成([時間].[日曆].[2001].[上半年])。;i!j+k"c$@0v/a6j6。
7e7w+o.c.t x
0t,m0u;n&n-h.w)r7_
總結#_8o,u.e:j5j:j8i i總體來看,ssas中的cube的內部結構非常的清晰,在實際開發中,只要多注意一下預設的一些轉化,使用起來是很容易的。
SSAS中Cube的結構
在ssas sql server analysis services 中構建cube和編寫mdx的時候,我們很容易被一些名詞弄糊塗,比如 dimension 維度 measures dimension 度量維度 measure 度量 hierarchy 層次結構 attribute hierarch...
SSAS系列 07 多維資料(查詢Cube)
原文 ssas系列 多維資料 查詢cube 1 什麼是mdx?mdx叫做 多維表示式 是一種查詢語言,是一種和sql類似的查詢語言,它基於 xml for analysis xmla 規範,並帶有特定於 sql server analysis services 的擴充套件。2 mdx與sql有什麼區...
SSAS體系結構(綜述)
看到小夥伴的一句話很勵志,借鑑。正文 ssas是一種olap系統集合資料探勘的功能。主要由伺服器元件以及客戶端元件構成。伺服器元件 ssas的伺服器元件是應用程式msmdsrv.exe,作為microsoft windows服務來實現。它支援來自乙個計算機的多個例項,每乙個analysis serv...