中文字幕精品亚洲无线码二区,国产黄a三级三级三级看三级,亚洲七七久久桃花影院,丰满少妇被猛烈进入,国产小视频在线观看网站

一(yi)起(qi)玩轉(zhuan)SQL Server 2012 下的分析服務(wu)

提到SQL Server 2012的(de)(de)(de)分(fen)(fen)(fen)析(xi)服(fu)務(wu),那么不得不先說下(xia)商(shang)業智能(neng)(neng),它是一(yi)個(ge)由(you)數據轉換成知(zhi)識的(de)(de)(de)過程。此篇將(jiang)對SQL Server 2012的(de)(de)(de)分(fen)(fen)(fen)析(xi)服(fu)務(wu)(Analysis Services)以及跟其相關的(de)(de)(de)商(shang)業智能(neng)(neng)做(zuo)一(yi)個(ge)簡要的(de)(de)(de)介紹(shao),將(jiang)以一(yi)個(ge)普通開發人(ren)員(yuan)的(de)(de)(de)角度去闡述和介紹(shao)分(fen)(fen)(fen)析(xi)服(fu)務(wu)以及商(shang)業智能(neng)(neng)。

 

 

 

分(fen)析服(fu)務是SQL Server的(de)一(yi)個服(fu)務組(zu)件。作為一(yi)個應用程序開發(fa)人員,你已經(jing)很(hen)熟(shu)悉數據庫(ku)和表,這些(xie)在(zai)SQL Serer的(de)服(fu)務組(zu)件中是屬(shu)于(yu)數據庫(ku)引(yin)擎(qing)的(de)范(fan)疇。還(huan)記得(de)你每次(ci)打(da)開Management Studio嗎(ma)?

這個啟動界(jie)面,也許您還不(bu)太清楚SQL Server跟Visual Studio有何關(guan)系,看完此篇您就明白了。

 

每次打(da)開(kai)的(de)時候(hou)都會讓你選擇(ze)Server type。除了(le)你常用的(de)Database Engine之外,其余的(de)幾個組(zu)件,集(ji)成服務(wu)(wu),報表(biao)服務(wu)(wu)和分析服務(wu)(wu),它們加起來就(jiu)構成了(le)SQL Server端商(shang)業智能中的(de)核心組(zu)件。

 

如果(guo)(guo)你選擇全部安裝(zhuang)了SQL Server的(de)組件,也就是下(xia)面的(de)勾(gou)全部勾(gou)上。(當然,如果(guo)(guo)你只是做應用程(cheng)序開發,那么只推薦你單獨安裝(zhuang)數(shu)據引擎(qing)服務就可(ke)以了,因為其(qi)它的(de)服務你安裝(zhuang)后運(yun)行起來確實很(hen)占(zhan)資源。)

SQL Server 2012里特殊的(de)地方(fang)就是分(fen)析(xi)服務中(zhong)多(duo)了一個Tabular Mode模(mo)式(shi),在安(an)裝過(guo)程(cheng)中(zhong),如果選(xuan)擇(ze)安(an)裝了分(fen)析(xi)服務,那么在分(fen)析(xi)服務配置(zhi)過(guo)程(cheng)中(zhong)會(hui)出現下(xia)面一個界面選(xuan)擇(ze)安(an)裝分(fen)析(xi)服務的(de)哪(na)種模(mo)式(shi)。

在SQL Server 2012下(xia)同一(yi)個分(fen)析服務(wu)示例只能(neng)以一(yi)種方式存在。如(ru)果你想使用(yong)兩種模(mo)式,那么只能(neng)選擇安裝兩個分(fen)析服務(wu)實例。

在安裝(zhuang)完畢(bi)后,就可(ke)以在服務列表里看到類似如下已經安裝(zhuang)好的服務。

如你(ni)所見,平時不用(yong)的服務我(wo)都(dou)(dou)是關閉掉的,尤其是報(bao)表服務,它們都(dou)(dou)很(hen)占(zhan)系統(tong)資源,即使我(wo)筆記本安裝的系統(tong)內存擴充(chong)到了8GB,那我(wo)也會選擇平時盡量關閉掉它們,然后需要(yao)的時候再(zai)打開。

可以(yi)看一(yi)下微軟文檔中各組件的結(jie)構圖。

中間的集(ji)成服務(wu)(wu),主(zhu)(zhu)要負責(ze)ETL的工作,它(ta)貫(guan)穿著其它(ta)幾大主(zhu)(zhu)要的服務(wu)(wu),這(zhe)(zhe)(zhe)是(shi)一(yi)個(ge)(ge)數(shu)據(ju)(ju)的清洗加載(zai)和轉換的過(guo)(guo)(guo)程(也就是(shi)折騰(teng)數(shu)據(ju)(ju)的過(guo)(guo)(guo)程),經(jing)過(guo)(guo)(guo)ETL的過(guo)(guo)(guo)程之后,數(shu)據(ju)(ju)由OLTP加載(zai)到(dao)OLAP中。這(zhe)(zhe)(zhe)里面(mian)提到(dao)的OLTP是(shi)聯機事務(wu)(wu),通(tong)常(chang)說的某(mou)系(xi)(xi)統都可(ke)(ke)以(yi)歸屬到(dao)這(zhe)(zhe)(zhe)個(ge)(ge)范圍,比(bi)如程序員(yuan)們經(jing)常(chang)開發的財(cai)務(wu)(wu)管(guan)理(li)系(xi)(xi)統,人力資源管(guan)理(li)系(xi)(xi)統,進銷存系(xi)(xi)統,客戶關系(xi)(xi)管(guan)理(li)何(he)辦公自動化等,它(ta)們主(zhu)(zhu)要在(zai)數(shu)據(ju)(ju)庫這(zhe)(zhe)(zhe)層的工作就是(shi)增刪(shan)查改(gai)。OLAP是(shi)聯機分析(xi)(xi)處理(li)系(xi)(xi)統,從字面(mian)上(shang)可(ke)(ke)以(yi)看出這(zhe)(zhe)(zhe)一(yi)層主(zhu)(zhu)要的任(ren)務(wu)(wu)就是(shi)分析(xi)(xi),比(bi)如報表系(xi)(xi)統,數(shu)據(ju)(ju)統計和分析(xi)(xi)以(yi)及數(shu)據(ju)(ju)挖掘。

此外還有(you)一(yi)(yi)個(ge)數(shu)(shu)(shu)據(ju)(ju)倉庫(ku)的(de)概念,數(shu)(shu)(shu)據(ju)(ju)倉庫(ku)(Data Warehouse)是一(yi)(yi)個(ge)面向主題(ti)的(de)(Subject Oriented)、集成(cheng)的(de)(Integrated)、相對(dui)穩定的(de)(Non-Volatile)、反映歷史(shi)變(bian)化(Time Variant)的(de)數(shu)(shu)(shu)據(ju)(ju)集合,用于支持(chi)管理(li)決策(ce)(Decision Making Support)。說(shuo)簡單些可以理(li)解(jie)為(wei),這一(yi)(yi)層是把(ba)各個(ge)業務(wu)系統的(de)數(shu)(shu)(shu)據(ju)(ju)整合到了一(yi)(yi)起(qi),并且(qie)結(jie)構會被轉換成(cheng)適合分析的(de)結(jie)構的(de)一(yi)(yi)個(ge)特殊的(de)數(shu)(shu)(shu)據(ju)(ju)庫(ku)。

也許很多人在此不(bu)會很明白(包括早些(xie)年剛開(kai)始接觸BI的我),既然有OLTP了,那么為(wei)什么還需要(yao)ETL到OLAP呢?想要(yao)什么查詢一個SQL語(yu)句不(bu)就(jiu)搞定?

首(shou)先,數據(ju)單獨傳輸到OLAP層,可以(yi)有效的防止分析系(xi)(xi)統跟業(ye)務系(xi)(xi)統搶占資源。對于(yu)很多(duo)大(da)型系(xi)(xi)統來說,業(ye)務系(xi)(xi)統會非常(chang)的繁忙(mang),而分析數據(ju)的語句往往都很復(fu)雜(za)而且要消耗(hao)掉很多(duo)資源。分開后可以(yi)避免相互之間的影響。

其次,ETL是個(ge)很重要(yao)的過(guo)程,因為(wei)在OLAP端通常(chang)是整(zheng)合了多個(ge)業(ye)務系統(tong)的,經(jing)過(guo)ETL整(zheng)合到一(yi)起后,更方便統(tong)計查詢。

最后,是為了(le)降低(di)查詢(xun)統計分(fen)析的復雜度。經過聚合的數(shu)據通過MDX進(jin)行(xing)查詢(xun),將比直接(jie)用SQL語句查詢(xun)更簡潔(jie)明(ming)了(le)。

在(zai)工作的過程當中(zhong),也有同事問我(wo)為什么不自己(ji)建立一(yi)套(tao)根(gen)據維(wei)度(du)自己(ji)算聚合(he)的方法(fa),直接將其保存到表中(zhong)。這(zhe)種(zhong)方法(fa)在(zai)一(yi)定程度(du)上來(lai)說是(shi)可行的。但往(wang)往(wang)在(zai)項目正(zheng)式結束(shu)之前,維(wei)度(du)模型往(wang)往(wang)都是(shi)要(yao)變化的,比如加了一(yi)個維(wei)度(du),那么如果(guo)自己(ji)用表來(lai)聚合(he)的話,每加一(yi)個或者減少一(yi)個以及更新一(yi)個維(wei)度(du)那么就意外著聚合(he)的方法(fa)需(xu)要(yao)重新改寫。

再(zai)就一(yi)個行業內流傳很(hen)廣的(de)一(yi)個事(shi)實是:寫SQL的(de)不如用(yong)Excel的(de)賺的(de)多,用(yong)Excel的(de)不如用(yong)ppt的(de)人(ren)賺的(de)多。如上面所說,這個道(dao)理(li)換成我(wo)也(ye)是好幾年之后(hou)才明白。

此外,在(zai)baidu百科(ke)中找到一個表(biao),可以更詳細(xi)的了解二者之間還有(you)什么差(cha)別(bie)。

 

OLTP

OLAP

用戶

操作人員,低層管理人員

決(jue)策人員(yuan),高級管理人員(yuan)

功能

日常操(cao)作處理

分析決策

DB 設計

面向應用(yong)

面向(xiang)主題(ti)

數據(ju)

當前的, 最新(xin)的細節的, 二(er)維的分立的

歷史的, 聚集的, 多維的

集成(cheng)的, 統一的

存取(qu)

讀(du)/寫(xie)數十條記錄

讀上(shang)百(bai)萬(wan)條記錄

工作單位

簡單的(de)事務

復雜的(de)查(cha)詢

DB 大小(xiao)

100MB-GB

100GB-TB

從上表中,我們(men)就可以(yi)看到(dao)為(wei)什么微(wei)軟(ruan)會(hui)提出列式存(cun)儲以(yi)及PDW(并行數據(ju)倉庫)的(de)產品。

 

 

下圖是一個最簡單(dan)的BI流程。

從上(shang)到(dao)(dao)下(xia),可(ke)以(yi)看到(dao)(dao)通過BI的流(liu)程,首先將各個不同業務(wu)數(shu)(shu)據(ju)(ju)整合到(dao)(dao)一起到(dao)(dao)數(shu)(shu)據(ju)(ju)倉(cang)庫(ku)中,然后(hou)數(shu)(shu)據(ju)(ju)倉(cang)庫(ku)的數(shu)(shu)據(ju)(ju)經過聚合或者(zhe)處理到(dao)(dao)分析服(fu)務(wu)中,最(zui)后(hou)通過前端工具展(zhan)現出來(lai)。

中間那(nei)層(ceng),包含多(duo)維數據集,Tabular和數據挖掘這一(yi)層(ceng),對應的就是SQL Sever分析服務。

此外,我先前寫過(guo)一個關于BI通用流程的隨筆(bi):

//www.ywjunkang.com/aspnetx/archive/2010/03/06/1679896.html

還有,關于BI項目的具體技(ji)術方案,也可以參考我的這兩篇隨筆:

//www.ywjunkang.com/aspnetx/archive/2011/10/10/2206713.html

//www.ywjunkang.com/aspnetx/archive/2011/11/30/2268886.html

 

 

以上簡單的(de)介(jie)紹(shao)了分(fen)析服務以及商(shang)業智能和數據(ju)倉庫的(de)一(yi)些概(gai)念(nian),并且引用了我(wo)先前的(de)幾(ji)篇隨(sui)筆供(gong)詳細(xi)參考,下面(mian)詳細(xi)介(jie)紹(shao)SQL Server分(fen)析服務的(de)各個部分(fen)。

多維數據集

多(duo)維數據集是目前(qian)很(hen)多(duo)BI項目中都在用的(de)(de)(de),它根據維度(du)的(de)(de)(de)定義(yi)將事實(shi)表里的(de)(de)(de)數據進行聚合運(yun)算,從而在犧(xi)牲處理時(shi)間和額外的(de)(de)(de)聚合存(cun)儲空(kong)間來(lai)換取(qu)統(tong)計查詢的(de)(de)(de)相應速度(du)。

多維(wei)數據集可以(yi)理解為是(shi)一個立方(fang)體,比如(ru)下圖:

我們看到在圖(tu)中,立方體(ti)有三個軸(zhou)分(fen)別(bie)對應三個維(wei)度:時間,空間和運輸方式(shi)。實際的多維(wei)數(shu)據(ju)集可以簡(jian)單的理解成這(zhe)個模式(shi),只不過,在定義(yi)問題的時候,可以定義(yi)出好多的維(wei)度。

再如(ru)下面(mian)的一(yi)(yi)個(ge)立方體,三個(ge)軸分別為(wei)客(ke)戶(hu)時間(jian)和產(chan)品,魔方里(li)的每一(yi)(yi)個(ge)小塊兒(er)代表(biao)某一(yi)(yi)客(ke)戶(hu)某一(yi)(yi)時間(jian)點購買(mai)某一(yi)(yi)產(chan)品的多少。

當然,在實際的分(fen)析(xi)中,在透(tou)視表里我們不(bu)一(yi)(yi)定非要用上三(san)個維度(du)才叫立方體(ti)(Cube),更多的時候(hou)我們會用任(ren)意多的維度(du)組(zu)合來(lai)分(fen)析(xi)問(wen)題,而(er)在分(fen)析(xi)過程(cheng)中,同一(yi)(yi)個軸也可能會包含更多地維度(du),比如從客戶維度(du)下鉆到(dao)產品維度(du)等。實際的操(cao)作都是一(yi)(yi)個基(ji)于維度(du)的相(xiang)當靈活的過程(cheng)。

關于如何(he)創(chuang)建簡單的多(duo)維(wei)數(shu)據集,可以參(can)考我下面(mian)的一篇隨筆:

//www.ywjunkang.com/aspnetx/archive/2013/03/16/2963965.html

此(ci)外,入門的朋友我建(jian)議詳(xiang)細(xi)的看一下微軟SQL Server文檔中的教程。

查詢多維(wei)數據集是(shi)用MDX,跟SQL一樣(yang)(yang),它(ta)也是(shi)SELECT FROM WHRER這樣(yang)(yang)的結構(gou),比如:

WITH

MEMBER Measures.[Amount Change Rate] AS

IIF(ISEMPTY(([Measures].[Internet Sales Amount],[Date].[Fiscal].CurrentMember.PrevMember)), "",

[Measures].[Internet Sales Amount]/

([Measures].[Internet Sales Amount],[Date].[Fiscal].CurrentMember.PrevMember) -1

), FORMAT_STRING = '0%'

SELECT

{[Measures].[Internet Sales Amount], Measures.[Amount Change Rate]} ON 0,

[Date].[Fiscal].[Month].MEMBERS

ON 1

FROM [Adventure Works]

查詢結果:

關于(yu) MDX更詳細的知(zhi)識請參(can)考微軟(ruan)的官方文檔:

 

 

Tabular Mode模式

多維數據集這(zhe)種(zhong)方式是(shi)由IT人員(yuan)(yuan)(yuan)(yuan)開發的,適合處理大量數據,默認情況下聚合后(hou)的文件是(shi)獨(du)立放在文件目錄下。缺點是(shi)每當業(ye)務人員(yuan)(yuan)(yuan)(yuan)提出(chu)一個(ge)(ge)問題(ti)或者需求(qiu)的時(shi)(shi)候,都需要等待IT部門(men)長時(shi)(shi)間(jian)的響應,所以(yi),針(zhen)對這(zhe)種(zhong)需求(qiu),微(wei)軟在SQL Server 2012中提出(chu)了Tabular Mode模(mo)(mo)式,在這(zhe)種(zhong)模(mo)(mo)式下,業(ye)務人員(yuan)(yuan)(yuan)(yuan)在Visual Studio中就(jiu)可以(yi)自(zi)己來制作(zuo)簡單的分析模(mo)(mo)型(xing),而操作(zuo)的界面跟業(ye)務人員(yuan)(yuan)(yuan)(yuan)平時(shi)(shi)用的Excel和Access是(shi)非(fei)常像的,所以(yi)可以(yi)看到Tabular Mode就(jiu)是(shi)微(wei)軟專門(men)為業(ye)務人員(yuan)(yuan)(yuan)(yuan)為了快速解決問題(ti)而提出(chu)的一個(ge)(ge)工具。

此外,Tabular Mode模(mo)式(shi)默認是(shi)把(ba)數據放到內存中(zhong),這樣數據往往不需要經(jing)過特殊的優化就可以獲取非常(chang)高的查詢性能。

不過(guo)無論如何,我(wo)個人的觀點(dian),Tabular Mode還(huan)是(shi)無法取代(dai)多維數(shu)(shu)(shu)據(ju)集和IT人員(yuan)的工(gong)作,因(yin)為(wei)Tabular Mode的數(shu)(shu)(shu)據(ju)畢竟是(shi)放在內存(cun)(cun)中(zhong)的,所以(yi)(yi)要受(shou)到服務(wu)器的內存(cun)(cun)以(yi)(yi)及企業內部(bu)IT 管理策(ce)略(lve)的限制,而且(qie)很多數(shu)(shu)(shu)據(ju)還(huan)是(shi)需要IT人員(yuan)經(jing)過(guo)ETL的整合,業務(wu)人員(yuan)在Tabular Mode中(zhong)拿過(guo)來用才有(you)意義。不過(guo),我(wo)更愿意以(yi)(yi)后(hou)看(kan)到兩者(zhe)的結合體出現,比如多維數(shu)(shu)(shu)據(ju)集把數(shu)(shu)(shu)據(ju)聚合到內存(cun)(cun)當中(zhong)。

關于如何用Tabular Mode創建簡單的分析(xi)模型,可以(yi)參考我(wo)下(xia)面(mian)的一篇隨筆:

//www.ywjunkang.com/aspnetx/archive/2013/02/21/2920459.html

入門的朋友,建議一(yi)定要看一(yi)下微軟文檔(dang)中(zhong)的教(jiao)程:

跟多(duo)(duo)維數據(ju)集不同的是,多(duo)(duo)維數據(ju)集定(ding)義(yi)一個計算成員用的是MDX,而Tabular Mode用的是DAX。這種結(jie)構(gou)更接近于Excel里的用法。

Days in Current Quarter:=COUNTROWS( DATESBETWEEN( 'Date'[Date], STARTOFQUARTER( LASTDATE('Date'[Date])), ENDOFQUARTER('Date'[Date])))

比如如上的(de)一條語(yu)句定義了一個命(ming)名成員(yuan)。

關于DAX的(de)參考,可(ke)以查(cha)看微軟的(de)官方文檔;

 

 

Excel中的透視表

在(zai)多維數據(ju)集(ji)和Tabular Mode模型建立完畢后,就可以(yi)在(zai)其(qi)之上做一(yi)些數據(ju)分析。Excel被微軟介紹為其(qi)中(zhong)一(yi)個強力工具(ju),因為很多業務部門都很熟悉(xi)它,相(xiang)對來說(shuo)容易上手,而且更直觀(guan)。

在Excel的(de)透視表中,可以很方便的(de)進(jin)行(xing)上鉆下鉆以及(ji)切片和切塊等操(cao)作(zuo)。

此外,還(huan)可以根(gen)據透視表切換成透視圖。

 

 

數據挖掘

關于分析服務另外一個(ge)比較有意思的就是(shi)數(shu)據(ju)挖掘(jue),在商業智能中(zhong),數(shu)據(ju)挖掘(jue)是(shi)其中(zhong)最高的一個(ge)層次(ci)。現在流行的大數(shu)據(ju),最終往(wang)往(wang)也(ye)要靠數(shu)據(ju)挖掘(jue)來體現其價值。

如果說,BI的(de)過(guo)程可以(yi)看成(cheng)是數(shu)據(ju)(ju)(ju)的(de)昨(zuo)天(tian),今(jin)天(tian)和明天(tian),數(shu)據(ju)(ju)(ju)的(de)昨(zuo)天(tian),通(tong)過(guo)報表告(gao)訴(su)(su)你(ni)的(de)業(ye)務之(zhi)前(qian)發生(sheng)了什(shen)么(me),數(shu)據(ju)(ju)(ju)的(de)今(jin)天(tian),通(tong)過(guo)多(duo)維(wei)分(fen)析等工(gong)具告(gao)訴(su)(su)你(ni)這些為什(shen)么(me)會(hui)發生(sheng),那么(me)數(shu)據(ju)(ju)(ju)的(de)明天(tian),就是通(tong)過(guo)數(shu)據(ju)(ju)(ju)挖(wa)掘算(suan)法,對已(yi)有(you)的(de)海量歷史(shi)數(shu)據(ju)(ju)(ju)進行挖(wa)掘,從而讓你(ni)知(zhi)道你(ni)的(de)業(ye)務未來(lai)會(hui)是什(shen)么(me)樣。

微軟的數(shu)據挖掘工(gong)具包含了很(hen)多算法(fa),比(bi)較(jiao)常見的比(bi)如貝葉斯,決策樹,關聯規(gui)則(ze)和時序分(fen)析等。

數(shu)(shu)據挖掘(jue)會分(fen)析(xi)樣(yang)本數(shu)(shu)據,從(cong)中發現規則,然后用(yong)(yong)于對未(wei)來(lai)未(wei)知數(shu)(shu)據的預測。通常用(yong)(yong)來(lai)比如(ru)電商網站的商品推薦(jian),潛(qian)在客(ke)戶(hu)分(fen)析(xi),以及客(ke)戶(hu)分(fen)類等(deng)問(wen)題之上。

數據(ju)挖(wa)掘(jue)(jue)(jue)不是專門搞算法的工作人員(yuan)(yuan)的專利(li),作為開發(fa)人員(yuan)(yuan),大(da)家(jia)也可以(yi)一(yi)起(qi)來(lai)玩轉一(yi)下SQL Server分析服務(wu)中(zhong)的數據(ju)挖(wa)掘(jue)(jue)(jue)功能,我這里有一(yi)系列完(wan)整的介(jie)紹SQL Server分析服務(wu)數據(ju)挖(wa)掘(jue)(jue)(jue)的文章(zhang),通(tong)過(guo)電商網(wang)站中(zhong)的商品推薦功能,介(jie)紹如何建(jian)(jian)立(li)挖(wa)掘(jue)(jue)(jue)模型,然(ran)后在前(qian)段(duan)程(cheng)序如何使用數據(ju)挖(wa)掘(jue)(jue)(jue)功能。此外,還有在Excel中(zhong)進行數據(ju)挖(wa)掘(jue)(jue)(jue)的演(yan)示,以(yi)及如何通(tong)過(guo)DMX創(chuang)建(jian)(jian)挖(wa)掘(jue)(jue)(jue)模型。

//www.ywjunkang.com/aspnetx/archive/2013/03/16/2963965.html

在這篇系列(lie)中,您可以跟我一(yi)樣,作(zuo)為一(yi)個(ge)不了解底層算法數學公(gong)司的開發人(ren)員,來玩轉數據挖掘(jue)功能。而作(zuo)為開發人(ren)員,除了基本的DMX需要掌握(wo)之外,還需要知道,什么樣的挖掘(jue)模型適合解決什么樣的問題(ti)。

關于SQL Server分析服(fu)務中數據挖掘各個模型的介(jie)紹,可以參考微軟的這(zhe)篇(pian)文檔(dang)。

此外,還是(shi)建議(yi)打算入門的朋友看一下微軟的教程。

數據挖掘的(de)過程,跟其它(ta)IT項目一樣,大概(gai)可以(yi)劃分(fen)為如下幾個過程。首先,定義問題,然(ran)后準備和(he)瀏覽數據,然(ran)后生成和(he)驗證模型(xing),最后部署和(he)更新模型(xing)。

這個過程不一(yi)定是一(yi)口氣道(dao)底(di)的,比如在模型(xing)中(zhong)發現(xian)沒有需要的數(shu)據(ju)(ju)那么就需要重新(xin)對數(shu)據(ju)(ju)進行準備(bei),或者在模型(xing)驗證階段發現(xian)有問(wen)題那么可能需要重新(xin)定義模型(xing)。

數據挖(wa)掘用(yong)到的查詢(xun)語(yu)句是DMX,它(ta)可以(yi)用(yong)來創(chuang)建和(he)處(chu)理挖(wa)掘模型,并且做預測查詢(xun)。可以(yi)參考我(wo)的這篇(pian)隨筆來了解更多信息:

//www.ywjunkang.com/aspnetx/archive/2013/03/23/2976661.html

 

 

開發工具

SQL Server分析服務的開(kai)(kai)發(fa)都是通過Visual Studio的一個Shell。對(dui)于Visual Studio很多應用(yong)程序開(kai)(kai)發(fa)人員應該再熟悉不過,但是很少有人知(zhi)道它也可以用(yong)來開(kai)(kai)發(fa)商業智能(neng)項目。

在(zai)安裝完SQL Server Data Tools之后,在(zai)Visual Studio里就可以看到相應(ying)的(de)項目(mu)模版,如下圖(tu):

可以(yi)看到在項(xiang)目(mu)模(mo)版(ban)里安裝了三(san)大(da)類(lei)項(xiang)目(mu)模(mo)版(ban),分(fen)別就(jiu)是(shi)分(fen)析(xi)(xi)服(fu)務(wu),集成(cheng)服(fu)務(wu)和報表服(fu)務(wu)。而在創(chuang)建分(fen)析(xi)(xi)服(fu)務(wu)項(xiang)目(mu)中,也可以(yi)看到分(fen)析(xi)(xi)服(fu)務(wu)被分(fen)成(cheng)了多維模(mo)式(shi)和Tabular模(mo)式(shi)兩種(zhong)類(lei)型。

前面提到過(guo),分(fen)析服(fu)務和數(shu)據(ju)引(yin)擎一樣,下面也是各(ge)種(zhong)數(shu)據(ju)庫。傳統(tong).net開(kai)發數(shu)據(ju)庫應(ying)用(yong)通過(guo)ADO.NET接(jie)(jie)口,分(fen)析服(fu)務是通過(guo)ADOMD.NET 接(jie)(jie)口。這兩樣接(jie)(jie)口不僅是名字比(bi)較像,由于(yu)它們繼承自同一接(jie)(jie)口,所(suo)以當一個熟練的程序員操作ADOMD.NET的時候會感覺這種(zhong)方式似(si)曾相識(shi)。

關于ADOMD.NET的使用(yong)方式(shi),大(da)家可以參(can)考(kao)我在數據挖掘商品推薦系列隨筆的第二(er)篇:

//www.ywjunkang.com/aspnetx/archive/2013/02/24/2924091.html

里(li)面(mian)會(hui)有詳細的介紹,會(hui)告訴你如何新建(jian)一個asp.net的web services然后找(zhao)到ADOMD.NET 組件的所在位置(zhi)以及如何使用它(ta)。

 

 

 

總結

上(shang)面對于(yu)分(fen)析(xi)服務(wu)進行了一(yi)(yi)(yi)(yi)個(ge)簡短的(de)(de)(de)(de)介紹,在(zai)BI項目中(zhong)(zhong)的(de)(de)(de)(de)各個(ge)組(zu)件(jian)中(zhong)(zhong),這(zhe)(zhe)(zhe)確(que)實(shi)是(shi)一(yi)(yi)(yi)(yi)個(ge)比較(jiao)有(you)趣而且(qie)(qie)也(ye)很有(you)挑戰的(de)(de)(de)(de)一(yi)(yi)(yi)(yi)部分(fen)。但這(zhe)(zhe)(zhe)只是(shi)BI項目中(zhong)(zhong)工(gong)(gong)作(zuo)量(liang)(liang)(liang)的(de)(de)(de)(de)一(yi)(yi)(yi)(yi)小部分(fen)。在(zai)一(yi)(yi)(yi)(yi)個(ge)BI項目中(zhong)(zhong),大多數的(de)(de)(de)(de)工(gong)(gong)作(zuo)都(dou)是(shi)在(zai)ETL之(zhi)上(shang),這(zhe)(zhe)(zhe)是(shi)一(yi)(yi)(yi)(yi)個(ge)很復雜需要(yao)耐(nai)心(xin)和細心(xin)的(de)(de)(de)(de)過程,這(zhe)(zhe)(zhe)項工(gong)(gong)作(zuo)的(de)(de)(de)(de)工(gong)(gong)作(zuo)量(liang)(liang)(liang)往(wang)往(wang)要(yao)超過整個(ge)BI項目工(gong)(gong)作(zuo)量(liang)(liang)(liang)的(de)(de)(de)(de)60%,而一(yi)(yi)(yi)(yi)個(ge)企(qi)業(ye)內(nei)部的(de)(de)(de)(de)BI團隊中(zhong)(zhong),可(ke)以看(kan)到超過一(yi)(yi)(yi)(yi)半(ban)的(de)(de)(de)(de)人都(dou)是(shi)ETL這(zhe)(zhe)(zhe)一(yi)(yi)(yi)(yi)層(ceng)的(de)(de)(de)(de)開發人員。分(fen)析(xi)服務(wu)的(de)(de)(de)(de)工(gong)(gong)作(zuo)往(wang)往(wang)都(dou)在(zai)ETL工(gong)(gong)作(zuo)之(zhi)后,并且(qie)(qie)很大程度上(shang)要(yao)受(shou)到這(zhe)(zhe)(zhe)一(yi)(yi)(yi)(yi)層(ceng)工(gong)(gong)作(zuo)質量(liang)(liang)(liang)的(de)(de)(de)(de)影響。

在商業(ye)智(zhi)能項(xiang)目當中,最(zui)關(guan)鍵的(de)(de)就(jiu)(jiu)(jiu)是數(shu)據(ju),數(shu)據(ju)決定了一個商業(ye)智(zhi)能項(xiang)目的(de)(de)成敗。這里面數(shu)據(ju)要滿足三個層次,首先,就(jiu)(jiu)(jiu)是要有(you)(you)數(shu)據(ju)可用,"巧婦難為無米之炊(chui)"用來形容(rong)這個再(zai)不(bu)為過。其(qi)次,數(shu)據(ju)量要達到一定的(de)(de)規(gui)模,只有(you)(you)數(shu)據(ju)越(yue)多才越(yue)容(rong)易發現其(qi)中的(de)(de)規(gui)律,好比一個剛畢業(ye)的(de)(de)醫(yi)生(sheng)和(he)一個干了一輩子的(de)(de)醫(yi)生(sheng)的(de)(de)經驗。最(zui)后(hou),就(jiu)(jiu)(jiu)是數(shu)據(ju)的(de)(de)質量,這是最(zui)重要的(de)(de)一個方面。很(hen)多系統盡(jin)管已經有(you)(you)了海(hai)量數(shu)據(ju),但由于IT系統操作的(de)(de)不(bu)規(gui)范,所以導(dao)致(zhi)積(ji)累了很(hen)多年的(de)(de)數(shu)據(ju)都無法發揮出(chu)價(jia)值。當然還有(you)(you)一個跟技(ji)術不(bu)太相關(guan)的(de)(de)一個因素也(ye)會影(ying)響著商業(ye)智(zhi)能項(xiang)目的(de)(de)成敗,那就(jiu)(jiu)(jiu)是高(gao)層領(ling)導(dao)的(de)(de)重視程(cheng)度,商業(ye)智(zhi)能當初設計就(jiu)(jiu)(jiu)是為決策層服務的(de)(de),而且實際(ji)項(xiang)目過程(cheng)中有(you)(you)很(hen)多問題都要靠行政(zheng)的(de)(de)手段去解決,這個沒有(you)(you)高(gao)層領(ling)導(dao)在身后(hou)的(de)(de)"撐腰"都是很(hen)難操作的(de)(de)。

至此(ci),分析服務里的(de)(de)幾(ji)個(ge)重要組件已(yi)經基本介(jie)紹(shao)(shao)完畢,包括多維(wei)模式(shi),Tabular Model和數據(ju)挖掘,此(ci)篇(pian)分別對它們(men)進行了(le)簡要的(de)(de)介(jie)紹(shao)(shao),并且提供了(le)筆(bi)者相應的(de)(de)鏈(lian)接資源(yuan)作為引申參考。這篇(pian)隨筆(bi)也算(suan)是我將之前(qian)掌握的(de)(de)知識和寫的(de)(de)隨筆(bi)做一個(ge)總結,相關(guan)的(de)(de)詳細內容(rong)大家都可以去(qu)看(kan)我所提供的(de)(de)鏈(lian)接。

希(xi)望(wang)通過這(zhe)篇簡單的隨筆,能夠讓更多的人了解SQL Server Analysis Services分析服務以及(ji)商(shang)業智能這(zhe)個(ge)概念。

posted @ 2013-03-24 11:55  哥本哈士奇(aspnetx)  閱讀(11246)  評論(8)    收藏  舉報