ssas 数据源mysql_BI之SSAS完整实战教程2 -- 开发环境介绍及多维数据集数据源准备...
上一篇我們已經(jīng)完成所有的準(zhǔn)備工作,現(xiàn)在我們就開始動手,通過接下來的三篇文章創(chuàng)建第一個多維數(shù)據(jù)集。
傳統(tǒng)的維度和多維數(shù)據(jù)集設(shè)計(jì)方法主要是基于現(xiàn)有的單源數(shù)據(jù)集。
在現(xiàn)實(shí)世界中,當(dāng)開發(fā)商業(yè)智能應(yīng)用程序時(shí),很可能需要處理多個關(guān)系數(shù)據(jù)源。
我們可以通過創(chuàng)建一個DSV提供一個整合的單源視圖,其中僅包括你定義的一個或多個數(shù)據(jù)源中感興趣的數(shù)據(jù)。數(shù)據(jù)源和數(shù)據(jù)源視圖構(gòu)成了后面要介紹的維度和多維數(shù)據(jù)集等結(jié)構(gòu)的基礎(chǔ)。
AS2012 支持的主要關(guān)系數(shù)據(jù)源包括SQL SERVER, Oracle, DB2,Teradata等。
對于某種特定的數(shù)據(jù)源,可能需要安裝數(shù)據(jù)提供程序的其他客戶端組件,以便可以在計(jì)算機(jī)上使用適用于該特定數(shù)據(jù)源的OLE DB提供程序或.NET提供程序。
這些客戶端組件應(yīng)該不僅可以在使用SSDT設(shè)計(jì)數(shù)據(jù)庫的開發(fā)計(jì)算機(jī)上使用,還必須可以在運(yùn)行AS實(shí)例的服務(wù)器計(jì)算機(jī)上使用。
另外,創(chuàng)建數(shù)據(jù)源時(shí)還可以通過Connection Manager對話框指定其他連接屬性,例如連接查詢超時(shí)、隔離級別以及最大連接數(shù)等。
本篇我們先準(zhǔn)備好多維數(shù)據(jù)集要使用的數(shù)據(jù)源,為后續(xù)創(chuàng)建多維數(shù)據(jù)集打下基礎(chǔ)。
文章提綱
主要步驟
新建項(xiàng)目及IDE中結(jié)構(gòu)介紹
創(chuàng)建數(shù)據(jù)源
創(chuàng)建數(shù)據(jù)源視圖(DSV,作為多維數(shù)據(jù)集的構(gòu)建基礎(chǔ))
關(guān)于DSV必須掌握的六點(diǎn)
總結(jié)
緊接著上篇文章,我們打開SSDT后,按照如下步驟進(jìn)行。
主要步驟
一、新建項(xiàng)目及IDE結(jié)構(gòu)介紹
1. 主菜單中, FileàNewàProject
2. 選擇 Analysis Services Multidimensional and Data Mining Project 模板
3. 輸入ASMultidimensionalPOC名稱,點(diǎn)擊OK創(chuàng)建此項(xiàng)目。
SSDT環(huán)境包括多個工具窗口,需要重點(diǎn)關(guān)注 Solution Explorer, Properties, Output 窗口。
其中Solution Explorer 窗口需要說明下。
包括8個文件夾:
Data Sources:數(shù)據(jù)源
Data Source Views :數(shù)據(jù)源視圖,后面簡稱為DSV,可包含一個或多個數(shù)據(jù)源的表
Cubes :分析的基礎(chǔ)。一個Cube(多維數(shù)據(jù)集)由一個度量值組集合和一個維度集合構(gòu)成。
Dimensions:維度,指的是對數(shù)據(jù)進(jìn)行切片以查看感興趣的特定數(shù)量數(shù)據(jù)時(shí)所依據(jù)的類別。
說明:
每個維度包含一個或多個層次結(jié)構(gòu)。存在兩種類型的層次結(jié)構(gòu):特性層次結(jié)構(gòu)和用戶層次結(jié)構(gòu)。
約定:后面特性層次結(jié)構(gòu)被稱為特性,用戶層次結(jié)構(gòu)被稱為層次結(jié)構(gòu)。特性對應(yīng)于維度表中的列,而層次結(jié)構(gòu)是通過組合若干相關(guān)特性(列)構(gòu)成的。例如, 絕大多數(shù)數(shù)據(jù)集都具有Time維度。通常情況下,Time維度包含Year、Month、Date和Day特性,以及一個Year – Month – Date 層次結(jié)構(gòu)。
Mining Structures (先不討論)
Roles (先不討論)
Assemblies (先不討論)
Miscellaneous (先不討論)
二、創(chuàng)建數(shù)據(jù)源
使用微軟示例數(shù)據(jù)庫AdventureWorksDW2012為數(shù)據(jù)源,下載地址
下載完直接附加一下就可以了。
創(chuàng)建順序基本按照Solution Explorer 窗口里面文件夾的順序
右鍵 Data SourcesàNew Data Source…
新建一個源,參考下圖進(jìn)行填寫。(注意選中Save my password)
指向我們事先準(zhǔn)備的AdventureWorksDW2012, 點(diǎn)擊Test Connection通過后點(diǎn)擊OK
可以看到新建的數(shù)據(jù)源,繼續(xù)點(diǎn)擊 Next
選擇 Use a specific Windows user name and password選項(xiàng),輸入對AdventureWorksDW數(shù)據(jù)庫具有訪問權(quán)限的賬戶憑證,單擊 Next
最后一個頁面,可以更改Data source name,我們使用默認(rèn)名稱, 點(diǎn)擊Finish就完成了數(shù)據(jù)源的創(chuàng)建。
三、創(chuàng)建數(shù)據(jù)源視圖
DSV提供了在OLAP數(shù)據(jù)庫中使用的表的邏輯視圖。DSV可以包含來自一個或多個數(shù)據(jù)源的表和視圖。因?yàn)槎嗑S數(shù)據(jù)集和維度是從DSV創(chuàng)建的,而不是直接從數(shù)據(jù)源對象創(chuàng)建的,我們需要在AS數(shù)據(jù)庫中創(chuàng)建DSV.
步驟:
右鍵 Data Source ViewsàNew Data Source View…
點(diǎn)擊 Next進(jìn)入下一步
選擇之前我們創(chuàng)建的數(shù)據(jù)源,下一步。
從左邊Available objects選擇需要的表移至右邊 Included objects中。
下一步
使用默認(rèn)提供的名字,點(diǎn)擊Finish完成DSV的創(chuàng)建。
完成創(chuàng)建后會自動打開DSV.
DSV設(shè)計(jì)器包含三個窗格: Diagram Organizer, Tables, Diagram View.
可以通過在DSV設(shè)計(jì)器中添加、刪除以及修改表和視圖來對DSV進(jìn)行更改。
下面我們分別介紹這三個窗格:
最右側(cè)是 Diagram View 窗格。
Diagram View顯示表及其關(guān)系的圖形表示形式。顯示的每個表都包含相應(yīng)的列及是否有主外鍵標(biāo)志的指示。表之間關(guān)系是通過連接兩個表的線條表示的, 小鑰匙表示主鍵列。連接線顯示表之間的關(guān)系。如果雙擊某個連接線,可以找到用于構(gòu)成該關(guān)系的聯(lián)接的每個表的列。
若要查看DSV所指定的數(shù)據(jù)樣本,右擊表,選擇Explore Data, 默認(rèn)查詢前5000行。通過單擊Sampling Options更改檢索的行數(shù)。
左上是Diagram Organizer(關(guān)系圖組織程序) 。對關(guān)系圖中的表所做的操作會實(shí)時(shí)反映在整個DSV中。默認(rèn)情況下,有一個稱為All Tables的關(guān)系圖會包含DSV中的所有對象。
左下是Tables窗格,其中顯示DSV中所有表的樹視圖,以及這些表及其他表的關(guān)系。
可以看到,主鍵是CurrencyKey
展開Relationships文件夾,DimCurrency通過CurrencyKey列聯(lián)接到兩個Fact表
右鍵RelationshipsàFactInternetSales(using CurrencyKey),選擇Edit Relationship… 可以看到主外鍵關(guān)系
關(guān)于DSV必須掌握的六點(diǎn)
關(guān)于數(shù)據(jù)源視圖的一些常用功能(針對三個窗格進(jìn)行操作)需要掌握:
一、在DSV中添加/刪除表
如果一開始表沒有添加完全或需要刪除一些表, 可以右擊 Diagram View 窗格, 選擇Add/Remove Tables 可以進(jìn)行修改。
二、在DSV中指定主鍵和關(guān)系
DSV向?qū)Э梢蕴崛≡诨A(chǔ)關(guān)系數(shù)據(jù)庫中指定的主鍵和關(guān)系,并將它們添加到DSV中。但是,你使用的某些OLTP數(shù)據(jù)可能并沒有為相關(guān)表指定主鍵和關(guān)系。
DSV設(shè)計(jì)器提供了針對沒有定義主鍵的表指定邏輯主鍵的功能。通過這種方式,可以高效的修改DSV中表之間的關(guān)系,或者在表之間添加新的關(guān)系。
若要為某個表設(shè)立邏輯主鍵,有兩種方式
1. 在表中選擇要指定為邏輯主鍵的一列或多列,右擊并選擇Set Logical Primary Key
2. 可以通過拖拽的方式設(shè)立主外鍵關(guān)系。(起點(diǎn)為外鍵, 目標(biāo)是主鍵)
三、在DSV中添加一個基于命名查詢的表
當(dāng)現(xiàn)有物理表不能滿足我們要求時(shí),可以直接在DSV 設(shè)計(jì)器中通過SQL語句查詢已有的表,產(chǎn)生自定義表。
如下圖,在DSV設(shè)計(jì)器的關(guān)系圖窗格中右擊,選擇 New Named Query,直接用一個SQL查詢創(chuàng)建新表。
四、在某些情況下可能要在已有表中創(chuàng)建新列。
例如,員工的首名、中間名和姓氏創(chuàng)建一個包含該員工全名的列。
可以直接右擊Employee,然后選擇New Named Calculation
DSV在AS數(shù)據(jù)庫的元數(shù)據(jù)中維護(hù)命名計(jì)算定義;不會將定義寫到基礎(chǔ)表中。
五、在Diagram Organizer中創(chuàng)建新的視圖
數(shù)據(jù)倉庫設(shè)計(jì)由一個或多個事實(shí)表以及關(guān)聯(lián)的維度表構(gòu)成。
小型數(shù)據(jù)倉庫通常包含10~20個表, 而較大的數(shù)據(jù)倉庫可能會包含一百多個表。
DSV中包含非常多的表肯定會在一定程度上增加導(dǎo)航和使用的復(fù)雜性。
可以按照主題新建一些自定義的視圖以方便使用。
如下圖方框處默認(rèn)會創(chuàng)建一個關(guān)系圖,你可以增加其他的,如HR主題,財(cái)務(wù)主題等。
若要創(chuàng)建新的關(guān)系圖,請執(zhí)行以下操作:
1.右擊Diagram Organizer窗格,然后選擇New Diagram
2.將新的關(guān)系圖命名為Internet Sales
3.右擊Diagram窗格并選擇Show Tables,選擇需要包含的表。
4.選擇FactInternetSales表,單擊OK
5.右擊剛剛添加的表的標(biāo)題,然后選擇Show Related Tables.
上述操作可以獲得一個包含F(xiàn)actInternetSales事實(shí)表以及相關(guān)維度表的關(guān)系圖。
如果不想看到某個關(guān)系圖中的某個特定表,可以右擊該表并選擇Hide
如果要添加單個表,也可以直接從左下Tables窗格拖拽到Diagram窗格。
六、查看數(shù)據(jù)源視圖屬性
AS項(xiàng)目中每個對象(表,視圖,列和關(guān)系)都具有特定的屬性。
這些屬性就不一一講述了,大家可以自己打開看看。
有幾個簡單提一下。
1. 普通列有Length屬性,僅適用于字符串?dāng)?shù)據(jù)類型,其他數(shù)據(jù)類型均為 -1.
2. 不能更改的屬性,顯示為灰色(只讀屬性)
3. 可以更改FriendlyName屬性,DSV關(guān)系圖視圖中右擊,通過選擇Show FriendlyName選項(xiàng)在用戶友好名稱和原始列名稱直接切換。
4. 命名計(jì)算列不包含F(xiàn)riendlyName屬性。
5. 表屬性中TableType顯示基礎(chǔ)數(shù)據(jù)源時(shí)表還是視圖。
總結(jié)
現(xiàn)在,你已經(jīng)成功使用SSDT創(chuàng)建了一個DSV,可以使用這些表來構(gòu)建多維數(shù)據(jù)集和維度,后續(xù)將會圍繞這個例子繼續(xù)進(jìn)行擴(kuò)展。
另外說明一下,我們示例中DSV的表都來自于一個數(shù)據(jù)源,DSV設(shè)計(jì)器可以在單個DSV中包含來自多個數(shù)據(jù)源的表。
新增不同源表的步驟類似,只需要將我們提到的步驟稍加組合,簡單說明一下:
首先, 使用數(shù)據(jù)源向?qū)Фx涉及的各個表的數(shù)據(jù)源。
完成該操作后,可以創(chuàng)建一個DSV, 并在其中包含來自上述數(shù)據(jù)源之一的表。
這第一個數(shù)據(jù)源被稱為主要數(shù)據(jù)源,要求必須是SQL Server數(shù)據(jù)源。
然后,在DSV設(shè)計(jì)器中可以選擇其他數(shù)據(jù)源來添加表(通過Add/Remove Tables)
歡迎大家多多評論與支持, 祝學(xué)習(xí)進(jìn)步:)
相關(guān)文章列表:
總結(jié)
以上是生活随笔為你收集整理的ssas 数据源mysql_BI之SSAS完整实战教程2 -- 开发环境介绍及多维数据集数据源准备...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql进度查看_MySQL长查询进度
- 下一篇: php mysql实现每日签到积分_ph