標籤:style blog http io ar os 使用 sp for
原文:《BI那點兒事》SQL Server 2008體系架構
Microsoft SQL Server是一個提供了聯機交易處理、資料倉儲、電子商務應用的資料庫和資料分析的平台。
體系架構是描述系統組成要素和要素之間關係的方式。Microsoft SQL Server系統的體繫結構是對Microsoft SQL Server的主要組成部分和這些組成部分之間關係的描述。
Microsoft SQL Server 2008系統由4個主要部分組成,這4個部分被稱為4個服務,這些服務分別是資料庫引擎、分析服務、報表格服務和整合服務,這些服務之間相互存在和相互應用,它們的關係。
SQL Server 2008體系架構
資料庫引擎
資料庫引擎(SQL Server Database Engine,SSDE)是Microsoft SQL Server 2008統的核心服務,負責完成業務資料的儲存、處理、查詢和安全管理。
例如,建立資料庫、建立表、執行各種資料查詢、訪問資料庫等操作,都是由資料庫引擎完成的。
在大多數情況下,使用資料庫系統實際上就是使用資料庫引擎。
例如,在某個使用Microsoft SQL Server 2008系統作為後台資料庫的航空公司機票銷售資訊系統中, Microsoft SQL Server 2008系統的資料庫引擎服務負責完成機票銷售資料的添加、更新、刪除、查詢及安全控制等操作。
功能組件
資料庫引擎本身也是一個複雜的系統,它包括了許多功能組件,例如Service Broker、複製、全文檢索搜尋、通知服務等。
Service Broker提供了非同步通訊機制,可以用於儲存、傳遞訊息。
複製是指在不同的資料庫之間對資料和資料庫物件進行複製和分發,保證資料庫之間同步和資料一致性的技術。複製經常用於物理位置不同的伺服器之間的資料分發,它可以通過區域網路、廣域網路、撥號連線、無線串連和 Internet 分發到不同位置的遠程或移動使用者。
全文檢索搜尋提供了基於關鍵字的企業級的搜尋功能。
通知服務提供了基於通知的開發和部署平台。
分析服務
分析服務(SQL Server Analysis Services,SSAS)提供了OLAP和資料採礦功能,可以支援使用者建立資料倉儲。
相對OLAP來說,OLTP是由資料庫引擎負責完成的。使用SSAS服務,可以設計、建立和管理組件含了來自於其他資料來源資料的多維度結構,通過對多維資料進行多個角度的分析,可以支援管理員對業務資料的更全面的理解。
另外,通過使用SSAS服務,使用者可以完成資料採礦模型的構造和應用,實現知識發現、表示和管理。
例如,在航空公司的機票銷售資訊系統中,可以使用Microsoft SQL Server 2008系統提供的SSAS服務完成對客戶的資料採礦分析,可以發現更多有價值的資訊和知識,從而為減少客戶流失、提高客戶管理水平提供有效支援。
分析服務的主要組件是Business Intelligence Development Studio(簡稱為BIDS)。BIDS是一個管理工具,為整合服務、報表格服務、分析服務和資料採礦等提供了一個整合平台。基於Visual Studio 2008的BIDS支援使用者開發商業智慧應用程式,使用者可以在該平台中進行編寫代碼、調試及版本控制等工作。
分析服務概述 |
SQL Server 2008中包含了一個SQL Server 2008分析服務的單獨程式,可以用來對SQL Server和其他OLE DB資料庫執行OLAP分析。 |
建立分析服務項目 |
流量分析服務,首先就必須建立分析服務項目。一個分析服務項目包含資料來源、資料來源檢視、Cube、維度、採礦結構、角色、程式集和雜項8個子檔案夾,每個檔案夾中存放相應的對象。 |
建立Cube |
建立Cube的方法有兩種:第一種方法是先定義獨立於任何Cube的維度,然後再定義基於這些維度一個Cube;第二種方法是使用“Cube嚮導”來建立Cube和相關維度。 |
處理和瀏覽Cube |
處理Cube將使分析服務預先計算包含Cube中資料的彙總。 |
添加篩選條件 |
在瀏覽Cube時,可以為顯示的資料添加一些篩選條件,更精確地去分析資料。 |
使用資料採礦嚮導 |
流量分析服務提供的資料採礦嚮導,對當前Cube進行挖掘分析。 |
報表格服務
報表格服務(SQL Server Reporting Services,SSRS)為使用者提供了支援Web的企業級的報表功能。
通過使用Microsoft SQL Server 2008系統提供的SSRS服務,使用者可以方便地定義和發布滿足自己需求的報表。
無論是報表的布局格式,還是報表的資料來源,使用者都可以輕鬆地實現。
這種服務極大地便利了企業的管理工作,滿足了管理員高效、規範的管理需求。
例如,在航空公司的機票銷售資訊系統中,使用Microsoft SQL Server 2008系統提供的SSRS服務可以方便地產生Word、PDF、Excel等格式的報表。
報表格服務概述 |
SQL Server 2008報表格服務(Reporting Services,SSRS)提供了各種現成可用的工具和服務,協助資料庫管理員建立、部署和管理單位的報表,並提供了能夠擴充和自訂報表功能的編程功能。 |
使用報表精靈設計報表 |
使用報表精靈建立報表是比較常用且簡單的方法,其實現過程在Microsoft SQL Server 2008的工具Business Intelligence Development Studio(BIDS)中完成。 |
使用報表設計師 |
雖然使用報表精靈可以快速地建立報表,滿足大多數使用者的需求,但對於建立複雜或者自由格式的報表還是具有一定的局限性。在這種情況下,就可以使用報表設計師來自主設計報表。 |
設計參數化報表 |
建立報表之後,為了進一步精確報表中顯示的資料,可以通過為報表添加參數的方式控制報表中包含的資料資訊。在SQL Server 2008中可以利用輸入值來維護報表,則稱這種報表為參數化的報表。 |
配置報表伺服器 |
對當前報表伺服器的內容進行配置。 |
發布報表 |
設計好一個報表之後,需要將該報表發布到已經設定好的報表伺服器上,供其他人查看。 |
管理報表 |
在報表管理器中,管理員可以對已經發布的報表進行管理,比如建立檔案夾、刪除檔案和轉移檔案等操作。 |
整合服務
整合服務(SQL Server Integration Services,SSIS)是一個Data Integration平台,可以完成有關資料的提取、轉換、載入等。
例如,對於分析服務來說,資料庫引擎是一個重要的資料來源,如何將資料來源中的資料經過適當地處理載入到分析服務中以便進行各種分析處理,這正是SSIS服務所要解決的問題。
重要的是,SSIS服務可以高效地處理各種各樣的資料來源,除了Microsoft SQL Server資料之外,還可以處理Oracle、Excel、XML文檔、文字檔等資料來源中的資料。
SSIS是Microsoft SQL Server 2005/8 Integration Services的簡稱,是產生高效能資料整合解決方案.
包括資料的抽取,轉換,載入的一個平台,簡稱ETL。這個平台主要是用於商業智慧中,來抽取資料適合的資料到資料倉儲的一個工具,當然也可以用到一般的系統中,做資料的匯入,匯出等。
俗話說:“十年磨一劍”,Microsoft 通過5年時間的精心打造,於2005年濃重推出Sql Server 2005,這是自SQL Server 2000 以後的又一曠世之作。這套企業級的資料庫解決方案,主要包含了以下幾個方面:資料庫引擎服務、資料採礦、Analysis Services、Integration Services、Reporting Services 這幾個方面,其中Integration Services (即SSIS),就是他們之間的中轉站、紐帶,將各種源頭的資料,經ETL到資料倉儲,建立Cube,然後進行分析、挖掘並將結果通過Reporting Services 送達給企業各級使用者,為企業的規劃決策、監督執行保駕護航。
現在很多人都把SSIS 說成是一個ETL (Extract-Transform-Load)工具,我個人覺得不太準確,或許是大家基本上都把他做為ETL 使用,其實SSIS已經超越了ETL的功能,ETL 僅是其中之一,它在其它方面也有非常突出的表現:
在資料庫維護方面 |
Database Backup; 統計資訊更新; 資料庫完整性檢查; 索引重建 SSIS 包執行; SSAS 任務處理。 |
業務處理 |
執行SQL 任務。 Web Service 任務。 |
作業系統維護 |
WMI事件觀察器任務 檔案系統任務。 |
其它 |
執行SQL 任務 執行進程任務 ActiveX 指令碼任務 指令碼任務(VB/C#). 執行Web Service 服務 |
尤其是上面的第四點,可以執行SQL 任務,可以執行Web Service 服務,可以執行系統進程,可以執行(VB/C#)指令碼任務,這給了我們多大想象的空間,還有什麼例外的?強啊。不得不佩服務一下。
SSIS(SQLServer整合服務)是一個嵌入式應用程式,用於開發和執行ETL(解壓縮、轉換和載入)包。SSIS代替了SQL2000的DTS。整合服務功能既包含了實現簡單的匯入匯出包所必需的Wizard導向外掛程式、工具以及任務,也有非常複雜的資料清理功能。SQLServer2008SSIS的功能有很大的改進和增強,比如它的執行程式能夠更好地並存執行。在SSIS2005,資料管道不能跨越兩個處理器。而SSIS2008能夠在多處理器機器上跨越兩個處理器。而且它在處理大件包上面的效能得到了提高。SSIS引擎更加穩定,鎖死率更低。
Lookup功能也得到了改進。Lookup是SSIS一個常用的擷取相關資訊的功能。比如從CustomerID尋找CustomerName,擷取資料集。Lookup在 SSIS中很常見,而且可以處理上百萬行的資料集,因此效能可能很差。SQL2008對Lookup的效能作出很大的改進,而且能夠處理不同的資料來源, 包括ADO.NET,XML,OLEDB和其他SSIS壓縮包。
SSIS 應用情境
SSIS 應用主要是在一些商業智慧的大型資料系統中,對資料的抽取,清洗等,以獲得高品質的資料,是企業在做分析的時候分析出準確的結果。同時SSIS也會應用於日常的資料管理中,比如一些DBA對資料庫的管理,對資料庫Job的管理,對資料庫的遷移,合并等工作。
SSIS 的體繫結構
主要由四部分組成:Integration Services 服務、Integration Services 物件模型、Integration Services 運行時和運行時可執行檔以及封裝資料流程引擎和資料流組件的資料流程工作():
《BI那點兒事》SQL Server 2008體系架構