內容目錄
關於Project Real
緒論
和分析服務互動的三種方法
資料庫設計
資料來源和資料資源檢視
資料來源
最佳實務:當在標準安全模式下工作時,記住你的密碼。當移動對象時候,你將經常需要輸入密碼。
資料資源檢視
最佳實務
使用資料來源檢視擴充中繼資料metadata)
從資料來源檢視中忽略對象
修改資料來源檢視
結論
維度(dimensions)
維度鍵
層次hierarchies)
分析服務2005中的維度緩衝
屬性關聯
最佳實務:多花點時間用於維度設計,在維度種捕獲這種屬性關聯性
鍵的唯一性
最佳實務(必須的):你必須總是確保屬性鍵的唯一性。
最佳實務:總是掃描你的維度,確保它們包含你預期的廣泛的、甚至是分布的成員。
最佳實務:如果你告訴系統屬性是關聯的,則它們必須是關聯的。
將虛擬維度轉換成屬性層次
最佳實務:將SQL Server 2000分析服務中的虛擬維度轉換成屬性層次
可能的命名衝突
將關係表中的列提升為多維度設計中的屬性
和tinyint鍵不匹配的資料類型
未知的成員
最佳實務:在可能的地方,建立你自己的未知的成員。使用系統產生的未知的成員。
時間智慧嚮導
最佳實務:可能建立單機時間維度表的地方
最佳實務:在時間維度嚮導中,為各個屬性輸入鍵列非名稱列),例如年、月、周。
度量組
分割表
其它的Cube對象
伺服器端設定
設計抉擇
如何表示廠商
半可加減的存貨度量
最佳實務:如果你使用半可加性的度量,請確認Cube包含的維度不超過一個。
結論
附錄A:自動的分割表建立
關於Project Real
Project Real是微軟為建立商業智慧應用程式提供最佳實務而所做的努力。這些程式都是在Microsoft® SQL Server™ 2005基礎上,在真實的客戶背景上構建實施的。這就意味著真實客戶資料是可以代入系統內部,並且可以應對客戶在開發過程中將會遇到的同樣的問題。這些問題包括:
◆模式設計- 關係型模式和分析服務型模式
◆資料幫浦、資料轉換、資料載入(ETL)過程的實現
◆用戶端系統的設計與開發,包括資料報表和互動分析
◆產品系統的分級
◆運營系統的管理和維護,包括資料資料的不斷更新
通過在這種真實部署環境中的工作經曆,我們獲得了如何使用這些工具的完整理解。我們的目標是全方位的關注大公司在他們自己實際部署過程中所遇到的所有問題。
這份白皮書提供了一個關於分析服務(Analysis Services)設計和在Project REAL中的最佳實務的技術討論。我們深入的討論了每一類對象的細節,例如資料來源、資料來源檢視、維度、層次、屬性、度量組、分割表等等。並指出了我們在前進過程中遇到的重要問題。
若要查看Rroject REAL的概述資訊,可查看 Project REAL: Technical Overview 白皮書。有相當大一部分的資料、工具、和例子,都是在Project REAL的生命週期中產生的。為了找到最新的資訊,可以到Project REAL Web site這個串連來察看相關的資訊(http://www.microsoft.com/sql/bi/ProjectReal/)。
備忘:這篇文章僅僅是一個草案,它包括了一些建設性的實踐方法,這些方法都是基於我們早先在SQL Server 2005的Community Technology Preview (CTP)工作中獲得的經驗。到產品發布之前,白皮書中所描述的都是準確的。文檔中描述的產品功能性可能會有所變化。在將來,可能會提供更好的實踐方案。SQL Server 2005是在我們對這些好的練習常式中用的開發工具。
緒論
這篇文章回顧了關於Project REAL分析服務的技術性設計,並且討論了各種影響設計的問題。我們假定讀者已經比較熟悉分析服務設計,並且實踐過Project REAL所採用的模式。例如,我們假定讀者已經知道多對多廠商維度存在。我們的討論主要關注為什麼它會存在以及我們在對設計進行定案之前所考慮的可供選擇的辦法)。
在本文中,我們檢驗了在多維度設計中應用到的各種類型的分析服務物件。從物理模式對象入手,例如資料來源和資料來源檢視。接下來我們討論在邏輯對象,例如維度,使用者自訂的層次關係、屬性層次、和度量組等等。接下來深入到度量組特徵,例如分割、集合(aggregate)設計、以及前攝緩衝(proactive caching)。這部分內容最後討論了其它的邏輯設計,包括計算、關鍵效能指標(KPIs)、活動、透視、定製程式集、使用者自訂函數(UDFs)和MDX指令碼等等。
最後一個章節中,我們詳細討論了在分析服務模式設計階段,兩種可選的、合理的設計方案。我們提供了目標,也是我們考慮要做的事情,也正是我們所實現的。
本篇以介紹服務端設定來結束,主要討論了我們為什麼要改變這些配置。
Project REAL設計強烈依賴於分割(partitioning),在所有的度量組中,定義了幾百個這樣的分割表,在附錄A中,我們將展示我們是如何解決我們在各種資料庫中建立和管理分割錶帶來的管理問題。