企業數據倉庫包括詳細的某一時間點數據和經過概括總結的信息,數據大小從50GB到超過1TB。企業數據倉庫可能是非常昂貴的,並且在安裝和管理方面是很耗時間的。通常由集中式信息服務組織自上而下地創建。
數據集市包含企業范圍數據的一個子集,這個子集是為組織機構的個別部門或公司使用而創建的。 數據集市與企業數據倉庫不同,它是由為特殊決策支持軟件或用戶組使用的部門資源自上而下建立的。數據集市包含經過匯總的和有關某一主題領域的詳細數據。數據集市的信息可能是企業數據倉庫的子集(依賴性的數據集市)或可能直接來自業務系統源數據(獨立的數據集市)。
企業數據倉庫和數據集市是結構化的,並在前面所述的處理過程中保持不變。並且,兩種方法共享一套相似的技術組件。
數據倉庫組件
數據倉庫包括許多組件,如:
· 業務系統源數據
· 設計/開發工具
· 數據析取和轉換工具
· 數據庫管理系統(DBMS)
· 數據存取和分析工具
· 系統管理工具
幾年前,微軟公司認識到集成這些組件的一套技術的需求。這就導致了微軟數據倉庫框架的誕生,它不僅是諸如SQL Server 7.0等微軟產品開發的路標,而且是與其他軟件商的產品技術集成所需的路標。
支持UDA的技術,允許組織機構創建易於維護的解決方案,也允許使用選擇的客戶端、中間層和服務器上的最佳工具、應用軟件和數據源。
利用COM對UDA建模
UDA體系結構的一大長處在於,它是通過一套公共的現代的、面向對象的接口實現的,這些接口是基於組件對象模型(COM)的。COM是開發人員的最佳選擇,因為它能提供:
· 豐富的綜合服務,包括事務、安全性、消息隊列和數據存取,以支持最廣泛的應用情況。
· 多家供貨商使用多種開發語言開發的大量工具。
· 定制應用軟件和可重用組件的廣泛用戶基礎。
· 可靠的互用性,利用用戶和開發人員的現有投資。
利用COM提供的一致性和互用性,使得UDA體系結構成為開放式結構,並能與任何工具和編程語言一起工作。同時,COM也允許UDA在現代軟件體系結構的各層中提供一種一致性數據訪問模型。
UDA使用基於COM的接口,針對低級和高級軟件開發進行優化:
· OLE DB
· Microsoft ActiveX? Data Objects (ADO)
OLE DB的定義
OLE DB是微軟公司的戰略性系統級編程接口,它能管理整個組織機構的數據。OLE DB是一種建立在ODBC成功基礎上的開放的規范,它為存取各種數據類型提供了一種開放的標准。ODBC是為訪問關系數據庫而創建的,而 OLE DB用來存取關系型和非關系型信息源,包括:
· 大型機索引順序存取方法/虛擬存儲存取方法(ISAM/VSAM)和層次數據庫
· 電子郵件和文件系統倉庫.
· 文本、圖形和地理數據
· 定制的商業對象
OLE DB定義了一個COM接口的集合,它封裝了各種數據庫管理系統服務。這些接口允許創建實現這些服務的軟件組件。OLE DB組件包括數據提供者(它們存儲和發布數據)、數據用戶(它們使用數據)和服務組件(它們處理和傳輸數據)。
OLE DB 接口用來平滑地集成組件,以便供貨商能迅速地將高質量的OLE DB組件推向市場。另外, OLE DB包括連接ODBC的橋梁,這使得對現在大量的ODBC關系數據庫提供持續支持成為可能。
定義ActiveX數據對象
Microsoft ADO 是戰略性應用軟件級數據和信息的編程接口。ADO 為數據提供一致的、高性能的存取,並支持開發工作的許多需求,包括創建前端數據庫客戶和中間層商業對象、使用應用軟件、工具、語言或Internet 浏覽器。ADO被設計成一對多、客戶/服務器和基於Web解決方案開發的數據接口。
ADO為OLE DB提供了一個易於使用的應用級接口,它依次提供對數據的潛在存取。ADO的實現在關鍵場合中具有體積(footprint )小、網絡通信量最少,並且在前端和數據源之間的層次最少的優點。結果是獲得一個輕型的、高性能的接口。通過COM自動接口調用ADO,為先進的快速應用開發(RAD)、數據庫工具和語言提供了熟悉的環境。並且因為ADO被設計成遠程數據對象(RDO)和數據訪問對象(DAO)最佳特性的結合並最終取代它們.。ADO使用帶簡化語義的類似約定,這使得它成為今天開發人員自然的下一個步驟。
Microsoft Repository: 數據倉庫的黏合劑
實現過程中最大的困難之一是集成設計、轉換、存儲和管理數據倉庫所需的所有的工具。共享和重用元數據的能力減少了建立、使用和管理數據倉庫的費用和復雜度。許多數據倉庫產品包含一個私有的元數據庫,這個庫不能被數據倉庫中的其它組件使用。每一種工具都必須能夠訪問、創建或提高由其它任何工具創建的元數據,同時也能擴展元數據模型以滿足對工具的特殊需要。
考慮這樣一個例子:具有共享元數據的數據倉庫。來自運作系統的元數據被設計和數據轉換工具存儲在庫中。轉換產品使用物理和邏輯模型來抽象、確認和清空原來加載在數據庫中的數據。數據庫管理系統可以是關系型的、多維的或是兩者結合的。數據存取和數據分析工具提供了訪問數據倉庫中信息的能力。信息目錄集成了技術元數據和商業元數據,這就使查找和裝入已有的查詢、報告和數據倉庫應用變得容易了。
微軟數據倉庫框架關注在Microsoft Repository中的共享的元數據,Microsoft Repository是Microsoft SQL Server 7.0的一個組件。Microsoft Repository是存儲關於軟件組件和組件間關系的描述信息的數據庫。它由一個開放式信息模型(OIM)和一套已發布的COM接口組成。
OIM是信息特殊類型的對象模型,它具有足夠的靈活性以支持新的數據類型,並且也具有足夠的可擴展性以適應特殊用戶或供貨商的需要。微軟公司與軟件業合作開發了OIM,用於數據庫設計、數據轉換和聯機分析處理(OLAP)。
數據倉庫的數據庫
數據倉庫的關鍵是數據庫。在能滿足組織機構目前和將來需要的高性能數據庫引擎上建立數據倉庫是至關重要的。關系型數據庫管理系統(RDBMS)為存儲在數據倉庫中的大量信息提供了最普通的存儲系統。目前關系系統正受到能提供更高導航能力和對復雜查詢有更佳性能的多維OLAP(MOLAP)的挑戰。從中央數據倉庫將數據可靠地復制到獨立的數據集市中,並確保地理上分布的鏡像數據集市的數據是一致的,這種能力也是相當重要的。
可擴縮的和健壯的RDBMS
Microsoft SQL Server 7.0包含許多特性以確保它是企業數據倉庫和數據集市優秀的RDBMS。這些特性包括:
· 支持容量達TB(terabyte)的數據庫,以管理最大型的數據倉庫
· 為大型數據庫提供可擴縮性,並為部門服務器和膝上型電腦提供與台式機版本100%編碼兼容的可擴縮性,同時提供訪問中央數據源的能力和無與倫比的靈活性。
· . 先進的查詢處理,支持在數據倉庫應用(包括星型模式)中典型的復雜查詢的優化和執行。
· 查詢間並行性(Intraquery parallelism)通過將一個復雜的單一查詢分解成組件部分,然後將工作量分布到多個
您正在看的SQLserver教程是:Microsoft SQL Server 7.0 數據倉庫框架。處理器(包括遠程聯接的服務器中) 提供了更快的性能。
· 高性能的工具以提供性能調節、數據加載和索引構造。
· 異類連接能力可確保來自任何OLE DB源數據的檢索和合作。
SQL Server 7.0可以適合幾乎所有大小和復雜的數據倉庫。但是,實現數據倉庫通常需要一個以上的中央數據庫。實際上,組織機構會用附加的分析工具和分布式信息體系結構來實現決策支持系統。SQL Server 7.0中有管理這些附加任務的基本工具。
綜合的OLAP分析能力
OLAP是目前日益流行的技術,它能顯著提高商業分析的能力。歷史上,OLAP曾被描述成一種昂貴的工具、難以實現,並且也不能靈活部署。Microsoft SQL Server OLAP 服務(OLAP Services) 是一種新型的、具有OLAP全部特性的服務,將作為SQL Server 7.0的一個組件提供給用戶。OLAP服務包括中間層服務,這使得用戶能對具有異常結果的大量數據進行復雜的分析。OLAP服務還包括客戶端高速緩存和被稱為Microsoft PivotTable? Service (微軟數據透視表服務)的計算引擎,這有助於提高性能、減少網絡通信量。數據透視表服務使得最終用戶在與網絡斷開時也能對分析工作進行管理。
OLAP 服務是OLAP服務器的中間層,可以簡化用戶導航,並有助於提高對數據倉庫信息進行查詢的性能。
OLAP是數據倉庫的關鍵組件,並且OLAP Services為從生成報表到先進的決策支持等大量的應用提供了必要的功能。根據計劃,SQL Server 7.0將包含OLAP功能,這將使多維分析更易承受,並使OLAP的好處為更多用戶所使用(包括從小型組織到大型公司的小組和個人)。通過Microsoft OLE DB for OLAP與大量支持OLAP應用軟件的工具和軟件相結合,OLAP服務將有助於增加有權使用復雜分析工具的組織機構數目,並有助於減少數據倉庫的費用。
如需了解有關Microsoft SQL Server OLAP 服務的更多信息,請參閱"Microsoft SQL Server 7.0 OLAP Services(Microsoft SQL Server 7.0 OLAP服務)"(產品編號 098-80705)。
導入、導出和轉換數據
在數據被加載到數據倉庫之前,必須被轉換成一種集成的和一致的格式。轉換是運行程序的結果,在存儲於特定目的地之前,它用於表示數據源信息。Microsoft Data Transformation Services (DTS)是Microsoft SQL Server 7.0中的新工具,它可以支持多種類型的轉換,例如,簡單的列映射、計算一個以上源域的新值、將一個單一域分解成多個目標列等等。
DTS 的目標
DTS用來:
· 通過使用OLE DB,為異類數據提供更好的輸入、輸出和轉換。
· 為ISV、客戶和咨詢者提供一個可擴展的體系結構。
· 通過與Microsoft Repository集成,共享豐富的有關源、目標、轉換、和體系的元數據。
通過100%基於OLE DB的體系結構,DTS允許用戶從多種數據源中導入、導出和轉換數據,同樣,也允許用戶將數據導入、導出和轉換到多種數據源中。OLE DB數據源不僅包括數據庫系統,還包括桌面應用軟件如Microsoft Excel等。微軟公司為SQL Server 和Oracle 提供OLE DB接口。另外,微軟公司已開發了能與已有ODBC驅動相結合的OLE DB包裝程序(wrapper)以訪問其它相關源。同時還支持分隔符和固定字段文本文件。
DTS 的體系結構
DTS轉換定義被存儲在Microsoft Repository 、SQL Server 或COM結構的存儲文件中。通過OLE DB可訪問相關的和無關的數據源。數據泵(data pump)從數據源中打開一個行集合並將每一行從數據源中抽取到數據泵中。數據泵運行Microsoft ActiveX 腳本編輯功能(Microsoft Visual Basic?、Scripting Edition、 JScript?開發軟件和PerlScript)來拷貝、確認或將數據從數據源轉換到目的地。對於先進的數據淨化可創建定制轉換對象。為目的單元格所賦的新值返回到泵中,並通過被稱為高速數據傳輸器發送到目的地。.目的地可以是OLE DB、 ODBC、 ASCII 固定字段、 ASCII 分隔符文件和 Html。
在DTS體系結構中,數據可以用OLE DB數據泵從數據源中抽取,並可在發送到OLE DB目的地之前選擇是否轉換格式。
復雜的轉換和數據確認邏輯可由ActiveX腳本完成。這些腳本可以調用從任何OLE對象到修改或確認列值中的方法。高級開發人員可以創建可重用的COM轉換對象以提供高級的淨化功能。可以通過FTP或運行外部程序創建傳輸文件的定制任務。
通過OLE DB接口,ISV和咨詢者可以創建新的數據源和目的文件。數據泵可以為任何供貨商查詢OLE DB接口以確定是否支持高速數據加載,如果不支持的話,可以使用標准的加載機制。
雖然象標准SQL-92已經提高了關系型數據庫引擎之間的互用性,但在市場上,供貨商還是通過為SQL-92添加有用的但專有的擴展以區分它們。
DTS 包
DTS包是對作為
您正在看的SQLserver教程是:Microsoft SQL Server 7.0 數據倉庫框架。轉換程序一部分所有工作的詳細描述。每一個包定義了一個或多個將在並行隊列中執行的任務。可以通過使用圖形用戶界面或支持OLE 自動化的任何語言交互地創建DTS包。DTS包可以存儲在Microsoft Repository中、SQL Server中或作為COM結構的存儲文件保存。一旦從儲存庫中或結構化存儲文件中恢復,包可以以與交互式創建DTS包相同的方式運行。
DTS包可以包含多種任務,並且每一任務可以是表對表映射中沒有涉及到的或象調用內部數據清空過程一樣復雜。
任務定義了可以作為轉換程序一部分運行的某一工作。通過DTS數據泵,任務可以將異類數據從OLE DB源移動或轉換到OLE DB目的地,並且任務可以運行ActiveX 腳本或運行外部程序。Step對象可以運行任務。
Step對象調整控制流,並執行DTS包中的任務。某些任務必須按某一確定順序執行。例如,創建數據庫(任務A)必須在創建表(任務B)之前完成。這是在任務A和任務B之間"完成-開始"關系的一個例子;因此任務B對任務A有優先約束。
當滿足所有優先約束後,就可以執行任務了。任務可以基於運行條件有條件地執行。可以並行執行多項任務以提高性能。例如,包可以同時從Oracle 和DB2中將數據加載到分離表中。Step對象也對任務的優先權進行控制。Step的優先權決定運行任務的Win32? API線程的優先權。
DTS 數據泵是OLE DB服務供貨商提供的在異類數據存儲間導入、導出和轉換數據的基礎結構。OLE DB的戰略性數據訪問接口提供了存取范圍最廣泛的相關和無關數據的能力。DTS 數據泵是高速的運行中的COM服務器,能轉移和轉換OLE DB行集合。
轉換是一系列過程操作,在被存儲在所希望的目的地之前,必須用在源行集合中。DTS 數據泵提供了一個可擴展的、基於COM的體系結構,該體系結構在數據從源轉移到目的地時,可以進行復雜的數據確認和轉換。 DTS 數據泵可以在DTS包中充分使用ActiveX腳本的功能,使得復雜過程邏輯可以用簡單的、可重用的ActiveX腳本來表示。當列值通過DTS數據泵從源轉移到目的地時,這些腳本可以通過所選擇的腳本語言來確認、反轉和轉換列值。在源行集中的一列或多列的新值可以很容易地計算。源列可以把一個單一域分解成多個目的地列。ActiveX腳本可以調用和使用任何支持自動化COM對象的服務。
DTS包
可以用導入/導出向導、DTS Package Designer (包設計器)或COM接口來創建DTS包。導入/導出向導為將數據移到數據倉庫中,或將數據從數據倉庫移出提供了最簡便的機制。但轉換的復雜性受向導范圍的限制。例如,在向導中只能有單一源和單一目的地。
DTS Package Designer通過易用、虛擬接口公布了DTS的所有功能。在DTS Package Designer中,用戶能定義優先關系、復雜查詢、控制流並訪問多種異類源。
DTS Package Designer為描述數據流和包的執行提供了圖形化環境。
最後,軟件能通過COM接口定義和執行DTS包程序設計。這種方法首先由希望利用DTS特性的ISV使用,而無需用戶分別對包進行定義。
分析、提交數據
微軟公司提供了眾多機制用於查詢數據倉庫中的信息。Microsoft Office 套裝生產力工具,Microsoft Access 和 Microsoft Excel都為查詢和分析數據倉庫中的信息提供了必要的工具。
由這兩個訪問標准,組織機構能選擇最恰當的分析工具以滿足他們的需求。ISV費用的減少應歸於標准化,同時意味著獲得同類中最佳產品的費用也將減少。
系統管理
您正在看的SQLserver教程是:Microsoft SQL Server 7.0 數據倉庫框架。>
實現數據倉庫最具隱蔽性的費用之一是系統的維護和管理。傳統技術中,需要特殊的技能來管理關系型數據庫、OLAP 服務器、設計與轉換技術。這就意味著需要許多經過特殊培訓的人來完成全局性、相關性任務。Microsoft Data Warehousing Framework提供了綜合的管理層,數據倉庫過程中能通過組件共享該層。
微軟公司為微軟的系列產品提供了一個控制台,該控制台能簡化任務之間甚至各產品之間的轉換工作。Microsoft Management Console (MMC:微軟管理控制台)可由客戶、咨詢者和ISV擴展功能,它為特殊環境提供了一個高度定制的接口。發行的軟件要能與控制台相配合,可以是由ISV開發的封裝好的用戶接口或各自開發的定制接口,但應具有諸如SQL Server 基本產品的能力。象Microsoft BackOffice?家族的眾多產品一樣,SQL Server 7.0是作為到MMC的一個咬接交付的。
Microsoft Management Console(微軟管理控制台)
MMC 為獲得微軟服務器產品的功能提供了一個統一的常用的界面。MMC用戶界面與Windows Explorer 環境類似,具有垂直切分工作窗口,該窗口包含目錄的console tree (控制台目錄)。窗口的左側有與某一特定服務器相關的對象;窗口的右側是所選定項目的details pane(細節窗格)。Details pane中的詳細信息可以各種方式顯示,包括Html文檔。
MMC為那些剛負責數據庫管理工作不久的管理員提供了很多具有高級功能的工具。.添加的工具之一 是任務簿(taskspads),它將多方面的活動如建立數據庫、建立用戶安全性、監測SQL Server 數據庫等分組管理。任務簿將指南信息、指導活動、向導結合在一起。
向導
SQL Server 7.0包含超過25個用於簡化經常性任務的向導:
· 創建數據庫、視圖、索引和存儲過程
· 備份或恢復數據庫
· 為復制配置發布和分布服務器,並為數據廣播復制創建一個發布者
· 管理SQL Server數據庫的安全性
· 創建一個能定時運行的維護文件
· 在SQL Server基於字符的列中定義全文本索引
· .創建一個Web任務,該任務能創建HTML頁、從Html輸入數據或運行一個已有的Web任務
向導有助於減少數據庫管理員成為SQL Server專家所需的學習過程。在數據倉庫環境中,數據庫管理員經常要支持處理過程的多個步驟,在處理過程中會涉及到多種產品,減少學習過程也就意味著時間和費用的節省。
可視化的數據庫圖表結構
因為數據倉庫應用比OLTP系統要更易反復,所以數據庫結構和模式經常改變。可視化的數據庫圖表結構為SQL Server數據庫管理員提供了一種物理數據模型工具,以簡化定義和修改周期。
通過SQL Server 7.0 Enterprise Manager,可視化的數據庫圖表結構被存儲在數據庫服務器上。在數據庫或圖表上進行的修改都會反映在另一個數據庫或圖表中。
提供一個向導使得對已有數據庫中表的選取和布局自動化。數據庫中的實體(表和表之間的關系)可以在圖表工具中完全定義。可視化的數據庫圖表結構顯示了表及表之間的關系,並且允許修改個別表的結構和連接該表的約束條件。
SQL Server Profiler
.對關系數據庫的正確調節需要有關如何在常規基礎上使用數據庫的知識。Microsoft SQL Server 7.0 Profiler是一圖形工具,它使得系統管理員通過實時捕捉有關服務器活動的連續記錄來監測SQL Server 中的引擎事件。SQL Server Profiler 監測發生在SQL Server 上的事件,刪除基於用戶指定基准的事件,並指導是將跟蹤結果輸出到屏幕上、文件中,還是輸出到表中。SQL Server Profiler允許數據庫管理員重復先前捕捉到的跟蹤結果,以測試數據庫結構的變化、識別降低系統性能的查詢、排除故障或恢復原有設置。
可被監測的引擎事件包括:
· 登錄連接、登錄失敗和脫線
· SELECT、 INSERT、 UPDATE和 DELETE 語句.
· 將錯誤寫入到SQL Server錯誤日志
· 鎖定獲得的或釋放的數據庫對象
每一事件獲得的數據可以被捕捉到並被保存在文件中或SQL Server表中,以供日後分析。
Index Tuning Wizard(索引調整向導)
在關系數據庫的管理工作中,最耗時間且不精確的過程之一就是創建索引以優化用戶查詢的性能。SQL Server 7.0 Index Tuning Wizard是一新型工具,它使得數據庫管理員在無需對數據庫的結構、硬件平台、組件及最終用戶的應用如何與關系引擎交互式作用等有太多的了解就能創建並實現索引。Index Tuning Wizard分析數據庫的工作量並提出針對SQL Server數據庫的優化索引配置建議。
Index Tuning Wizard 能:
· 使用Graphical Showplan代價公式比較、對比和選擇索引的最佳混合。
· 為數據庫的工作量(跟蹤文件或SQL腳本)推薦索引的最佳混合。
· 提供索引、工作量、表格效用和查詢代價分析。
· 允許數據庫管理員針對小型問題查詢集合調整數據庫而無需修改索引配置。
· 允許數據庫管理員針對不同的磁盤空間限制建立索引配置建議原型。
Index Tuning Wizard 能分析SQL腳本或SQL Server Profiler 跟蹤結果的輸出,並根據SQL腳本或跟蹤文件提及的當前索引的效率來制定建議。建議有SQL語句組成,執行這些語句可以刪除已有的索引並創建新的更有效的索引。建議由向導給出,然後保存在SQL腳本中,建議可以立刻運行,或稍後由用戶手工運行,或通過創建一個運行SQL腳本的SQL Server任務為稍後的運行自動確定時間。
如果Index Tuning Wizard不能分析已有的SQL腳本或跟蹤文件,向導將通過SQL Server Profiler立即創建一個或安排一個SQL腳本或跟蹤文件。一旦數據庫管理員確定某一跟蹤文件捕捉了被監測數據庫正常工作量的代表性采樣,向導能對捕捉的數據進行分析並推薦索引配置以提高數據庫的性能。
SQL Server 代理服務
數據倉庫管理員能從日常性工作如數據庫備份的自動化中獲益。使用SQL Server 代理服務,管理任務可以由
您正在看的SQLserver教程是:Microsoft SQL Server 7.0 數據倉庫框架。設定定時執行哪些任務而實現自動化,並且管理任務可以由定義工作和警告集而實現程序化管理。自動化管理包括單一服務器環境和多服務器環境。
自動化管理的關鍵組件是工作、操作員和報警。工作定義為一次管理任務,所以它可以執行一次或多次,並且每次執行時都要監測是成功還是失敗。工作可以在一台本地服務器或多個遠程服務器上執行;根據一個或多個時間表執行工作;由一個或多個警報引發執行工作;工作由一個或多個工作步組成。工作步可以是可執行程序、Windows NT?指令、Transact-SQL語句、ActiveX腳本或復制代理。
操作員是負責維護一台或多台運行SQL Server的服務器的人員。在某些企業中,操作員的工作被指派給某個人。在有多台服務器的大型企業中,由多人共同承擔操作員的工作。通過電子郵件、網頁或網絡通信來通知操作員。