簡介
Microsoft SQL Server 2005 是一個完整的商務智能 (BI) 平臺,其中為用戶提供了可用于構建典型和創新的分析應用程序所需的各種特性、工具和功能。本文簡要介紹了您在構建分析應用程序時將要用到的一些工具,并著重介紹了一些新增功能,這些新增功能使復雜 BI 系統的構建和管理比以往更加輕松。
下表概述了商務智能系統的組件,以及與之相應的 Microsoft SQL Server 2000 和 SQL Server 2005 組件。
組件 SQL Server 2000 SQL Server 2005
提取、轉換和加載
數據轉換服務 (DTS)
數據轉換服務 (DTS)
關系數據倉庫
SQL Server 2000 關系數據庫
SQL Server 2005 關系數據庫
多維數據庫
SQL Server 2000 Analysis Services
SQL Server 2005 Analysis Services
數據挖掘
SQL Server 2000 Analysis Services
SQL Server 2005 Analysis Services
托管報告
SQL Server 2000 Reporting Services
SQL Server 2005 Reporting Services
特殊查詢和分析
Microsoft Office 產品(Excel、Office Web Components、Data Analyzer、Sharepoint Portal)
Microsoft Office 產品(Excel、Office Web Components、Data Analyzer、Sharepoint Portal)
數據庫開發工具
SQL Server 2000 企業管理器、分析管理器、查詢分析器,以及各種其他工具
SQL Server 2005 Business Intelligence Development Studio (新增!)
數據庫管理工具
企業管理器、分析管理器
SQL Server 2005 SQL Server Management Studio (新增!)
SQL Server 2005 新增了兩個組件:SQL Server Management Studio 和 SQL Server Business Intelligence Development Studio。其他主要的 BI 組件——DTS、Analysis Services OLAP、Analysis Services Data Mining 和 Reporting Services——在 SQL Server 2005 中得到了改進,與以前有很大的不同。SQL Server 2005 關系數據庫包含一些重要的新增功能。雖然 Microsoft Office 查詢和門戶工具并沒有包含在 SQL Server 中,但當前的發行版本力爭在 SQL Server 2005 之前實現這一功能。Office 工具的 BI 功能將在 Office 產品發行周期內將得到逐步實現。
SQL Server 2005 Business Intelligence 工具集提供了一種端到端的 BI 應用程序集成:
• 設計:Business Intelligence Development Studio 是第一款專門為商務智能系統開發人員設計的集成開發環境。Business Intelligence Development Studio 構建于 Visual Studio 2005 技術之上,它為 BI 系統開發人員提供了一個豐富、完整的專業開發平臺。調試、源代碼控制以及腳本和代碼的開發均可用于所有的 BI 應用程序組件。
• 合成:“數據轉換服務”已被重新編寫,現在的 DTS 可以高速執行超大數據量的復雜數據集成、轉換和合成。Business Intelligence Development Studio 使程序包的構建和調試變得更加生動有趣。DTS、Analysis Services 和 Reporting Services 共同提供了一個源自異類源的無縫數據視圖。
• 存儲:在 SQL Server 2005 中,關系數據庫和多維數據庫之間的界限變得更加模糊。您可以將數據庫存儲在關系數據庫、多維數據庫中,或使用新增的“主動緩存”功能,充分利用兩種數據庫各自的優點。
• 分析:一直以來,Microsoft 的數據挖掘都十分簡單易用。現在,結合了其他的重要新算法(包括關聯規則、時間序列、回歸樹、序列群集、神經網絡和貝葉斯算法),使得這一功能更加完美。而在 Analysis Services 多維數據集中也添加了一些重要的新增功能:關鍵績效指標框架、MDX 腳本,以及其他的內置高級業務分析方法。Reporting Services 報告提交和管理框架使得復雜的分析方法更易于向最廣泛的潛在受眾分發。
• 交付:Reporting Services 將 Microsoft Business Intelligence 平臺的用戶群體延伸至那些需要使用分析功能的商務用戶。Reporting Services 是一種企業托管報告環境,它通過 web 服務進行嵌入和管理。您可以用大量的交互和打印選項,以各種不同的格式個性化設置和提交報告。通過將報告以數據源的形式分發至下游商務智能,復雜分析可以覆蓋更廣泛的受眾。Microsoft 及其合作伙伴的特殊查詢和分析工具將繼續承擔在 Analysis Services 和關系數據庫中訪問數據的常用工具角色。
• 管理:SQL Server Management Studio 集成了對 SQL Server 2005 所有組件的管理。Business Intelligence 從業者都將得益于 Microsoft 服務器“能力”擴展這一用戶盼望已久的功能增強,即從關系引擎(伸縮性、可靠性、可用性、可編程性,等等)擴展為全套的 BI 平臺組件。
SQL Server 2005 Business Intelligence 組件的主要目標是支持在各種規模的企業中開發和使用商務智能,并使其能夠供所有員工使用,不僅包括管理層和分析師,還包括操作人員和外部委托人。就此目標而言,SQL Server 2005 具有完整、集成、易用的特點,它以 web 服務的形式發布數據,而且僅通過日常硬件便可提供極佳的性能,另外它還包含許多新增功能,您可以使用這些新增功能開發創新的分析應用程序。
返回頁首
SQL Server2005 Beta 2 入門
在安裝 SQL Server 2005 時第一點要注意的就是它的集成安裝體驗。您不再需要為某些功能(如 Analysis Services)而分別運行安裝程序。如果某個功能(如 Reporting Services)不可安裝,則說明您的計算機不滿足該功能的安裝要求。您可以查看說明文件,以獲得有關功能必要條件的完整討論。在大多數配置得當的機器上,安裝過程中應接受所有默認設置,安裝所有的主要功能:
• SQL Server 關系數據庫引擎
• DTS
• Analysis Services
• Reporting Services
• SQL Server Management Studio(數據庫管理工具集)
• Business Intelligence Development Studio(BI 應用程序開發工具集)
Reporting Services 要求在機器上安裝并妥善配置 IIS。由于 Reporting Services 是 2005 Business Intelligence 功能組的一個重要組成部分,我們強烈建議您花費一定的時間,執行這些配置和安裝步驟。
熟悉 Analysis Services 的客戶可能會因缺少 Analysis Services 元數據倉庫而感到迷惑。在 SQL Server 2000 中,Analysis Services 倉庫被作為 Microsoft Access 數據庫發行。Analysis Services 2005 不包含元數據倉庫。相反,Analysis Services 數據庫元數據信息被存儲為 XML 文件格式,由 Analysis Services 進行管理。如果需要,還可以將這些 XML 文件放置在源代碼控制之下。
我們建議您使用 Business Intelligence Development Studio 進行開發,同時使用 SQL Server Management Studio 來操作和維護 BI 數據庫對象。雖然您能夠在 SQL Server Management Studio 中設置 DTS 包以及 Analysis Services 多維數據集和數據挖掘模型,但 Business Intelligence Development Studio 卻為設計和調試 BI 應用程序提供了更好的體驗。
對于 Beta 2 而言,建議您從掌握新的應用程序入手,因為與升級現有 DTS 包或 Analysis Services 數據庫相比,這樣可以學到更多東西。如果您已有一個可用的包或數據庫,您會發現,“重新創建”現有的包或數據會十分有用。在您熟悉了這些新增工具、功能和概念之后,便可試著升級現有對象。
許多客戶都借助 SQL Server 工具,使用熟悉的來自一個或多個源系統的商務智能結構來開發新的系統,使用 DTS 填充維度關系型數據倉庫,然后再用數據倉庫來填充 Analysis Services 數據庫。但是,SQL Server 2005 提供了許多選項,通過消除或淡化不同的組件使其背離了這種一般化設計。
關系型數據倉庫
SQL Server 2005 關系數據庫引擎包含一些對數據倉庫樣式應用程序設計和維護大有幫助的功能。這些功能包括:
• 對于超大型的表而言,表分區可快速數據的加載速度,并簡化維護過程。
• 輕松創建報告服務器
• Transact-SQL 方面的改進包括新增的數據類型和新增的分析功能
• 聯機索引操作
• 細化備份/還原操作
• 快速初始化文件
報告服務器
要想將關系操作報告從事務處理數據庫中分離出來,經常采用的一項技術便是維護一臺報告服務器。報告服務器對事務處理數據庫映像的維護一般都有一定的時間延遲,通常截止到前一天。報告服務器多用于報告功能和數據倉庫提取。
Microsoft SQL Server 2005 新增了兩項功能,使報告服務器的創建和維護過程變得更加簡單。SQL Server 報告服務器的延遲時間與以前相比大大縮短。同時,報告服務器被設計為充當事務處理系統的備選系統。
要創建報告服務器,先要創建一個數據庫鏡像,這是 SQL Server 2005 的新增功能,它為系統的高可用性提供了一個緊急備用系統。更多信息,請閱讀聯機叢書的“數據庫鏡像概念”主題。數據庫鏡像不能夠直接查詢,這時第二個新增功能就能派上用場了。
在鏡像上創建一個數據庫視圖。數據庫視圖是數據庫在某個時點的只讀副本。數據庫視圖并非數據庫的完整副本;極為節省空間。多個數據庫視圖還是可以同時共存,雖然維護數據庫視圖會對數據庫視圖所基于的事務處理數據庫產生一定的影響。更多信息,請閱讀聯機叢書的“了解數據庫視圖”主題。
通過在數據庫鏡像上創建數據庫視圖,您可輕松為系統的高可用性創建備用服務器,此服務器還可用作報告服務器,起著雙重作用。
表分區
分區表和分區索引將數據分割到多個水平單元中,以便于將行組映射到單獨的分區中。而對數據執行操作(如查詢)時,又可以將整個表或索引作為一個整體來執行。
分區可以:
• 改善數據表和索引的可管理性。
• 改善多 CPU 機器上的查詢性能。
在關系型數據倉庫中,事實數據表比較適合應用表分區,而按日期范圍分區又是最常見的分區策略。
正如聯機從書的“創建分區表和索引”主題中所描述的,定義分區表可分為三個步驟:
1.
創建一個分區函數,指定使用此函數的表如何分區。
2.
創建一個分區方案,指定應用此分區函數的分區在文件組上的位置。
3.
使用此分區方案創建一個表或索引。
多個表可以使用同一個分區方案。
本文討論了事實數據表的“范圍”分區,但其目的并非是針對表分區的完整討論或教程。有興趣的讀者請參閱 SQL Server 聯機叢書。
最常用的分區方案是按日期范圍(如年、季、月或甚至天)對事實數據表進行分區。在大多數情況下,對大型事實數據表進行日期分區可以提供良好的可管理性收益。為了改善查詢性能,應盡量使用相同的分區方案對時間維度表進行分區。
• 分區表和未分區表的行為方式相同。
• 針對表的查詢能夠得到正確解析。
• 針對表的直接插入、更新和刪除會被自動解析到適當的分區。
使用數據表分區快速加載數據
許多數據倉庫應用程序都力求在越來越小的加載窗口中加載越來越多的數據量。典型的流程是這樣的,先從幾個源系統中提取數據開始,接下來便是在這些系統間清理、轉換、合成和合理化數據。數據管理應用程序被限制為在加載窗口中完成整個提取、轉換和加載流程。通常,系統的業務用戶都強烈要求將數據倉庫查詢時的不可用時間降至最低。在設計時,數據管理應用程序的“寫入”步驟(即將新數據插入到現有數據倉庫的步驟)必須在短時間內完成,且要最小化對用戶造成的影響。
為了非常快速地加載數據,數據庫恢復模型必須為“批量記錄”恢復模式或“簡單”恢復模式,而數據表必須為空,或是包含數據但不包含索引。如果滿足這些條件,不作記錄的加載便成為可能。在 SQL Server 2000 中,分區表出現以前,這些條件通常只在初始歷史數據倉庫加載中才能滿足。一些具有大型數據倉庫的客戶已通過在分散的物理表上搭建 UNION ALL 視圖,構建了一個準分區結構;這些數據表都使用不記錄技術填充每個加載周期。這一方法并不盡如人意,而 SQL Server 2005 分區表則提供了更為優秀的功能。
在 SQL Server 2005 中,您不能直接在分區中執行不記錄加載。但是,卻可以將數據加載到將調用偽分區的單獨表中。在特定條件下,您可以用執行速度極快的元數據操作將偽分區切換到分區表中。此技術可滿足我們的兩個要求:
• 最小化整體加載時間:在不作記錄的情況下執行偽分區加載,以及
• 最小化對最終用戶的影響,并確保數據倉庫的完整性:偽分區可以在用戶查詢數據倉庫時被加載。在執行分區切換之前,數據管理應用程序會等到所有事實數據表全部加載完畢為止。分區切換的執行速度非常快,反應時間通常不到一秒。
此外,偽分區還可作為單獨的表進行備份,從而改善系統的可管理性。
使用表分區快速刪除數據
許多數據倉庫在數據倉庫中保留了一個詳細活動數據的滑動窗口。例如,事實數據表可能包含三年、五年或十年的數據。每到一個時間周期,便從數據表中刪除最舊的數據。持續刪除數據的主要原因在于要提高查詢性能并最小化存儲成本。
SQL Server 2005 分區使大型分區事實數據表中舊數據的刪除倍加輕松。如上所述,簡單地創建一個空白偽分區,然后將其切換到分區表中。分區表在其曾植入分區的地方有一個空白分區;偽分區在其曾為空白的地方包含數據。用戶可以根據需要對偽分區進行適當的備份、截斷或刪除。
或者,您還可以選擇重新定義分區函數,將所有空白分區合并到一個分區中。
Transact-SQL 方面的改進
新的數據類型
SQL Server 2005 中有一些很重要的新類型,這些類型對數據倉庫大有裨益:
• Varchar(max)、nvarchar(max) 和 varbinary(max) 支持 2GB 的數據,對于 text、ntext 和 image 數據類型非常有用。這些擴展的字符類型可能對在數據倉庫中保存擴展的元數據和其他說明性信息非常有用。
新的分析功能
許多新分析功能都提供了 Transact-SQL 中的基本分析功能。這些功能在那些允許用戶查詢關系數據庫,而不是通過 Analysis Services 排他查詢數據的數據倉庫中非常有用。另外,在數據中轉過程中,這些復雜的計算常被用來開發有價值的數據屬性。
ROW_NUMBER。返回結果集的連續行號。
RANK。返回行在結果集中的等級。在通常情況下,RANK 值與有序數據集上的 ROW_NUMBER 值相同。但對于那些彼此之間有關聯的行來說,則是所有具有相同排序值的行都有相同的等級。而下一個等級則又與 ROW_NUMBER 值相同。換句話說,如果在第一個位置存在雙向關聯,那么行 1 和行 2 的 RANK 就都為 1,而行 3 的 RANK 則為 3。不存在 RANK 為 2 的行。
DENSE_RANK。返回行在結果集中的等級。DENSE_RANK 函數與 RANK 相似,只是去除了 RANK 函數所留下的空隙。在上面的示例中,行 1 和行 2 的 RANK 為 1,而行 3 的 RANK 則為 2。
NTILE。將有序集分成指定數量、大小近似相等的組。
在 SQL Server 2005 Beta 2 中還不能使用這些函數。
PIVOT 和 UNPIVOT 操作符
PIVOT 操作符可以按查詢中的中斷值旋轉結果集,從而使您可以生成交叉數據報告。例如,如果表中在兩個不同的行中包含 "Actuals" 和 "Budgets" 數據,則使用 PIVOT 操作符將可以生成帶有 [Actuals] 和 [Budgets] 列的交叉數據報告。
與之相似,UNPIVOT 操作符可以將一行拆分為若干行。在此示例中,帶有 [Actuals] 和 [Budgets] 列的行集可以被轉換為包含這些值的多個行。
在以前的 SQL Server 版本中,用戶能夠編寫復雜的 Transact-SQL SELECT 語句來旋轉數據。PIVOT 和 UNPIVOT 操作符則為數據旋轉提供了更為簡單的機制。
遞歸查詢
在許多方案中,“遞歸查詢”都是非常有用的。SQL Server 2005 中的新增功能令遞歸查詢成為可能,雖然此項功能還不是十分簡單易用。
遞歸查詢是針對自聯接表的查詢。自聯接表的兩個常見示例有保存員工及其經理信息的數據表,和保存材料清單的數據表。在 AdventureWorks 數據庫的 Employee 表中對自聯接數據表進行了說明。
查詢自聯接表的直接關系通常十分簡單,如查詢直接向經理報告的員工數量。但是,如果要回答“經理的組織中有多少名員工?”這樣一個問題卻十分困難。
SQL Server 2005 中的關系數據庫功能解決了這一問題,這一功能被稱為“遞歸通用表表達式”。“附錄”中包含一個遞歸查詢的示例,該示例回答了以上定義的問題。聯機叢書的 "WITH 返回頁首 提取、轉換和加載 (ETL) 數據轉換服務 (DTS) 對于 SQL Server 2005 而言,是一項全新的技術。DTS 是 SQL Server 2000 中很受歡迎的一項功能,但 DTS 2005 已被重新設計成企業 ETL 平臺。DTS 為構建企業級 ETL 應用程序提供了大量必需的功能,以及非常高的擴展性能。DTS 是完全可編程的、嵌入式的、可擴展的——所有這些特性都使它成為理想的 ETL 平臺。 下表總結了 DTS 2005 的這些功能。有關 ETL 系統開發 DTS 適用性更加完整的討論,請參閱 SQL Server 聯機叢書。 包開發 SQL Server 2005 的 DTS 功能 企業 ETL 開發 ETL 平臺 使用 Business Intelligence Development Studio 圖形用戶界面設計數據管理應用程序的 DTS 包。DTS 包的設計、開發和調試均在 Business Intelligence Development Studio 中完成,您只需從工具欄拖動任務、為其設置屬性并將任務與優先約束相連接便可完成這一切。 • 使用 SQL Server Management Studio 向導開發執行常規任務(如“復制數據庫”)的簡單 DTS 包。 • 軟件供應商將在其產品中嵌入 DTS 功能,構建按需生成自定義包的向導。 • 將控制流從數據流中分離出來。大多數的 DTS 包都包含多個控制流任務,以及循環任務或順序任務,這些任務都被放置在控制流窗格中。控制任務(管道任務)是包的工作動力,它擁有自己的設計表面,可用于布置數據流。控制流和數據流的分離使得程序更加容易讀取。 • 包變量是經過定義且可見的。變量是受限制的,如受包、循環或任務的限制。 • 復雜的 ETLM 系統可以通過構建包網絡實現,其中包含一個調用其他包的包。子包可以很好地重新使用邏輯、變量和上下文。DTS 2005 與 DTS 2000 相比,對嵌套數據包的需求有所減少。 • 包配置框架是可擴展的系統,可用于自定義包在不同環境中的運行方式。 • DTS 程序以 XML 格式存儲在文件系統或 SQL Server 中。DTS XML 文件可受源代碼管理。 • • DTS 2000 包遷移向導可以幫助您將包遷移至 DTS 2005,它還可以在出現升級問題的地方提供警告。 • DTS 2000 運行時包含在 SQL Server 2005 中,在不升級 DTS 2000 包的情況下,仍可運行。 • 包的操作和結果會以多種形式被記錄下來,分發給廣泛的提供程序。 • • 事件處理程序邏輯只需定義一次,便可多次使用。 • • 與 WMI 的集成表明包可以對外部事件(例如文件復制的完成)作出響應,或拋出可供其他進程使用的 WMI 事件。 • • 包可重啟性與事務控制和故障檢查點一起,可以幫助管理員管理復雜的包,移動大量數據。 • 控制流 SQL Server 2005 的 DTS 功能 企業 ETL 開發 ETL 平臺 優先約束:您可以設計一個包,以在任務成功、失敗或完成時將控制傳遞給這些不同的任務。 • 循環任務包括 For、ForEach 和 Sequence 循環。包開發人員可以在數據的所有(或一組)表上、目錄中的文件上或是 Analysis Services 多維數據集分區上輕松執行一組操作。 • Analysis Services 集成是無縫的,它與自動執行 Analysis Services DDL 的控制任務一起處理 Analysis Services 對象,或執行數據挖掘查詢。正如下面所討論的,DTS 管理還集成了 Analysis Services。 • VB.NET 腳本可與“腳本任務”一起使用。被稱為“ActiveX 腳本任務”的第二個腳本任務主要用于向后兼容 DTS 2000。 • 通信任務包括: • 消息隊列 • 發送郵件 • 其他控制流任務包括: • 大容量插入 • 執行包 • 執行進程 • 執行 SQL • 文件系統 • FTP • 其他任務可以使用 DTS 對象模型輕松開發。 • 數據流 SQL Server 2005 的 DTS 功能 企業 ETL 開發 ETL 平臺 在數據流管道中存在多個源、轉換和目的。只有在轉換完成時,數據才能被讀取、合并和操作,然后才能寫入。中轉表所需的多次寫入被削弱或消除;轉換性能得到極大提高。 • “DTS 管道”任務使用來自多個異類數據源和本機的數據。可擴展的“數據源”體系結構支持來自平面文件、OLEDB 源(包括 DB2 和 Oracle)和原始文件的數據。其他源,包括使用特殊結構化數據的源都在計劃之內。 • • 其他數據源可以由 Microsoft 及其合作伙伴輕松開發。 • 來自多個源的數據可以與聯接、查找和聯合操作符相聯接。這些操作都在內存中執行,不需要對數據庫或文件執行寫入操作。 • 數據流可以使用條件分離和多播轉換。類似編譯器的 DTS 引擎確定了可以平行操作哪些數據流。 • 大量基于行的數據轉換都是由字符映射、復制映射、數據轉換和派生列轉換所提供的。這些操作符更像是向導,而非轉換,它們提供了用戶所需的大部分數據轉換。 • 有些數據轉換任務需要對多個行中的數據進行比較。排序和聚合轉換可以在數據流中以極高的性能執行這些操作,其性能遠非數據庫聚合可及。 • 有些數據轉換任務需要復雜邏輯,例如模糊匹配、模糊分組、時間維度生成以及旋轉或反旋轉。其他常見任務(例如維度鍵管理)則需要多個步驟。特殊技術和向導使這些復雜技術可供所有用戶使用。 • 轉換后的數據可以寫入異類目標,其中包括 SQL Server 表、OLEDB 數據庫表、平面文件以及原始文件。 • • 轉換后的數據可以與 Microsoft BI 解決方案的其他組件集成,其中包括 Analysis Services 數據庫和數據挖掘模型。 • 由轉換步驟所導致的錯誤流可以以多種方式進行管理: • 進程內轉換可以“修復”數據并重新提交主要流。 • 錯誤流可以被記錄到表或文件中,以備脫機研究和重新提交。 • • 其他轉換和目的可以由 Microsoft 及其合作伙伴輕松開發。 • 開發和調試 SQL Server 2005 的 DTS 功能 企業 ETL 開發 ETL 平臺 包開發商可以在每個控制流任務中定義控制流斷點。在調試過程中,斷點可以定義在某些任務執行點之前、之后,或定義在這些任務執行點。 • 包開發商可以為數據流中的每個轉換附加一個數據查看器。在調試過程中,數據查看器會顯示在該點的轉換后數據流內容。 • Business Intelligence Development Studio 寄宿在 Visual Studio 中。腳本及其他編程任務可以充分利用該企業開發環境的優點。 • • 包開發可以幫助用戶將所有包組件(包括自定義腳本和可執行程序)捆綁在一起,以用于發行測試、生產或其他客戶系統。 • 可供 DTS 2000 開發人員使用的 DTS 2005 DTS 2000 用戶已經開發出了一套執行復雜操作的技巧。這些技巧,尤其是編寫自修改包,在 DTS 2005 中不再有用武之地。在 DTS 2005 中要使用變量和配置基礎結構來編寫動態包、不要再試圖編寫自修改包。 配置良好的變量和配置基礎結構還可以減少創建復雜子包系統的需求。如果設計完善,單一包便可滿足多種需求;例如,單一包可以在多種不同配置中重復使用,以用來在維度數據倉庫中加載許多維度表。在 DTS 2000 中,一個復雜的 DTS 包網絡可能包括 50-100 個包;而在 DTS 2005 中,一個復雜的網絡可能只包含 10 個包。 Analysis Services SQL Server 2000 Analysis Services 由兩個主要的互補功能組成:聯機分析處理 (OLAP) 和數據挖掘。這兩個組件在 Analysis Services 2005 中仍然存在,并且是分析應用程序的基石。 Analysis Services 2005 OLAP 中的功能改進主要可以歸納為兩類改進: • 啟用了一些新的分析應用程序,而達到此目的做法便是添加全新的功能,或是使復雜功能的構建變得更加簡單。 • 增強了分析應用程序的企業適應性 新增功能或改進功能 設計和部署 管理和操作 統一維度模型合并了關系數據模型和 OLAP 數據模型的最佳特征。后文將對“統一維度”模型進行更為詳細的討論。 • 主動緩存使您可以用極低的成本操作低延遲時間的應用程序。后文將對主動緩存進行更為詳細的討論。 • 關鍵績效指標 (KPI) 框架為定義公司度量提供了一個基于服務器的簡單機制。KPI 由值、目標、當前狀態和趨勢表達式組成,并通過諸如量尺和停車燈之類的簡單圖形顯示出來。 • 翻譯為用戶提供了一個簡單的集中管理機制,使他們可以用自己喜歡的語言來存儲和顯示分析數據。一個分析數據庫可以用多種語言來顯示。 • MDX 腳本是用于定義“計算成員”、“命名集”和“單元計算”的新機制。 • “MDX 腳本”的語法得到了簡化和改進。“MDX 腳本”可以分步調試。 • “MDX 腳本”計算可以緩存和保留,這可以提供優良的查詢性能,即使面對復雜計算也沒有問題。 • “MDX 腳本”計算可以維護實時的動態計算行為。 后文將對“MDX 腳本”進行更為詳細的討論。 • • Analysis Services 存儲過程允許您使用公共語言運行時編程語言(如 C++、VB 或 C)創建外部例程。存儲過程擴展了 Analysis Services 2000 用戶定義函數 (UDF) 所提供的功能。后文將對 Analysis Services 存儲過程進行更為詳細的討論。 • 數據寫回增強使其性能較以前有了十倍的增長。分析應用程序可以將數據寫回到聚合單元中,然后再有選擇地執行聚合數據到其底層葉數據的分配工作。 • • 內置的業務規則、工具和向導使艱難的設計變得簡單: 半累積度量值 • 時間智能 • 帳戶智能 • 財務聚合 • 貨幣轉換 • 時間維度生成 • 數據源視圖提供了一種機制,既可以簡化,又可以擴展分析應用程序底層的關系數據庫。后文將對“數據源視圖”進行更為詳細的討論。 • Analysis Services 的數據定義語言是 XML。Analysis Services 元數據知識庫已經沒有了,取而代之的是由 Analysis Services 服務器所存儲和管理的 XML 文件。 • • Web 服務:XML for Analysis (XML/A) 是基于標準的本機協議,其作用是與 Analysis Services 服務器進行通信。啟用了新型的應用程序,而且開發這些應用程序還十分簡單,這些應用程序將分析與操作實時集成在一起。 • 將 XML/A 作為本機協議,便可以把 Analysis Services 客戶端配置為具有零覆蓋范圍,且每臺服務器都自動成為一種 web 服務。 • 具有小覆蓋范圍的 Win32 層可用于向后兼容與 Analysis Services 2000 一起使用的,用于 OLAP、ADOMD 和 ADOMD.Net 的 OLE DB 工具。許多客戶和開發人員將繼續使用 ADOMD.Net 對象模型來構建 Analysis Services 自定義應用程序。 • • 計算被集中在服務器端。與 Analysis Services 2000 不同,Analysis Services 2005 在服務器端執行所有計算。這樣做