欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

SQL Server 2005 中的商務(wù)智能和數(shù)據(jù)倉(cāng)庫(kù)

系統(tǒng) 1903 0
出處:http://www.microsoft.com/china/technet/prodtechnol/sql/2005/evaluate/dwsqlsy.mspx

摘要: 本文概述了 SQL Server 2005 Beta 2 中“商務(wù)智能”平臺(tái)的增強(qiáng)功能。本文并非實(shí)施指南,而是為讀者提供了關(guān)于“商務(wù)智能”平臺(tái)增強(qiáng)功能的信息。

本頁(yè)內(nèi)容
簡(jiǎn)介 簡(jiǎn)介
SQL Server2005 Beta 2 入門 SQL Server2005 Beta 2 入門
關(guān)系型數(shù)據(jù)倉(cāng)庫(kù) 關(guān)系型數(shù)據(jù)倉(cāng)庫(kù)
提取、轉(zhuǎn)換和加載 (ETL) 提取、轉(zhuǎn)換和加載 (ETL)
Analysis Services Analysis Services
Reporting Services Reporting Services
總結(jié) 總結(jié)
附錄 A:代碼示例 附錄 A:代碼示例

簡(jiǎn)介

Microsoft SQL Server 2005 是一個(gè)完整的商務(wù)智能 (BI) 平臺(tái),其中為用戶提供了可用于構(gòu)建典型和創(chuàng)新的分析應(yīng)用程序所需的各種特性、工具和功能。本文簡(jiǎn)要介紹了您在構(gòu)建分析應(yīng)用程序時(shí)將要用到的一些工具,并著重介紹了一些新增功能,這些新增功能使復(fù)雜 BI 系統(tǒng)的構(gòu)建和管理比以往更加輕松。

下表概述了商務(wù)智能系統(tǒng)的組件,以及與之相應(yīng)的 Microsoft SQL Server 2000 和 SQL Server 2005 組件。

組件 SQL Server 2000 SQL Server 2005

提取、轉(zhuǎn)換和加載

數(shù)據(jù)轉(zhuǎn)換服務(wù) (DTS)

數(shù)據(jù)轉(zhuǎn)換服務(wù) (DTS)

關(guān)系數(shù)據(jù)倉(cāng)庫(kù)

SQL Server 2000 關(guān)系數(shù)據(jù)庫(kù)

SQL Server 2005 關(guān)系數(shù)據(jù)庫(kù)

多維數(shù)據(jù)庫(kù)

SQL Server 2000 Analysis Services

SQL Server 2005 Analysis Services

數(shù)據(jù)挖掘

SQL Server 2000 Analysis Services

SQL Server 2005 Analysis Services

托管報(bào)告

SQL Server 2000 Reporting Services

SQL Server 2005 Reporting Services

特殊查詢和分析

Microsoft Office 產(chǎn)品(Excel、Office Web Components、Data Analyzer、Sharepoint Portal)

Microsoft Office 產(chǎn)品(Excel、Office Web Components、Data Analyzer、Sharepoint Portal)

數(shù)據(jù)庫(kù)開發(fā)工具

SQL Server 2000 企業(yè)管理器、分析管理器、查詢分析器,以及各種其他工具

SQL Server 2005 Business Intelligence Development Studio (新增?。?

數(shù)據(jù)庫(kù)管理工具

企業(yè)管理器、分析管理器

SQL Server 2005 SQL Server Management Studio (新增!)

SQL Server 2005 新增了兩個(gè)組件:SQL Server Management Studio 和 SQL Server Business Intelligence Development Studio。其他主要的 BI 組件——DTS、Analysis Services OLAP、Analysis Services Data Mining 和 Reporting Services——在 SQL Server 2005 中得到了改進(jìn),與以前有很大的不同。SQL Server 2005 關(guān)系數(shù)據(jù)庫(kù)包含一些重要的新增功能。雖然 Microsoft Office 查詢和門戶工具并沒有包含在 SQL Server 中,但當(dāng)前的發(fā)行版本力爭(zhēng)在 SQL Server 2005 之前實(shí)現(xiàn)這一功能。Office 工具的 BI 功能將在 Office 產(chǎn)品發(fā)行周期內(nèi)將得到逐步實(shí)現(xiàn)。

SQL Server 2005 Business Intelligence 工具集提供了一種端到端的 BI 應(yīng)用程序集成:

?

設(shè)計(jì): Business Intelligence Development Studio 是第一款專門為商務(wù)智能系統(tǒng)開發(fā)人員設(shè)計(jì)的集成開發(fā)環(huán)境。Business Intelligence Development Studio 構(gòu)建于 Visual Studio 2005 技術(shù)之上,它為 BI 系統(tǒng)開發(fā)人員提供了一個(gè)豐富、完整的專業(yè)開發(fā)平臺(tái)。調(diào)試、源代碼控制以及腳本和代碼的開發(fā)均可用于所有的 BI 應(yīng)用程序組件。

?

合成: “數(shù)據(jù)轉(zhuǎn)換服務(wù)”已被重新編寫,現(xiàn)在的 DTS 可以高速執(zhí)行超大數(shù)據(jù)量的復(fù)雜數(shù)據(jù)集成、轉(zhuǎn)換和合成。Business Intelligence Development Studio 使程序包的構(gòu)建和調(diào)試變得更加生動(dòng)有趣。DTS、Analysis Services 和 Reporting Services 共同提供了一個(gè)源自異類源的無(wú)縫數(shù)據(jù)視圖。

?

存儲(chǔ): 在 SQL Server 2005 中,關(guān)系數(shù)據(jù)庫(kù)和多維數(shù)據(jù)庫(kù)之間的界限變得更加模糊。您可以將數(shù)據(jù)庫(kù)存儲(chǔ)在關(guān)系數(shù)據(jù)庫(kù)、多維數(shù)據(jù)庫(kù)中,或使用新增的“主動(dòng)緩存”功能,充分利用兩種數(shù)據(jù)庫(kù)各自的優(yōu)點(diǎn)。

?

分析: 一直以來(lái),Microsoft 的數(shù)據(jù)挖掘都十分簡(jiǎn)單易用。現(xiàn)在,結(jié)合了其他的重要新算法(包括關(guān)聯(lián)規(guī)則、時(shí)間序列、回歸樹、序列群集、神經(jīng)網(wǎng)絡(luò)和貝葉斯算法),使得這一功能更加完美。而在 Analysis Services 多維數(shù)據(jù)集中也添加了一些重要的新增功能:關(guān)鍵績(jī)效指標(biāo)框架、MDX 腳本,以及其他的內(nèi)置高級(jí)業(yè)務(wù)分析方法。Reporting Services 報(bào)告提交和管理框架使得復(fù)雜的分析方法更易于向最廣泛的潛在受眾分發(fā)。

?

交付: Reporting Services 將 Microsoft Business Intelligence 平臺(tái)的用戶群體延伸至那些需要使用分析功能的商務(wù)用戶。Reporting Services 是一種企業(yè)托管報(bào)告環(huán)境,它通過 web 服務(wù)進(jìn)行嵌入和管理。您可以用大量的交互和打印選項(xiàng),以各種不同的格式個(gè)性化設(shè)置和提交報(bào)告。通過將報(bào)告以數(shù)據(jù)源的形式分發(fā)至下游商務(wù)智能,復(fù)雜分析可以覆蓋更廣泛的受眾。Microsoft 及其合作伙伴的特殊查詢和分析工具將繼續(xù)承擔(dān)在 Analysis Services 和關(guān)系數(shù)據(jù)庫(kù)中訪問數(shù)據(jù)的常用工具角色。

?

管理: SQL Server Management Studio 集成了對(duì) SQL Server 2005 所有組件的管理。Business Intelligence 從業(yè)者都將得益于 Microsoft 服務(wù)器“能力”擴(kuò)展這一用戶盼望已久的功能增強(qiáng),即從關(guān)系引擎(伸縮性、可靠性、可用性、可編程性,等等)擴(kuò)展為全套的 BI 平臺(tái)組件。

SQL Server 2005 Business Intelligence 組件的主要目標(biāo)是支持在各種規(guī)模的企業(yè)中開發(fā)和使用商務(wù)智能,并使其能夠供所有員工使用,不僅包括管理層和分析師,還包括操作人員和外部委托人。就此目標(biāo)而言,SQL Server 2005 具有完整、集成、易用的特點(diǎn),它以 web 服務(wù)的形式發(fā)布數(shù)據(jù),而且僅通過日常硬件便可提供極佳的性能,另外它還包含許多新增功能,您可以使用這些新增功能開發(fā)創(chuàng)新的分析應(yīng)用程序。

SQL Server2005 Beta 2 入門

在安裝 SQL Server 2005 時(shí)第一點(diǎn)要注意的就是它的集成安裝體驗(yàn)。您不再需要為某些功能(如 Analysis Services)而分別運(yùn)行安裝程序。如果某個(gè)功能(如 Reporting Services)不可安裝,則說(shuō)明您的計(jì)算機(jī)不滿足該功能的安裝要求。您可以查看說(shuō)明文件,以獲得有關(guān)功能必要條件的完整討論。在大多數(shù)配置得當(dāng)?shù)臋C(jī)器上,安裝過程中應(yīng)接受所有默認(rèn)設(shè)置,安裝所有的主要功能:

?

SQL Server 關(guān)系數(shù)據(jù)庫(kù)引擎

?

DTS

?

Analysis Services

?

Reporting Services

?

SQL Server Management Studio(數(shù)據(jù)庫(kù)管理工具集)

?

Business Intelligence Development Studio(BI 應(yīng)用程序開發(fā)工具集)

Reporting Services 要求在機(jī)器上安裝并妥善配置 IIS。由于 Reporting Services 是 2005 Business Intelligence 功能組的一個(gè)重要組成部分,我們強(qiáng)烈建議您花費(fèi)一定的時(shí)間,執(zhí)行這些配置和安裝步驟。

熟悉 Analysis Services 的客戶可能會(huì)因缺少 Analysis Services 元數(shù)據(jù)倉(cāng)庫(kù)而感到迷惑。在 SQL Server 2000 中,Analysis Services 倉(cāng)庫(kù)被作為 Microsoft Access 數(shù)據(jù)庫(kù)發(fā)行。Analysis Services 2005 不包含元數(shù)據(jù)倉(cāng)庫(kù)。相反,Analysis Services 數(shù)據(jù)庫(kù)元數(shù)據(jù)信息被存儲(chǔ)為 XML 文件格式,由 Analysis Services 進(jìn)行管理。如果需要,還可以將這些 XML 文件放置在源代碼控制之下。

我們建議您使用 Business Intelligence Development Studio 進(jìn)行開發(fā),同時(shí)使用 SQL Server Management Studio 來(lái)操作和維護(hù) BI 數(shù)據(jù)庫(kù)對(duì)象。雖然您能夠在 SQL Server Management Studio 中設(shè)置 DTS 包以及 Analysis Services 多維數(shù)據(jù)集和數(shù)據(jù)挖掘模型,但 Business Intelligence Development Studio 卻為設(shè)計(jì)和調(diào)試 BI 應(yīng)用程序提供了更好的體驗(yàn)。

對(duì)于 Beta 2 而言,建議您從掌握新的應(yīng)用程序入手,因?yàn)榕c升級(jí)現(xiàn)有 DTS 包或 Analysis Services 數(shù)據(jù)庫(kù)相比,這樣可以學(xué)到更多東西。如果您已有一個(gè)可用的包或數(shù)據(jù)庫(kù),您會(huì)發(fā)現(xiàn),“重新創(chuàng)建”現(xiàn)有的包或數(shù)據(jù)會(huì)十分有用。在您熟悉了這些新增工具、功能和概念之后,便可試著升級(jí)現(xiàn)有對(duì)象。

許多客戶都借助 SQL Server 工具,使用熟悉的來(lái)自一個(gè)或多個(gè)源系統(tǒng)的商務(wù)智能結(jié)構(gòu)來(lái)開發(fā)新的系統(tǒng),使用 DTS 填充維度關(guān)系型數(shù)據(jù)倉(cāng)庫(kù),然后再用數(shù)據(jù)倉(cāng)庫(kù)來(lái)填充 Analysis Services 數(shù)據(jù)庫(kù)。但是,SQL Server 2005 提供了許多選項(xiàng),通過消除或淡化不同的組件使其背離了這種一般化設(shè)計(jì)。

關(guān)系型數(shù)據(jù)倉(cāng)庫(kù)

SQL Server 2005 關(guān)系數(shù)據(jù)庫(kù)引擎包含一些對(duì)數(shù)據(jù)倉(cāng)庫(kù)樣式應(yīng)用程序設(shè)計(jì)和維護(hù)大有幫助的功能。這些功能包括:

?

對(duì)于超大型的表而言,表分區(qū)可快速數(shù)據(jù)的加載速度,并簡(jiǎn)化維護(hù)過程。

?

輕松創(chuàng)建報(bào)告服務(wù)器

?

Transact-SQL 方面的改進(jìn)包括新增的數(shù)據(jù)類型和新增的分析功能

?

聯(lián)機(jī)索引操作

?

細(xì)化備份/還原操作

?

快速初始化文件

報(bào)告服務(wù)器

要想將關(guān)系操作報(bào)告從事務(wù)處理數(shù)據(jù)庫(kù)中分離出來(lái),經(jīng)常采用的一項(xiàng)技術(shù)便是維護(hù)一臺(tái)報(bào)告服務(wù)器。報(bào)告服務(wù)器對(duì)事務(wù)處理數(shù)據(jù)庫(kù)映像的維護(hù)一般都有一定的時(shí)間延遲,通常截止到前一天。報(bào)告服務(wù)器多用于報(bào)告功能和數(shù)據(jù)倉(cāng)庫(kù)提取。

Microsoft SQL Server 2005 新增了兩項(xiàng)功能,使報(bào)告服務(wù)器的創(chuàng)建和維護(hù)過程變得更加簡(jiǎn)單。SQL Server 報(bào)告服務(wù)器的延遲時(shí)間與以前相比大大縮短。同時(shí),報(bào)告服務(wù)器被設(shè)計(jì)為充當(dāng)事務(wù)處理系統(tǒng)的備選系統(tǒng)。

要?jiǎng)?chuàng)建報(bào)告服務(wù)器,先要?jiǎng)?chuàng)建一個(gè)數(shù)據(jù)庫(kù)鏡像,這是 SQL Server 2005 的新增功能,它為系統(tǒng)的高可用性提供了一個(gè)緊急備用系統(tǒng)。更多信息,請(qǐng)閱讀聯(lián)機(jī)叢書的“數(shù)據(jù)庫(kù)鏡像概念”主題。數(shù)據(jù)庫(kù)鏡像不能夠直接查詢,這時(shí)第二個(gè)新增功能就能派上用場(chǎng)了。

在鏡像上創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)視圖。數(shù)據(jù)庫(kù)視圖是數(shù)據(jù)庫(kù)在某個(gè)時(shí)點(diǎn)的只讀副本。數(shù)據(jù)庫(kù)視圖并非數(shù)據(jù)庫(kù)的完整副本;極為節(jié)省空間。多個(gè)數(shù)據(jù)庫(kù)視圖還是可以同時(shí)共存,雖然維護(hù)數(shù)據(jù)庫(kù)視圖會(huì)對(duì)數(shù)據(jù)庫(kù)視圖所基于的事務(wù)處理數(shù)據(jù)庫(kù)產(chǎn)生一定的影響。更多信息,請(qǐng)閱讀聯(lián)機(jī)叢書的“了解數(shù)據(jù)庫(kù)視圖”主題。

通過在數(shù)據(jù)庫(kù)鏡像上創(chuàng)建數(shù)據(jù)庫(kù)視圖,您可輕松為系統(tǒng)的高可用性創(chuàng)建備用服務(wù)器,此服務(wù)器還可用作報(bào)告服務(wù)器,起著雙重作用。

表分區(qū)

分區(qū)表和分區(qū)索引將數(shù)據(jù)分割到多個(gè)水平單元中,以便于將行組映射到單獨(dú)的分區(qū)中。而對(duì)數(shù)據(jù)執(zhí)行操作(如查詢)時(shí),又可以將整個(gè)表或索引作為一個(gè)整體來(lái)執(zhí)行。

分區(qū)可以:

?

改善數(shù)據(jù)表和索引的可管理性。

?

改善多 CPU 機(jī)器上的查詢性能。


在關(guān)系型數(shù)據(jù)倉(cāng)庫(kù)中,事實(shí)數(shù)據(jù)表比較適合應(yīng)用表分區(qū),而按日期范圍分區(qū)又是最常見的分區(qū)策略。

正如聯(lián)機(jī)從書的“ 創(chuàng)建分區(qū)表和索引 ”主題中所描述的,定義分區(qū)表可分為三個(gè)步驟:

1.

創(chuàng)建一個(gè)分區(qū)函數(shù),指定使用此函數(shù)的表如何分區(qū)。

2.

創(chuàng)建一個(gè)分區(qū)方案,指定應(yīng)用此分區(qū)函數(shù)的分區(qū)在文件組上的位置。

3.

使用此分區(qū)方案創(chuàng)建一個(gè)表或索引。

多個(gè)表可以使用同一個(gè)分區(qū)方案。

本文討論了事實(shí)數(shù)據(jù)表的“范圍”分區(qū),但其目的并非是針對(duì)表分區(qū)的完整討論或教程。有興趣的讀者請(qǐng)參閱 SQL Server 聯(lián)機(jī)叢書。

最常用的分區(qū)方案是按日期范圍(如年、季、月或甚至天)對(duì)事實(shí)數(shù)據(jù)表進(jìn)行分區(qū)。在大多數(shù)情況下,對(duì)大型事實(shí)數(shù)據(jù)表進(jìn)行日期分區(qū)可以提供良好的可管理性收益。為了改善查詢性能,應(yīng)盡量使用相同的分區(qū)方案對(duì)時(shí)間維度表進(jìn)行分區(qū)。

?

分區(qū)表和未分區(qū)表的行為方式相同。

?

針對(duì)表的查詢能夠得到正確解析。

?

針對(duì)表的直接插入、更新和刪除會(huì)被自動(dòng)解析到適當(dāng)?shù)姆謪^(qū)。

使用數(shù)據(jù)表分區(qū)快速加載數(shù)據(jù)

許多數(shù)據(jù)倉(cāng)庫(kù)應(yīng)用程序都力求在越來(lái)越小的加載窗口中加載越來(lái)越多的數(shù)據(jù)量。典型的流程是這樣的,先從幾個(gè)源系統(tǒng)中提取數(shù)據(jù)開始,接下來(lái)便是在這些系統(tǒng)間清理、轉(zhuǎn)換、合成和合理化數(shù)據(jù)。數(shù)據(jù)管理應(yīng)用程序被限制為在加載窗口中完成整個(gè)提取、轉(zhuǎn)換和加載流程。通常,系統(tǒng)的業(yè)務(wù)用戶都強(qiáng)烈要求將數(shù)據(jù)倉(cāng)庫(kù)查詢時(shí)的不可用時(shí)間降至最低。在設(shè)計(jì)時(shí),數(shù)據(jù)管理應(yīng)用程序的“寫入”步驟(即將新數(shù)據(jù)插入到現(xiàn)有數(shù)據(jù)倉(cāng)庫(kù)的步驟)必須在短時(shí)間內(nèi)完成,且要最小化對(duì)用戶造成的影響。

為了非??焖俚丶虞d數(shù)據(jù),數(shù)據(jù)庫(kù)恢復(fù)模型必須為“批量記錄”恢復(fù)模式或“簡(jiǎn)單”恢復(fù)模式,而數(shù)據(jù)表必須為空,或是包含數(shù)據(jù)但不包含索引。如果滿足這些條件,不作記錄的加載便成為可能。在 SQL Server 2000 中,分區(qū)表出現(xiàn)以前,這些條件通常只在初始?xì)v史數(shù)據(jù)倉(cāng)庫(kù)加載中才能滿足。一些具有大型數(shù)據(jù)倉(cāng)庫(kù)的客戶已通過在分散的物理表上搭建 UNION ALL 視圖,構(gòu)建了一個(gè)準(zhǔn)分區(qū)結(jié)構(gòu);這些數(shù)據(jù)表都使用不記錄技術(shù)填充每個(gè)加載周期。這一方法并不盡如人意,而 SQL Server 2005 分區(qū)表則提供了更為優(yōu)秀的功能。

在 SQL Server 2005 中,您不能直接在分區(qū)中執(zhí)行不記錄加載。但是,卻可以將數(shù)據(jù)加載到將調(diào)用偽分區(qū)的單獨(dú)表中。在特定條件下,您可以用執(zhí)行速度極快的元數(shù)據(jù)操作將偽分區(qū)切換到分區(qū)表中。此技術(shù)可滿足我們的兩個(gè)要求:

?

最小化整體加載時(shí)間:在不作記錄的情況下執(zhí)行偽分區(qū)加載,以及

?

最小化對(duì)最終用戶的影響,并確保數(shù)據(jù)倉(cāng)庫(kù)的完整性:偽分區(qū)可以在用戶查詢數(shù)據(jù)倉(cāng)庫(kù)時(shí)被加載。在執(zhí)行分區(qū)切換之前,數(shù)據(jù)管理應(yīng)用程序會(huì)等到所有事實(shí)數(shù)據(jù)表全部加載完畢為止。分區(qū)切換的執(zhí)行速度非???,反應(yīng)時(shí)間通常不到一秒。

此外,偽分區(qū)還可作為單獨(dú)的表進(jìn)行備份,從而改善系統(tǒng)的可管理性。

使用表分區(qū)快速刪除數(shù)據(jù)

許多數(shù)據(jù)倉(cāng)庫(kù)在數(shù)據(jù)倉(cāng)庫(kù)中保留了一個(gè)詳細(xì)活動(dòng)數(shù)據(jù)的滑動(dòng)窗口。例如,事實(shí)數(shù)據(jù)表可能包含三年、五年或十年的數(shù)據(jù)。每到一個(gè)時(shí)間周期,便從數(shù)據(jù)表中刪除最舊的數(shù)據(jù)。持續(xù)刪除數(shù)據(jù)的主要原因在于要提高查詢性能并最小化存儲(chǔ)成本。

SQL Server 2005 分區(qū)使大型分區(qū)事實(shí)數(shù)據(jù)表中舊數(shù)據(jù)的刪除倍加輕松。如上所述,簡(jiǎn)單地創(chuàng)建一個(gè)空白偽分區(qū),然后將其切換到分區(qū)表中。分區(qū)表在其曾植入分區(qū)的地方有一個(gè)空白分區(qū);偽分區(qū)在其曾為空白的地方包含數(shù)據(jù)。用戶可以根據(jù)需要對(duì)偽分區(qū)進(jìn)行適當(dāng)?shù)膫浞荨⒔財(cái)嗷騽h除。

或者,您還可以選擇重新定義分區(qū)函數(shù),將所有空白分區(qū)合并到一個(gè)分區(qū)中。

Transact-SQL 方面的改進(jìn)

新的數(shù)據(jù)類型

SQL Server 2005 中有一些很重要的新類型,這些類型對(duì)數(shù)據(jù)倉(cāng)庫(kù)大有裨益:

?

Varchar(max) 、nvarchar(max) 和 varbinary(max) 支持 2GB 的數(shù)據(jù),對(duì)于 text、ntext 和 image 數(shù)據(jù)類型非常有用。這些擴(kuò)展的字符類型可能對(duì)在數(shù)據(jù)倉(cāng)庫(kù)中保存擴(kuò)展的元數(shù)據(jù)和其他說(shuō)明性信息非常有用。

新的分析功能

許多新分析功能都提供了 Transact-SQL 中的基本分析功能。這些功能在那些允許用戶查詢關(guān)系數(shù)據(jù)庫(kù),而不是通過 Analysis Services 排他查詢數(shù)據(jù)的數(shù)據(jù)倉(cāng)庫(kù)中非常有用。另外,在數(shù)據(jù)中轉(zhuǎn)過程中,這些復(fù)雜的計(jì)算常被用來(lái)開發(fā)有價(jià)值的數(shù)據(jù)屬性。

ROW_NUMBER 。返回結(jié)果集的連續(xù)行號(hào)。

RANK 。返回行在結(jié)果集中的等級(jí)。在通常情況下,RANK 值與有序數(shù)據(jù)集上的 ROW_NUMBER 值相同。但對(duì)于那些彼此之間有關(guān)聯(lián)的行來(lái)說(shuō),則是所有具有相同排序值的行都有相同的等級(jí)。而下一個(gè)等級(jí)則又與 ROW_NUMBER 值相同。換句話說(shuō),如果在第 個(gè)位置存在雙向關(guān)聯(lián),那么行 1 和行 2 的 RANK 就都為 1,而行 3 的 RANK 則為 3。不存在 RANK 為 2 的行。

DENSE_RANK 。返回行在結(jié)果集中的等級(jí)。DENSE_RANK 函數(shù)與 RANK 相似,只是去除了 RANK 函數(shù)所留下的空隙。在上面的示例中,行 1 和行 2 的 RANK 為 1,而行 3 的 RANK 則為 2。

NTILE 。將有序集分成指定數(shù)量、大小近似相等的組。

在 SQL Server 2005 Beta 2 中還不能使用這些函數(shù)。

PIVOT 和 UNPIVOT 操作符

PIVOT 操作符可以按查詢中的中斷值旋轉(zhuǎn)結(jié)果集,從而使您可以生成交叉數(shù)據(jù)報(bào)告。例如,如果表中在兩個(gè)不同的行中包含 "Actuals" 和 "Budgets" 數(shù)據(jù),則使用 PIVOT 操作符將可以生成帶有 [Actuals] 和 [Budgets] 列的交叉數(shù)據(jù)報(bào)告。

與之相似,UNPIVOT 操作符可以將一行拆分為若干行。在此示例中,帶有 [Actuals] 和 [Budgets] 列的行集可以被轉(zhuǎn)換為包含這些值的多個(gè)行。

在以前的 SQL Server 版本中,用戶能夠編寫復(fù)雜的 Transact-SQL SELECT 語(yǔ)句來(lái)旋轉(zhuǎn)數(shù)據(jù)。PIVOT 和 UNPIVOT 操作符則為數(shù)據(jù)旋轉(zhuǎn)提供了更為簡(jiǎn)單的機(jī)制。

遞歸查詢

在許多方案中,“遞歸查詢”都是非常有用的。SQL Server 2005 中的新增功能令遞歸查詢成為可能,雖然此項(xiàng)功能還不是十分簡(jiǎn)單易用。

遞歸查詢是針對(duì)自聯(lián)接表的查詢。自聯(lián)接表的兩個(gè)常見示例有保存員工及其經(jīng)理信息的數(shù)據(jù)表,和保存材料清單的數(shù)據(jù)表。在 AdventureWorks 數(shù)據(jù)庫(kù)的 Employee 表中對(duì)自聯(lián)接數(shù)據(jù)表進(jìn)行了說(shuō)明。

查詢自聯(lián)接表的直接關(guān)系通常十分簡(jiǎn)單,如查詢直接向經(jīng)理報(bào)告的員工數(shù)量。但是,如果要回答“經(jīng)理的組織中有多少名員工?”這樣一個(gè)問題卻十分困難。

SQL Server 2005 中的關(guān)系數(shù)據(jù)庫(kù)功能解決了這一問題,這一功能被稱為“遞歸通用表表達(dá)式”?!案戒洝敝邪粋€(gè)遞歸查詢的示例,該示例回答了以上定義的問題。聯(lián)機(jī)叢書的 "WITH <common_table_expression>" 主題中包含更多的相關(guān)信息。

提取、轉(zhuǎn)換和加載 (ETL)

數(shù)據(jù)轉(zhuǎn)換服務(wù) (DTS) 對(duì)于 SQL Server 2005 而言,是一項(xiàng)全新的技術(shù)。DTS 是 SQL Server 2000 中很受歡迎的一項(xiàng)功能,但 DTS 2005 已被重新設(shè)計(jì)成企業(yè) ETL 平臺(tái)。DTS 為構(gòu)建企業(yè)級(jí) ETL 應(yīng)用程序提供了大量必需的功能,以及非常高的擴(kuò)展性能。DTS 是完全可編程的、嵌入式的、可擴(kuò)展的——所有這些特性都使它成為理想的 ETL 平臺(tái)。

下表總結(jié)了 DTS 2005 的這些功能。有關(guān) ETL 系統(tǒng)開發(fā) DTS 適用性更加完整的討論,請(qǐng)參閱 SQL Server 聯(lián)機(jī)叢書。

包開發(fā)

SQL Server 2005 的 DTS 功能 企業(yè) ETL 開發(fā) ETL 平臺(tái)

使用 Business Intelligence Development Studio 圖形用戶界面 設(shè)計(jì)數(shù)據(jù)管理應(yīng)用程序的 DTS 包。DTS 包的設(shè)計(jì)、開發(fā)和調(diào)試均在 Business Intelligence Development Studio 中完成,您只需從工具欄拖動(dòng)任務(wù)、為其設(shè)置屬性并將任務(wù)與優(yōu)先約束相連接便可完成這一切。

? ?

使用 SQL Server Management Studio 向?qū)? 開發(fā)執(zhí)行常規(guī)任務(wù)(如“復(fù)制數(shù)據(jù)庫(kù)”)的簡(jiǎn)單 DTS 包。

? ?

軟件供應(yīng)商將在其產(chǎn)品中 嵌入 DTS 功能 ,構(gòu)建按需生成自定義包的向?qū)А?

? ?

將控制流從數(shù)據(jù)流中分離出來(lái)。 大多數(shù)的 DTS 包都包含多個(gè)控制流任務(wù),以及循環(huán)任務(wù)或順序任務(wù),這些任務(wù)都被放置在控制流窗格中??刂迫蝿?wù)(管道任務(wù))是包的工作動(dòng)力,它擁有自己的設(shè)計(jì)表面,可用于布置數(shù)據(jù)流??刂屏骱蛿?shù)據(jù)流的分離使得程序更加容易讀取。

? ?

包變量 是經(jīng)過定義且可見的。變量是受限制的,如受包、循環(huán)或任務(wù)的限制。

? ?

復(fù)雜的 ETLM 系統(tǒng) 可以通過構(gòu)建包網(wǎng)絡(luò)實(shí)現(xiàn),其中包含一個(gè)調(diào)用其他包的包。子包可以很好地重新使用邏輯、變量和上下文。DTS 2005 與 DTS 2000 相比,對(duì)嵌套數(shù)據(jù)包的需求有所減少。

? ?

包配置框架 是可擴(kuò)展的系統(tǒng),可用于自定義包在不同環(huán)境中的運(yùn)行方式。

? ?

DTS 程序以 XML 格式存儲(chǔ)在文件系統(tǒng)或 SQL Server 中。DTS XML 文件可受源代碼管理。

? ?

DTS 2000 包遷移向?qū)? 可以幫助您將包遷移至 DTS 2005,它還可以在出現(xiàn)升級(jí)問題的地方提供警告。

? ?

DTS 2000 運(yùn)行時(shí) 包含在 SQL Server 2005 中,在不升級(jí) DTS 2000 包的情況下,仍可運(yùn)行。

? ?

包的操作和結(jié)果會(huì)以多種形式被 記錄 下來(lái),分發(fā)給廣泛的提供程序。

? ?

事件處理程序 邏輯只需定義一次,便可多次使用。

? ?

與 WMI 的集成 表明包可以對(duì)外部事件(例如文件復(fù)制的完成)作出響應(yīng),或拋出可供其他進(jìn)程使用的 WMI 事件。

? ?

包可重啟性 與事務(wù)控制和故障檢查點(diǎn)一起,可以幫助管理員管理復(fù)雜的包,移動(dòng)大量數(shù)據(jù)。

? ?

控制流

SQL Server 2005 的 DTS 功能 企業(yè) ETL 開發(fā) ETL 平臺(tái)

優(yōu)先約束: 您可以設(shè)計(jì)一個(gè)包,以在任務(wù)成功、失敗或完成時(shí)將控制傳遞給這些不同的任務(wù)。

? ?

循環(huán)任務(wù) 包括 For、ForEach 和 Sequence 循環(huán)。包開發(fā)人員可以在數(shù)據(jù)的所有(或一組)表上、目錄中的文件上或是 Analysis Services 多維數(shù)據(jù)集分區(qū)上輕松執(zhí)行一組操作。

? ?

Analysis Services 集成 是無(wú)縫的,它與自動(dòng)執(zhí)行 Analysis Services DDL 的控制任務(wù)一起處理 Analysis Services 對(duì)象,或執(zhí)行數(shù)據(jù)挖掘查詢。正如下面所討論的,DTS 管理還集成了 Analysis Services。

? ?

VB.NET 腳本 可與“腳本任務(wù)”一起使用。被稱為“ActiveX 腳本任務(wù)”的第二個(gè)腳本任務(wù)主要用于向后兼容 DTS 2000。

? ?

通信任務(wù) 包括:

?

消息隊(duì)列

?

發(fā)送郵件

? ?

其他控制流任務(wù) 包括:

?

大容量插入

?

執(zhí)行包

?

執(zhí)行進(jìn)程

?

執(zhí)行 SQL

?

文件系統(tǒng)

?

FTP

? ?

其他任務(wù) 可以使用 DTS 對(duì)象模型輕松開發(fā)。

? ?

數(shù)據(jù)流

SQL Server 2005 的 DTS 功能 企業(yè) ETL 開發(fā) ETL 平臺(tái)

在數(shù)據(jù)流管道中存在多個(gè)源、轉(zhuǎn)換和目的。 只有在轉(zhuǎn)換完成時(shí),數(shù)據(jù)才能被讀取、合并和操作,然后才能寫入。中轉(zhuǎn)表所需的多次寫入被削弱或消除;轉(zhuǎn)換性能得到極大提高。

? ?

“DTS 管道”任務(wù)使用來(lái)自 多個(gè)異類數(shù)據(jù)源 和本機(jī)的數(shù)據(jù)。可擴(kuò)展的“數(shù)據(jù)源”體系結(jié)構(gòu)支持來(lái)自平面文件、OLEDB 源(包括 DB2 和 Oracle)和原始文件的數(shù)據(jù)。其他源,包括使用特殊結(jié)構(gòu)化數(shù)據(jù)的源都在計(jì)劃之內(nèi)。

? ?

其他數(shù)據(jù)源 可以由 Microsoft 及其合作伙伴輕松開發(fā)。

? ?

來(lái)自多個(gè)源的數(shù)據(jù)可以與 聯(lián)接、查找和聯(lián)合 操作符相聯(lián)接。這些操作都在內(nèi)存中執(zhí)行,不需要對(duì)數(shù)據(jù)庫(kù)或文件執(zhí)行寫入操作。

? ?

數(shù)據(jù)流可以使用 條件分離和多播 轉(zhuǎn)換。類似編譯器的 DTS 引擎確定了可以 平行操作哪些數(shù)據(jù)流 。

? ?

大量基于行的數(shù)據(jù)轉(zhuǎn)換都是由 字符映射、復(fù)制映射、數(shù)據(jù)轉(zhuǎn)換和派生列 轉(zhuǎn)換所提供的。這些操作符更像是向?qū)?,而非轉(zhuǎn)換,它們提供了用戶所需的大部分?jǐn)?shù)據(jù)轉(zhuǎn)換。

? ?

有些數(shù)據(jù)轉(zhuǎn)換任務(wù)需要對(duì)多個(gè)行中的數(shù)據(jù)進(jìn)行比較。 排序和聚合 轉(zhuǎn)換可以在數(shù)據(jù)流中以極高的性能執(zhí)行這些操作,其性能遠(yuǎn)非數(shù)據(jù)庫(kù)聚合可及。

? ?

有些數(shù)據(jù)轉(zhuǎn)換任務(wù)需要復(fù)雜邏輯,例如 模糊匹配、模糊分組、時(shí)間維度生成以及旋轉(zhuǎn)或反旋轉(zhuǎn) 。其他常見任務(wù)(例如 維度鍵管理 )則需要多個(gè)步驟。特殊技術(shù)和向?qū)惯@些復(fù)雜技術(shù)可供所有用戶使用。

? ?

轉(zhuǎn)換后的數(shù)據(jù)可以寫入 異類目標(biāo) ,其中包括 SQL Server 表、OLEDB 數(shù)據(jù)庫(kù)表、平面文件以及原始文件。

? ?

轉(zhuǎn)換后的數(shù)據(jù)可以與 Microsoft BI 解決方案的其他組件集成 ,其中包括 Analysis Services 數(shù)據(jù)庫(kù)和數(shù)據(jù)挖掘模型。

? ?

由轉(zhuǎn)換步驟所導(dǎo)致的 錯(cuò)誤流 可以以多種方式進(jìn)行管理:

?

進(jìn)程內(nèi)轉(zhuǎn)換可以“修復(fù)”數(shù)據(jù)并重新提交主要流。

?

錯(cuò)誤流可以被記錄到表或文件中,以備脫機(jī)研究和重新提交。

? ?

其他轉(zhuǎn)換和目的 可以由 Microsoft 及其合作伙伴輕松開發(fā)。

? ?

開發(fā)和調(diào)試

SQL Server 2005 的 DTS 功能 企業(yè) ETL 開發(fā) ETL 平臺(tái)

包開發(fā)商可以在每個(gè)控制流任務(wù)中定義控制流 斷點(diǎn) 。在調(diào)試過程中,斷點(diǎn)可以定義在某些任務(wù)執(zhí)行點(diǎn)之前、之后,或定義在這些任務(wù)執(zhí)行點(diǎn)。

? ?

包開發(fā)商可以為數(shù)據(jù)流中的每個(gè)轉(zhuǎn)換附加一個(gè) 數(shù)據(jù)查看器 。在調(diào)試過程中,數(shù)據(jù)查看器會(huì)顯示在該點(diǎn)的轉(zhuǎn)換后數(shù)據(jù)流內(nèi)容。

? ?

Business Intelligence Development Studio 寄宿在 Visual Studio 中。腳本及其他編程任務(wù)可以充分利用該企業(yè)開發(fā)環(huán)境的優(yōu)點(diǎn)。

? ?

包開發(fā) 可以幫助用戶將所有包組件(包括自定義腳本和可執(zhí)行程序)捆綁在一起,以用于發(fā)行測(cè)試、生產(chǎn)或其他客戶系統(tǒng)。

? ?

可供 DTS 2000 開發(fā)人員使用的 DTS 2005

DTS 2000 用戶已經(jīng)開發(fā)出了一套執(zhí)行復(fù)雜操作的技巧。這些技巧,尤其是編寫自修改包,在 DTS 2005 中不再有用武之地。在 DTS 2005 中要使用變量和配置基礎(chǔ)結(jié)構(gòu)來(lái)編寫動(dòng)態(tài)包、不要再試圖編寫自修改包。

配置良好的變量和配置基礎(chǔ)結(jié)構(gòu)還可以減少創(chuàng)建復(fù)雜子包系統(tǒng)的需求。如果設(shè)計(jì)完善,單一包便可滿足多種需求;例如,單一包可以在多種不同配置中重復(fù)使用,以用來(lái)在維度數(shù)據(jù)倉(cāng)庫(kù)中加載許多維度表。在 DTS 2000 中,一個(gè)復(fù)雜的 DTS 包網(wǎng)絡(luò)可能包括 50-100 個(gè)包;而在 DTS 2005 中,一個(gè)復(fù)雜的網(wǎng)絡(luò)可能只包含 10 個(gè)包。

Analysis Services

SQL Server 2000 Analysis Services 由兩個(gè)主要的互補(bǔ)功能組成:聯(lián)機(jī)分析處理 (OLAP) 和數(shù)據(jù)挖掘。這兩個(gè)組件在 Analysis Services 2005 中仍然存在,并且是分析應(yīng)用程序的基石。

Analysis Services 2005 OLAP 中的功能改進(jìn)主要可以歸納為兩類改進(jìn):

?

啟用了一些新的分析應(yīng)用程序,而達(dá)到此目的做法便是添加全新的功能,或是使復(fù)雜功能的構(gòu)建變得更加簡(jiǎn)單。

?

增強(qiáng)了分析應(yīng)用程序的企業(yè)適應(yīng)性

新增功能或改進(jìn)功能 設(shè)計(jì)和部署 管理和操作

統(tǒng)一維度模型 合并了關(guān)系數(shù)據(jù)模型和 OLAP 數(shù)據(jù)模型的最佳特征。后文將對(duì)“統(tǒng)一維度”模型進(jìn)行更為詳細(xì)的討論。

? ?

主動(dòng)緩存 使您可以用極低的成本操作低延遲時(shí)間的應(yīng)用程序。后文將對(duì)主動(dòng)緩存進(jìn)行更為詳細(xì)的討論。

? ?

關(guān)鍵績(jī)效指標(biāo) (KPI) 框架為定義公司度量提供了一個(gè)基于服務(wù)器的簡(jiǎn)單機(jī)制。KPI 由值、目標(biāo)、當(dāng)前狀態(tài)和趨勢(shì)表達(dá)式組成,并通過諸如量尺和停車燈之類的簡(jiǎn)單圖形顯示出來(lái)。

? ?

翻譯 為用戶提供了一個(gè)簡(jiǎn)單的集中管理機(jī)制,使他們可以用自己喜歡的語(yǔ)言來(lái)存儲(chǔ)和顯示分析數(shù)據(jù)。一個(gè)分析數(shù)據(jù)庫(kù)可以用多種語(yǔ)言來(lái)顯示。

? ?

MDX 腳本 是用于定義“計(jì)算成員”、“命名集”和“單元計(jì)算”的新機(jī)制。

?

“MDX 腳本”的語(yǔ)法得到了簡(jiǎn)化和改進(jìn)。“MDX 腳本”可以分步調(diào)試。

?

“MDX 腳本”計(jì)算可以緩存和保留,這可以提供優(yōu)良的查詢性能,即使面對(duì)復(fù)雜計(jì)算也沒有問題。

?

“MDX 腳本”計(jì)算可以維護(hù)實(shí)時(shí)的動(dòng)態(tài)計(jì)算行為。

后文將對(duì)“MDX 腳本”進(jìn)行更為詳細(xì)的討論。

? ?

Analysis Services 存儲(chǔ)過程 允許您使用公共語(yǔ)言運(yùn)行時(shí)編程語(yǔ)言(如 C++、VB 或 C)創(chuàng)建外部例程。存儲(chǔ)過程擴(kuò)展了 Analysis Services 2000 用戶定義函數(shù) (UDF) 所提供的功能。后文將對(duì) Analysis Services 存儲(chǔ)過程進(jìn)行更為詳細(xì)的討論。

? ?

數(shù)據(jù)寫回 增強(qiáng)使其性能較以前有了十倍的增長(zhǎng)。分析應(yīng)用程序可以將數(shù)據(jù)寫回到聚合單元中,然后再有選擇地執(zhí)行聚合數(shù)據(jù)到其底層葉數(shù)據(jù)的分配工作。

? ?

內(nèi)置的 業(yè)務(wù)規(guī)則、工具和向?qū)? 使艱難的設(shè)計(jì)變得簡(jiǎn)單:

?

半累積度量值

?

時(shí)間智能

?

帳戶智能

?

財(cái)務(wù)聚合

?

貨幣轉(zhuǎn)換

?

時(shí)間維度生成

? ?

數(shù)據(jù)源視圖 提供了一種機(jī)制,既可以簡(jiǎn)化,又可以擴(kuò)展分析應(yīng)用程序底層的關(guān)系數(shù)據(jù)庫(kù)。后文將對(duì)“數(shù)據(jù)源視圖”進(jìn)行更為詳細(xì)的討論。

? ?

Analysis Services 的 數(shù)據(jù)定義語(yǔ)言 是 XML。Analysis Services 元數(shù)據(jù)知識(shí)庫(kù)已經(jīng)沒有了,取而代之的是由 Analysis Services 服務(wù)器所存儲(chǔ)和管理的 XML 文件。

? ?

Web 服務(wù): XML for Analysis (XML/A) 是基于標(biāo)準(zhǔn)的本機(jī)協(xié)議,其作用是與 Analysis Services 服務(wù)器進(jìn)行通信。啟用了新型的應(yīng)用程序,而且開發(fā)這些應(yīng)用程序還十分簡(jiǎn)單,這些應(yīng)用程序?qū)⒎治雠c操作實(shí)時(shí)集成在一起。

?

將 XML/A 作為本機(jī)協(xié)議,便可以把 Analysis Services 客戶端配置為具有零覆蓋范圍,且每臺(tái)服務(wù)器都自動(dòng)成為一種 web 服務(wù)。

?

具有小覆蓋范圍的 Win32 層可用于向后兼容與 Analysis Services 2000 一起使用的,用于 OLAP、ADOMD 和 ADOMD.Net 的 OLE DB 工具。許多客戶和開發(fā)人員將繼續(xù)使用 ADOMD.Net 對(duì)象模型來(lái)構(gòu)建 Analysis Services 自定義應(yīng)用程序。

? ?

計(jì)算 被集中在服務(wù)器端。與 Analysis Services 2000 不同,Analysis Services 2005 在服務(wù)器端執(zhí)行所有計(jì)算。這樣做的優(yōu)點(diǎn)十分顯著:

?

客戶端的占用空間為零;消除了客戶端緩存。

?

復(fù)雜計(jì)算的查詢性能得到極大提高。

實(shí)現(xiàn)這些改進(jìn)的代價(jià)是使對(duì)最簡(jiǎn)單查詢的查詢性能有輕微的降低,因?yàn)檫@些查詢?cè)?Analysis Services 2000 中是在客戶端緩存中被解析的。

? ?

開發(fā)和管理工具 (Business Intelligence Development Studio 和 SQL Server Management Studio)是用于商務(wù)智能應(yīng)用程序的第一款完整的開發(fā)環(huán)境。這些新工具可以幫助您捕獲和建模所有數(shù)據(jù),加快應(yīng)用程序的開發(fā)速度。

? ?

Analysis Services 2005 對(duì)其 權(quán)限模型 作了改進(jìn)。不同的角色和權(quán)限包括:

?

服務(wù)器管理員

?

數(shù)據(jù)庫(kù)管理員

?

處理對(duì)象

?

查看對(duì)象結(jié)構(gòu)(由對(duì)象授予)

?

改變對(duì)象結(jié)構(gòu)

? ?

Analysis Services 2005 包含 150 多項(xiàng) 安全性設(shè)計(jì) 更改。在安全模型方面的改進(jìn)包括:

?

Analysis Services 具有多條安全防線,屬于“默認(rèn)安全設(shè)置”。

?

管理權(quán)限得到更為細(xì)致的劃分;不同數(shù)據(jù)庫(kù)對(duì)象的權(quán)限得以分離,執(zhí)行設(shè)計(jì)更改的權(quán)限與處理權(quán)限也得到了分離。

?

可以對(duì)本地多維數(shù)據(jù)集進(jìn)行加密。

?

Analysis Services 在運(yùn)行時(shí)其權(quán)限級(jí)別為可能的最低級(jí)別。

?

可以對(duì)客戶端/服務(wù)器端通信進(jìn)行加密和簽名,以避免出現(xiàn)數(shù)據(jù)包竊聽、欺詐、篡改和拒絕的情況。

?

加密操作在服務(wù)器端強(qiáng)制執(zhí)行,服務(wù)器可以拒絕不使用加密的客戶端。

? ?

Analysis Services 2005 服務(wù)器可以使用工具生成可監(jiān)控的 服務(wù)器跟蹤事件 ,所用工具的示例有 SQL Server 事件探查器,此工具在 SQL Server 關(guān)系數(shù)據(jù)庫(kù)中長(zhǎng)期以來(lái)一直可用。

?

審核應(yīng)用程序的訪問和使用

?

審核應(yīng)用程序和服務(wù)器事件以提高服務(wù)器的可管理性。

?

審核應(yīng)用程序錯(cuò)誤,與“Microsoft 支持”合作,以便更快地解決問題。

? ?

得到改進(jìn)的計(jì)算性能 來(lái)源于以下幾項(xiàng)功能:

?

服務(wù)器計(jì)算緩存在多個(gè)用戶間共享

?

查詢優(yōu)化器會(huì)用可以提高性能的等價(jià)語(yǔ)句“重寫”查詢。

?

得到改進(jìn)的 NonEmpty 性能

?

非重復(fù)計(jì)數(shù)度量值得到改進(jìn)

? ?

Analysis Services 2005 對(duì) 中間層體系結(jié)構(gòu) 有著廣泛的支持。用低空間占用率的對(duì)象模型交付可伸縮的中間層——可擴(kuò)展到支持成千上萬(wàn)名并行用戶。其在廣泛區(qū)域網(wǎng)絡(luò)中的部署性能雖未有過正式的測(cè)評(píng),但肯定要優(yōu)于 SQL Server 2000。

? ?

Analysis Services 2005 支持 無(wú)限大的維度 。因?yàn)榫S度不需要再在內(nèi)存中緩存。

? ?

Analysis Services 2005 支持在標(biāo)準(zhǔn)管理工具集中 平行處理分區(qū) 。

? ?

SQL Server Management Studio 將被用來(lái)管理所有的 SQL Server 數(shù)據(jù)庫(kù)。它可以使用 Analysis Services 對(duì)關(guān)系數(shù)據(jù)庫(kù)提供集成的管理,其集成工具可用于:

?

服務(wù)器控制臺(tái)管理(取代了企業(yè)管理器和分析管理器),

?

查詢分析(SQL 和 MDX),

?

來(lái)自關(guān)系引擎和 Analysis Services 的分析事件,

?

“飛行記錄儀”和“捕獲重放”功能可以自動(dòng)捕獲服務(wù)器事件,這可以有效地幫助您(或 Microsoft Services)診斷問題。

? ?

一種新的對(duì)象模型, 分析管理對(duì)象 (AMO) ,取代了 DSO。DSO 的作用是向后兼容,真正起作用的是 AMO,它提供了豐富的新功能,尤其是它可以用管理工具和開發(fā)工具通過腳本來(lái)創(chuàng)建對(duì)象和修改對(duì)象,令人印象深刻。

? ?

構(gòu)建分析數(shù)據(jù)庫(kù)的途徑主要有兩個(gè):

?

完全自定義: 從源開始,通常是從一個(gè)關(guān)系型源開始,定義維度、多維數(shù)據(jù)集、關(guān)鍵績(jī)效指標(biāo)、計(jì)算和數(shù)據(jù)挖掘模型。此途徑對(duì)那些業(yè)已具備數(shù)據(jù)倉(cāng)庫(kù)或主題集市的客戶來(lái)說(shuō)十分適合。在多維數(shù)據(jù)集向?qū)У牡谝粋€(gè)屏幕中,此選項(xiàng)的標(biāo)簽為“使用現(xiàn)有數(shù)據(jù)庫(kù)/數(shù)據(jù)倉(cāng)庫(kù)”。

?

可自定義的模板: 從模板開始,定義和生成一個(gè)完整的應(yīng)用程序,包括關(guān)系數(shù)據(jù)庫(kù)、DTS 包和 Analysis Services OLAP 數(shù)據(jù)庫(kù)。設(shè)計(jì)和生成這些組件的目的是使這些組件無(wú)縫合作,共同組成一個(gè)完整的應(yīng)用程序。此途徑對(duì)于那些從模板開始安裝完整商務(wù)智能解決方案的客戶來(lái)說(shuō)十分適合。在多維數(shù)據(jù)集向?qū)У牡谝粋€(gè)屏幕中,此選項(xiàng)的標(biāo)簽為“在不具備數(shù)據(jù)源的前提下設(shè)計(jì)商務(wù)智能模型”。

不管采用哪種方法,基本的系統(tǒng)設(shè)計(jì)都假設(shè)使用當(dāng)前熟悉的、來(lái)自一個(gè)或多個(gè)源的商務(wù)智能結(jié)構(gòu)來(lái)填充維度關(guān)系型數(shù)據(jù)倉(cāng)庫(kù),然后再用數(shù)據(jù)倉(cāng)庫(kù)來(lái)填充 Analysis Services 數(shù)據(jù)庫(kù)。但是,SQL Server 2005 提供了許多選項(xiàng),通過消除或淡化不同的組件使其背離了這種常規(guī)設(shè)計(jì)。在下面“統(tǒng)一維度”模型中討論了一些其他的備選系統(tǒng)。

從現(xiàn)有的源數(shù)據(jù)庫(kù)創(chuàng)建自定義數(shù)據(jù)庫(kù)

創(chuàng)建 Analysis Services 數(shù)據(jù)庫(kù)的第一種方法最為 SQL Server 2000 的用戶所熟悉。即從任意結(jié)構(gòu)的源數(shù)據(jù)庫(kù)開始著手創(chuàng)建數(shù)據(jù)庫(kù):

?

按事實(shí)數(shù)據(jù)表和維度表構(gòu)建一個(gè)維度數(shù)據(jù)庫(kù),或

?

任何其他的數(shù)據(jù)庫(kù)結(jié)構(gòu),包括標(biāo)準(zhǔn)化的事務(wù)系統(tǒng)。

SQL Server 2005 中可從標(biāo)準(zhǔn)化數(shù)據(jù)庫(kù)尋源的能力是對(duì) Analysis Services 2000 的一大突破,在 Analysis Services 2000 中,執(zhí)行此操作需要一個(gè)維度結(jié)構(gòu),此結(jié)構(gòu)或是星型的,或是雪花型的,或是拉伸型的。此功能使您可以輕松地開發(fā)具有極低延遲時(shí)間的商務(wù)智能應(yīng)用程序。

通過直接在事務(wù)數(shù)據(jù)庫(kù)內(nèi)構(gòu)建 Analysis Services 數(shù)據(jù)庫(kù),而不需要先構(gòu)建正式的數(shù)據(jù)倉(cāng)庫(kù),可以用較低的成本,輕松有效地滿足許多用戶的要求。如果您需要僅對(duì)數(shù)據(jù)執(zhí)行最低的數(shù)據(jù)轉(zhuǎn)換、清理和集成便投入使用,則可考慮使用一個(gè) Analysis Services 數(shù)據(jù)庫(kù)來(lái)補(bǔ)充或替換現(xiàn)有的關(guān)系報(bào)告。您可以充分利用 Analysis Services 的功能和交互性,更好地管理事務(wù)系統(tǒng)中的負(fù)載。

雖然可以直接從事務(wù)系統(tǒng)構(gòu)建和維護(hù) Analysis Services 數(shù)據(jù)庫(kù),但只有先構(gòu)建關(guān)系型數(shù)據(jù)倉(cāng)庫(kù)才能最好地滿足許多企業(yè)分析的要求。復(fù)雜的數(shù)據(jù)集成和數(shù)據(jù)更改管理問題可以通過典型的數(shù)據(jù)倉(cāng)庫(kù)體系結(jié)構(gòu)得到最好的解決,其中 Analysis Services 數(shù)據(jù)庫(kù)充當(dāng)著查詢和分析引擎的角色。

數(shù)據(jù)源和數(shù)據(jù)源視圖

構(gòu)建分析應(yīng)用程序的第一步就是在 Business Intelligence Development Studio 中創(chuàng)建一個(gè)新的 Analysis Services 項(xiàng)目。創(chuàng)建了空項(xiàng)目之后,應(yīng)當(dāng)創(chuàng)建一個(gè)“數(shù)據(jù)源”并將其與源數(shù)據(jù)庫(kù)建立連接,此源數(shù)據(jù)庫(kù)可以是任何受支持的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)中的數(shù)據(jù)庫(kù)。對(duì)于 Beta 2 版本,建議您將 SQL Server 2000 或 SQL Server 2005 關(guān)系數(shù)據(jù)庫(kù)作為源。

“數(shù)據(jù)源”負(fù)責(zé)為源數(shù)據(jù)連接存儲(chǔ)信息?!皵?shù)據(jù)源視圖”中包含著源數(shù)據(jù)庫(kù)表相關(guān)子集的信息。此信息不只局限于源數(shù)據(jù)庫(kù)中表的物理結(jié)構(gòu);您還可以添加諸如關(guān)系、表和列的友好名稱、計(jì)算列和命名查詢之類的信息。

“數(shù)據(jù)源視圖”可以在 BI 項(xiàng)目和 DTS 項(xiàng)目之間共享?!皵?shù)據(jù)源視圖”很有用處,尤其是在以下幾種情況中:

?

源數(shù)據(jù)庫(kù)包含成千上萬(wàn)個(gè)表,但其中只有相對(duì)少數(shù)的表在 BI 應(yīng)用程序中真正有用。

?

Analysis Services 數(shù)據(jù)庫(kù)使用來(lái)自多個(gè)源的數(shù)據(jù),這些源有多重?cái)?shù)據(jù)庫(kù)、服務(wù)器、平面文件或 RDBMS。

?

BI 系統(tǒng)開發(fā)人員不具有源數(shù)據(jù)庫(kù)中的系統(tǒng)管理權(quán)限,且不允許創(chuàng)建物理視圖或修改源數(shù)據(jù)庫(kù)。

?

BI 系統(tǒng)開發(fā)人員需要以“脫機(jī)”模式工作,必須斷開與源數(shù)據(jù)庫(kù)的連接。設(shè)計(jì)和開發(fā)任務(wù)針對(duì)“數(shù)據(jù)源視圖”發(fā)生,而“數(shù)據(jù)源視圖”已從源數(shù)據(jù)中分離出來(lái)。

您為“數(shù)據(jù)源視圖”設(shè)置良好名稱和關(guān)系所作的投資將換來(lái)分析應(yīng)用程序的輕松開發(fā)。

創(chuàng)建維度和多維數(shù)據(jù)集

創(chuàng)建了“數(shù)據(jù)源視圖”之后,便可以右擊“解決方案資源管理器”窗格中的“多維數(shù)據(jù)集”圖標(biāo),選擇“新建多維數(shù)據(jù)集”,創(chuàng)建一個(gè)多維數(shù)據(jù)集。您可以啟用 IntelliCube 檢測(cè)和建議。如果您選擇使用 IntelliCube,則必須決定是否構(gòu)建一個(gè)已為報(bào)告經(jīng)過旋轉(zhuǎn)優(yōu)化的多維數(shù)據(jù)集。IntelliCube 技術(shù)會(huì)對(duì)“數(shù)據(jù)源視圖”中的數(shù)據(jù)庫(kù)和數(shù)據(jù)基數(shù)關(guān)系進(jìn)行檢查,并按事實(shí)數(shù)據(jù)表、維度表或用于解析多對(duì)多關(guān)系的維度-事實(shí)橋接表來(lái)智能呈現(xiàn)表特征。對(duì)于 Beta 2 版本來(lái)說(shuō),選擇是為旋轉(zhuǎn)還是為報(bào)告優(yōu)化多維數(shù)據(jù)集和維度存在一些微小的差別。唯一的差別就是 IntelliCube 是否會(huì)嘗試在維度屬性之間創(chuàng)建層次關(guān)系。由于層次易于創(chuàng)建,也易于毀壞,因此無(wú)須擔(dān)心會(huì)花費(fèi)太多時(shí)間和精力。

建議您在此“多維數(shù)據(jù)集向?qū)А钡某跏计聊缓罅⒓袋c(diǎn)擊“完成”按鈕。這樣會(huì)一次定義好所需的 Analysis Services 數(shù)據(jù)庫(kù)、維度、層次、屬性和多維數(shù)據(jù)集。您可以對(duì)此設(shè)計(jì)進(jìn)行編輯,但通常情況下,仔細(xì)一點(diǎn)兒走完向?qū)?,并在過程中作出一些明智的選擇會(huì)更加有效。

實(shí)施完“多維數(shù)據(jù)集向?qū)А敝?,您可能?huì)發(fā)現(xiàn)您更喜歡用“維度向?qū)А眮?lái)逐一地創(chuàng)建復(fù)雜的維度,要啟動(dòng)“維度向?qū)А?,只需在“解決方案資源管理器”窗格中右擊“維度”即可。仔細(xì)定義完大型維度(例如“產(chǎn)品”、“客戶”和“時(shí)間”)后,啟動(dòng)“多維數(shù)據(jù)集向?qū)А?,并確保在適當(dāng)?shù)奈恢冒ㄟ@些預(yù)定義的維度。

構(gòu)建和部署

到此為止,前面執(zhí)行的這些步驟已在您的開發(fā)機(jī)器上以 XML 文件輕松創(chuàng)建了維度和多維數(shù)據(jù)集定義和結(jié)構(gòu)。Business Intelligence Development Studio 和“配置管理器”使您可以對(duì)目標(biāo)服務(wù)器上的項(xiàng)目構(gòu)建和部署過程進(jìn)行管理。默認(rèn)情況下,“部署”目標(biāo)服務(wù)器就是您的本地服務(wù)器。您可以創(chuàng)建適合其他環(huán)境部署的備選配置。項(xiàng)目的主要屬性,如目標(biāo)服務(wù)器的名稱和數(shù)據(jù)源連接字符串等,可能會(huì)因配置而不同。

要在開發(fā)循環(huán)過程中預(yù)覽和測(cè)試多維數(shù)據(jù)集和維度,請(qǐng)從 Business Intelligence Development Studio 的菜單中選擇“部署”,在指定的目標(biāo)服務(wù)器上構(gòu)建和部署項(xiàng)目?;蛘?,單擊 F5,或選擇“調(diào)試”(位于 Business Intelligence Development Studio 主菜單中)。這樣會(huì)啟動(dòng)幾個(gè)調(diào)試和瀏覽工具中的一個(gè),具體啟動(dòng)哪個(gè),要取決于您所執(zhí)行的操作以及您選擇“部署”的時(shí)間。根據(jù)此上下文,“部署”過程會(huì)啟動(dòng)多維數(shù)據(jù)集瀏覽器、MDX 腳本調(diào)試器或 KPI 瀏覽器。

您可能想在定義完系統(tǒng)的維度、度量值和多維數(shù)據(jù)集后查看一下系統(tǒng)原型。請(qǐng)使用相對(duì)較少的數(shù)據(jù)針對(duì)開發(fā)數(shù)據(jù)庫(kù)進(jìn)行處理,以驗(yàn)證數(shù)據(jù)和結(jié)構(gòu)的行為是否與預(yù)期的行為相一致。

作為原型的一部分,您可能想設(shè)計(jì)一些更為復(fù)雜的“Analysis Services 數(shù)據(jù)庫(kù)”、“關(guān)鍵績(jī)效指標(biāo)”、“操作”和“計(jì)算”組件。如果您的數(shù)據(jù)庫(kù)是被對(duì)不同數(shù)據(jù)視圖感興趣的不同用戶團(tuán)體使用的話,請(qǐng)深入查看“透視”和備選的安全計(jì)劃。如果您計(jì)劃部署可供國(guó)際上不同語(yǔ)言的用戶使用的數(shù)據(jù)庫(kù),則可以使用“翻譯”功能引入本地化項(xiàng)目名稱。最終,原型會(huì)評(píng)估備選的物理配置,例如“分區(qū)”和不同的“主動(dòng)緩存”選項(xiàng)。

在 Analysis Service 數(shù)據(jù)庫(kù)開發(fā)完成之后,便可以部署數(shù)據(jù)庫(kù)對(duì)象,以便于進(jìn)行最終測(cè)試、臨時(shí)過渡并投入生產(chǎn)服務(wù)器。在構(gòu)建階段的項(xiàng)目輸出可以用作 Analysis Services 部署實(shí)用工具的輸入。此實(shí)用工具可以幫助您部署和處理數(shù)據(jù)庫(kù)。

從模板創(chuàng)建可自定義的數(shù)據(jù)庫(kù)

我們剛剛描述了從已知源創(chuàng)建自定義 Analysis Services 數(shù)據(jù)庫(kù)的基本步驟。這種通過“多維數(shù)據(jù)集向?qū)А焙汀熬S度向?qū)А眲?chuàng)建的方法與創(chuàng)建 Analysis Services 2000 數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)方法十分類似。

創(chuàng)建 2005 分析應(yīng)用程序的另外一種備選方法就是選擇“多維數(shù)據(jù)集向?qū)А钡诙€(gè)屏幕上的“在不具備數(shù)據(jù)源的前提下設(shè)計(jì)商務(wù)智能模型”選項(xiàng)。這種通過向?qū)?chuàng)建的方法與 SQL Server 2000 Accelerator for Business Intelligence 的設(shè)計(jì)體驗(yàn)十分類似。這種設(shè)計(jì)體驗(yàn)會(huì)從模板生成一個(gè)完全可自定義的應(yīng)用程序,此處的模板:具有豐富的維度結(jié)構(gòu)和分析功能,還有可能包括一個(gè)關(guān)系型數(shù)據(jù)倉(cāng)庫(kù)和 DTS 包。Microsoft、集成商或獨(dú)立軟件供應(yīng)商都可以提供這種模板。

不管采用哪種通過向?qū)?chuàng)建的方法,是從源數(shù)據(jù)庫(kù)創(chuàng)建,還是從模板創(chuàng)建,都可以設(shè)計(jì)相同的 Analysis Services 數(shù)據(jù)庫(kù)。第一種選項(xiàng)假設(shè)您將創(chuàng)建一個(gè)完全自定義的系統(tǒng)。對(duì)象名稱和結(jié)構(gòu)都是可以完全自定義的,初始設(shè)計(jì)是受源數(shù)據(jù)庫(kù)中的名稱和結(jié)構(gòu)所驅(qū)動(dòng)的。模板選項(xiàng)也可以創(chuàng)建一個(gè)完全自定義的數(shù)據(jù)庫(kù),但是初始設(shè)計(jì)是受專家主題區(qū)域模板所驅(qū)動(dòng)的。

許多用戶都喜歡將這兩種方法結(jié)合使用。一個(gè)非常常見的方法就是用現(xiàn)有源創(chuàng)建 Analysis Services 數(shù)據(jù)庫(kù)中的大部分內(nèi)容,而用模板法生成“時(shí)間”維度。

統(tǒng)一維度模型

Analysis Services 2005 使關(guān)系數(shù)據(jù)庫(kù)與多維度 OLAP 數(shù)據(jù)庫(kù)之間的界線變得更加模糊。OLAP 數(shù)據(jù)庫(kù)分析應(yīng)用程序一直以來(lái)都具有著巨大的優(yōu)勢(shì),這些優(yōu)勢(shì)主要體現(xiàn)在以下幾個(gè)方面:

?

卓越的查詢性能、

?

豐富的分析功能,以及

?

其易于業(yè)務(wù)分析師使用的操作簡(jiǎn)單性。

不過,在實(shí)現(xiàn)這些功能的同時(shí)也帶來(lái)了一定的負(fù)面效應(yīng)。到目前為止,已經(jīng)發(fā)現(xiàn)的問題就有 OLAP 數(shù)據(jù)庫(kù)(包括 Analysis Services 2000 在內(nèi))很難交付以下內(nèi)容:

?

包括多對(duì)多關(guān)系的復(fù)雜架構(gòu)、

?

對(duì)廣泛屬性集的詳細(xì)報(bào)告,以及

?

低延遲數(shù)據(jù)。

通過將傳統(tǒng) OLAP 分析與關(guān)系報(bào)告二者的優(yōu)點(diǎn)相結(jié)合,Analysis Services 2005 能夠提供一個(gè)可以同時(shí)覆蓋這兩方面需求的統(tǒng)一維度模型。在 SQL Server 2005 中定義的一套多維數(shù)據(jù)集和維度被稱為統(tǒng)一維度模型 (Unified Dimensional Model),或 UDM。UDM 的優(yōu)勢(shì)和靈活性引發(fā)了設(shè)計(jì)領(lǐng)域的巨變。過去,BI 架構(gòu)師會(huì)權(quán)衡備選基礎(chǔ)結(jié)構(gòu)的收益和成本,并在關(guān)系數(shù)據(jù)庫(kù)和 OLAP 數(shù)據(jù)庫(kù)之間作出選擇。現(xiàn)在,架構(gòu)師可以設(shè)計(jì)一個(gè)“統(tǒng)一維度模型”,然后從傳統(tǒng)極限中確定一點(diǎn)用于放置 Analysis Services 系統(tǒng)邏輯設(shè)計(jì)和物理配置。

基于屬性的維度

Analysis Services 2005 圍繞維度的 屬性 ,而非維度的 層次 構(gòu)建多維數(shù)據(jù)集。在 Analysis Services 2000 中,維度設(shè)計(jì)由層次主宰,層次的示例有 {年、月、日} 或 {國(guó)家、地區(qū)、城市}。這些層次要求各層之間存在密切的數(shù)據(jù)關(guān)系。作為成員屬性和虛擬維度公開的“屬性”是“二等公民”。雖然有可能在物理維度中生成屬性,但性能因素卻使這一技術(shù)的廣泛使用大打折扣。熟悉關(guān)系結(jié)構(gòu)的用戶對(duì) OLAP 數(shù)據(jù)庫(kù)中對(duì)層次的過度側(cè)重深感困惑。

Analysis Services 2005 結(jié)構(gòu)與關(guān)系型維度結(jié)構(gòu)更為類似。一個(gè)維度可包含多個(gè)屬性,每個(gè)屬性都可用于切片和篩選查詢,同時(shí)每個(gè)查詢又可以合并到層次中,而不必考慮數(shù)據(jù)的相互關(guān)系。

有 OLAP 背景的用戶都知道強(qiáng)大的層次結(jié)構(gòu)的價(jià)值,有一點(diǎn)您可以肯定,那就是“城市”清晰地匯總為“地區(qū)”和“國(guó)家”。這種自然層次結(jié)構(gòu)依然存在,并應(yīng)在適當(dāng)?shù)奈恢眠M(jìn)行定義:查詢性能會(huì)因?yàn)檫@種層次結(jié)構(gòu)而得到提高。

例如,設(shè)想一個(gè)“客戶”維度。關(guān)系型源表有八列:

?

客戶鍵

?

客戶名稱

?

年齡

?

性別

?

電子郵件

?

城市

?

地區(qū)

?

國(guó)家

相應(yīng)的 Analysis Services 維度應(yīng)具有七個(gè)屬性:

?

客戶(整型鍵、以“客戶名稱”作為名稱)

?

年齡、性別、電子郵件、城市、地區(qū)、國(guó)家

數(shù)據(jù)中存在一種自然層次結(jié)構(gòu),{國(guó)家、地區(qū)、城市、客戶}。出于導(dǎo)航目的,應(yīng)用程序開發(fā)人員可以選擇創(chuàng)建第二個(gè)層次結(jié)構(gòu):{年齡、性別}。商務(wù)用戶并沒有看到這兩個(gè)層次結(jié)構(gòu)行為方式之間有何區(qū)別,但是,自然層次卻可以從深諳層次關(guān)系的索引結(jié)構(gòu)(對(duì)用戶隱藏)中受益。

新維度結(jié)構(gòu)的最大優(yōu)勢(shì)在于:

?

維度不需要加載到內(nèi)存中。因此,維度可以非常巨大(經(jīng)測(cè)試,Beta 2 可支持上千萬(wàn)名成員)。

?

用戶可以添加和刪除屬性層次結(jié)構(gòu),而不必再重新處理維度。屬性層次索引結(jié)構(gòu)屬輕型結(jié)構(gòu),在后臺(tái)計(jì)算,并不影響多維數(shù)據(jù)集查詢。

?

重復(fù)的維度信息被去除;使得維度更加輕巧。

?

由于引擎為并行處理創(chuàng)建了機(jī)會(huì),因此維度處理信息性能得到了改進(jìn)。

維度類型

Analysis Services 2000 中包括兩種維度類型:常規(guī)層次類型和父子類型。Analysis Services 2005 新增了一些重要的新維度結(jié)構(gòu)。其中有些結(jié)構(gòu)的名稱是臨時(shí)的,但是,這些名稱都是 BI 文獻(xiàn)中較為通用的。

?

角色扮演: 維度扮演著一些重要角色,具體哪些角色要依上下文而定。例如,[時(shí)間] 維度可能會(huì)被 [訂購(gòu)日期] 和 [發(fā)貨日期] 重用。在 2005 中,扮演著某些角色的維度只需存儲(chǔ)一次,便可多次使用。這樣便可使所需的硬盤空間和處理時(shí)間降至最低。

?

事實(shí): 事實(shí)或“退化”維度與事實(shí)(如事務(wù)編號(hào))具有一一對(duì)應(yīng)的關(guān)系。從本質(zhì)上講,退化維度不能用于分析,但可用作標(biāo)識(shí),以定位特定的事務(wù),或識(shí)別組成聚合單元的事務(wù)。

?

引用: 維度并不能夠直接和事實(shí)數(shù)據(jù)表發(fā)生聯(lián)系,但可通過另一維度間接發(fā)生聯(lián)系。這方面的原型示例有 [地理位置] 引用維度,它同時(shí)關(guān)聯(lián)了 [客戶] 和 [銷售團(tuán)隊(duì)] 兩個(gè)維度。引用維度可能由數(shù)據(jù)提供程序提供,并包括在多維數(shù)據(jù)集中,不必再修改事實(shí)數(shù)據(jù)。

?

數(shù)據(jù)挖掘: 數(shù)據(jù)挖掘維度支持從數(shù)據(jù)挖掘模型(包括群集、決策樹和關(guān)聯(lián)規(guī)則)生成的維度。

?

多對(duì)多: 這些維度有時(shí)被稱為多值維度。在大部分維度中,事實(shí)能且只能連接一個(gè)維度成員。多對(duì)多維度解決了多維度成員問題。例如,銀行儲(chǔ)蓄客戶可以有多個(gè)帳戶(支票、儲(chǔ)蓄);一個(gè)帳戶可以有多個(gè)客戶 (Mary Smith、John Smith)。[客戶] 維度有多個(gè)成員,這些成員都與一個(gè)帳戶事務(wù)相關(guān)聯(lián)。在維度不能夠直接關(guān)聯(lián)事實(shí)數(shù)據(jù)表時(shí),2005 多對(duì)多維度支持復(fù)雜的分析,并擴(kuò)展了維度模型,使之超越了傳統(tǒng)的星形架構(gòu)。

量度組和透視

Analysis Services 2005 引入了“量度組”和“透視”,以用來(lái)簡(jiǎn)化分析數(shù)據(jù)庫(kù)的設(shè)計(jì)和部署。在 Analysis Services 2000 中,鼓勵(lì)用戶構(gòu)建多個(gè)物理多維數(shù)據(jù)集。每個(gè)多維數(shù)據(jù)集相當(dāng)于一個(gè)特定的維度,通常還相當(dāng)于一個(gè)特定的關(guān)系事實(shí)數(shù)據(jù)表。虛擬多維數(shù)據(jù)集以一種對(duì)商務(wù)用戶透明,而對(duì)開發(fā)人員設(shè)計(jì)又不太復(fù)雜的方式,合并多個(gè)事實(shí)數(shù)據(jù)表。

在 2005 中,最通用的方案將具有一個(gè)包含一個(gè)或多個(gè)“量度組”的物理多維數(shù)據(jù)集。量度組中的事實(shí)數(shù)據(jù)具有特定的細(xì)化程度(由維度層次的交叉點(diǎn)定義)。查詢根據(jù)需要被自動(dòng)定向到不同的量度組。在物理層上,分區(qū)(與 Analysis Services 2000 分區(qū)類似)在“量度組”上定義。

大型應(yīng)用程序?qū)橛脩籼峁┐罅康木S度、量度組,而且還會(huì)給導(dǎo)航帶來(lái)難度。在“多維數(shù)據(jù)集編輯器”的“透視”選擇卡中定義的“透視”可以創(chuàng)建一個(gè)多維數(shù)據(jù)集的子集“視圖”。為了要提供一定程度的個(gè)性化,可以將安全性角色與適合該角色的透視集相關(guān)聯(lián)。

我們希望大部分的 Analysis Services 2005 數(shù)據(jù)庫(kù)都包含一個(gè)具有多個(gè)量度組和多個(gè)透視的多維數(shù)據(jù)集。

對(duì)多維數(shù)據(jù)集事實(shí)結(jié)構(gòu)和查詢性能所做的其他改進(jìn)有:

?

量度可以為空;在 SQL SERVER 2000 中,"null" 量度被當(dāng)作 0 處理。

?

適當(dāng)?shù)亩嗑S數(shù)據(jù)集分區(qū)使得“非重復(fù)計(jì)數(shù)度量值”的查詢性能得到了改進(jìn),性能值增加了幾個(gè)數(shù)量級(jí)。

?

對(duì)備選數(shù)據(jù)庫(kù)管理系統(tǒng)的訪問由可擴(kuò)展的部件基礎(chǔ)結(jié)構(gòu)提供。RDBMS 的部件用于指定如何為關(guān)系查詢和寫入優(yōu)化 SQL 語(yǔ)句。用戶可以輕松添加其他關(guān)系系統(tǒng)的部件;部件被作為 XSL 文件實(shí)現(xiàn)。

計(jì)算和分析

使用分析服務(wù)器(如 Analysis Services)最大的爭(zhēng)議之一就是其集中定義復(fù)雜計(jì)算的能力。Analysis Services 一直以來(lái)都能交付豐富的分析數(shù)據(jù),但對(duì)某些復(fù)雜概念卻很難實(shí)現(xiàn)。

其中一種概念就是半累積量度。最通用的量度值(如 [銷售額])能夠清晰地匯總所有維度:長(zhǎng)期以來(lái)的 [總銷售額] 是指所有產(chǎn)品、所有客戶在所有時(shí)間內(nèi)的銷售總額。相比之下,半累積量度值可能在某些維度中是累積的,而在其他的維度卻不是累積的。最常見的一個(gè)例子便是余額,如倉(cāng)庫(kù)中的貨品數(shù)。很顯然的,昨天和今天這兩天的余額總計(jì)肯定不等于昨天的余額加上今天的余額。相反,它可能是期末余額,雖然在有些情況下它是期初余額。在 Analysis Services 2000 中,您必須定義一個(gè)復(fù)雜的 MDX 計(jì)算,幫能交付正確的度量值。而在 Analysis Services 2005 中,期初余額和期末余額都是本機(jī)聚合類型。

非重復(fù)計(jì)數(shù)度量值在 2005 中也得到了很大的改進(jìn)?,F(xiàn)在,非重復(fù)計(jì)數(shù)度量值可定義在字符串?dāng)?shù)據(jù)上,而查詢可以被定義為在任意集合上執(zhí)行“非重復(fù)計(jì)算”。而 Analysis Services 2000 只能夠在預(yù)先定義的層次結(jié)構(gòu)上執(zhí)行非重復(fù)計(jì)算。

“時(shí)間智能”向?qū)?chuàng)建一個(gè)時(shí)間計(jì)算維度,其中包含該期間與最后期間的對(duì)比計(jì)算,可以移動(dòng)平均值,同時(shí)還可創(chuàng)建其他的通用時(shí)間計(jì)算構(gòu)造。

MDX 腳本

多維表達(dá)式 (MDX: MultiDimension Expression) 是一種功能非常強(qiáng)大的語(yǔ)言,可用于定義 Analysis Services 2000 計(jì)算和安全規(guī)則。MDX 功能強(qiáng)大,但也也很復(fù)雜。Analysis Services 2005 利用被簡(jiǎn)化了結(jié)構(gòu)和語(yǔ)法的“MDX 腳本”定義了一種新的計(jì)算模型。

MDX 還是 Analysis Services 系統(tǒng)中的查詢語(yǔ)言。查詢工具(如 Excel 透視表)根據(jù)用戶的“拖放”行為生成 MDX 查詢。MDX 的這種使用與“MDX 腳本”無(wú)關(guān);“MDX 腳本”用于服務(wù)器定義的對(duì)象,如計(jì)算成員和單元計(jì)算,并非用于用戶查詢。

在定義 Analysis Services 2005 多維數(shù)據(jù)集時(shí),其中只包含結(jié)構(gòu),而沒有數(shù)據(jù)。“MDX 腳本”是多維數(shù)據(jù)集結(jié)構(gòu)的組成部分。一般情況下都會(huì)定義一個(gè)默認(rèn)的“MDX 腳本”命令,用來(lái)計(jì)算默認(rèn)的聚合。默認(rèn)的“MDX 腳本”命令只包含一條語(yǔ)句:

    Calculate;
  

在多維數(shù)據(jù)集完全處理之后,應(yīng)用默認(rèn) MDX Script 之前,多維數(shù)據(jù)集將包含葉層級(jí)的數(shù)據(jù),但不包含聚合。在應(yīng)用單一語(yǔ)句的默認(rèn)“MDX 腳本”時(shí),將計(jì)算和存儲(chǔ)聚合。

“MDX 腳本”語(yǔ)句包含以下命令,用分號(hào)隔開:

?

限制語(yǔ)句作用域的作用域語(yǔ)句

?

公式和值分配

?

計(jì)算成員定義

?

命名集定義

在多維數(shù)據(jù)集的設(shè)計(jì)中,Business Intelligence Development Studio 的用戶界面和“MDX 腳本”均(其中包括計(jì)算成員和命名組)在“計(jì)算”視圖中構(gòu)建?!癕DX 腳本”可以在提供語(yǔ)法向?qū)У哪J(rèn)“計(jì)算表單”視圖中查看,也可以在“計(jì)算腳本”視圖中查看,這一視圖把“MDX 腳本”顯示為一組用分號(hào)分隔的命令。您可以在這兩個(gè)視圖間來(lái)回切換,雖然“表單”視圖的顯示要求整個(gè)腳本的語(yǔ)法必須正確。

“MDX 腳本”具有幾個(gè)主要功能:

?

腳本遵循過程模型:依次應(yīng)用語(yǔ)句?!癕DX 腳本”開發(fā)人員不需要再受傳遞次序的煩惱,他們得到充分的保護(hù),不必再擔(dān)心會(huì)編寫出引起無(wú)限制遞歸的腳本。

?

可包含計(jì)算:SCOPE 語(yǔ)句使您可以針對(duì)多維數(shù)據(jù)集的特定區(qū)域,定義一個(gè)或多個(gè)計(jì)算。例如:

            SCOPE ([Customers].[Country].[Country].[USA]);

            [Measures].[Sales] = 100;

            END SCOPE;

            
          
?

作用域可以嵌套。

?

可緩存計(jì)算:CACHE 關(guān)鍵字表示腳本計(jì)算結(jié)果應(yīng)存儲(chǔ)在磁盤上,而不是在執(zhí)行運(yùn)行時(shí)計(jì)算。在查詢包含大量復(fù)雜計(jì)算的大型多維數(shù)據(jù)集時(shí),緩存的計(jì)算可以實(shí)現(xiàn)非常高的查詢性能。當(dāng)輸入緩存計(jì)算更改時(shí),該計(jì)算便會(huì)被刪除和重建。

?

用戶可以對(duì)“MDX 腳本”進(jìn)行調(diào)試。您可以逐行完成“MDX 腳本”,瀏覽每步的多維數(shù)據(jù)集結(jié)果。

存儲(chǔ)過程

Analysis Services 2005 引入了存儲(chǔ)過程,來(lái)擴(kuò)展用戶定義功能 (UDF: User defined function) 所提供的能力。存儲(chǔ)過程可以用任何公共語(yǔ)言運(yùn)行時(shí)編程語(yǔ)言(例如 C++、Visual Basic 或 C)編寫。存儲(chǔ)過程允許一次性開發(fā)公共代碼、將代碼存儲(chǔ)在一個(gè)位置,并在其他存儲(chǔ)過程、計(jì)算和用戶查詢中重新使用所存儲(chǔ)的公共代碼,從而簡(jiǎn)化了數(shù)據(jù)庫(kù)的開發(fā)和實(shí)施。

在 Analysis Services 2005 中存在兩種類型的存儲(chǔ)過程:

?

MDX 函數(shù)存儲(chǔ)過程與任何其他的 MDX 函數(shù)相似,它提供了一種可輕松擴(kuò)展 MDX 語(yǔ)言的機(jī)制。

?

自定義存儲(chǔ)過程執(zhí)行特定于實(shí)施的任務(wù),例如多維數(shù)據(jù)集處理,或更新多維數(shù)據(jù)集部分中的單元。

存儲(chǔ)過程可用于執(zhí)行客戶端應(yīng)用程序可以執(zhí)行的任何任務(wù)。

關(guān)鍵績(jī)效指標(biāo)

Analysis Services 2005 為服務(wù)器端計(jì)算定義引入了關(guān)鍵績(jī)效指示 (KPI) 框架,用來(lái)衡量您的業(yè)務(wù)。這些 KPI 將通過數(shù)據(jù)訪問 API 和 Microsoft 與 第三 方工具,被顯示在報(bào)告、門戶和儀表板中。對(duì)于 Beta 2 版本而言,還沒有可用于顯示 KPI 的客戶端工具。

不同的評(píng)論員和供應(yīng)商用縮寫 "KPI" 指代不同的概念。對(duì)于 Microsoft SQL Server Analysis Services 2005,精確定義 KPI 的過程可分為以下四個(gè)步驟:

?

有待測(cè)量的值:物理度量值,如銷售額,計(jì)算度量值,如利潤(rùn),或在 KPI 中定義的計(jì)算,

?

值目標(biāo):定義度量值目標(biāo)的值(或解析為值的 MDX 表達(dá)式),

?

狀態(tài):評(píng)估當(dāng)前值狀態(tài)的 MDX 表達(dá)式,其正常值范圍從 -1(極差)到 +1(極佳),

?

趨勢(shì):評(píng)估當(dāng)前值趨勢(shì)的 MDX 表達(dá)式。相對(duì)其目標(biāo)而言,值是逐漸變好還是逐漸變壞?

以下是網(wǎng)頁(yè)上顯示的一些 KPI 示例:

obidws01.gif

實(shí)時(shí)商務(wù)智能

數(shù)據(jù)倉(cāng)庫(kù)和商務(wù)智能應(yīng)用程序過去都是使用“過時(shí)”的或高延遲的數(shù)據(jù),數(shù)據(jù)每月、每周或每天刷新一次。傳統(tǒng)擁護(hù)者斷言,實(shí)時(shí) BI 是相互矛盾的,因?yàn)榻y(tǒng)計(jì)決策不需要刷新頻率過高(超過每天一次)的數(shù)據(jù)。評(píng)論者忘記了一件事情,就是商務(wù)智能應(yīng)深入整個(gè)企業(yè),而不僅僅是將策略或制定的戰(zhàn)術(shù)決策部署給少數(shù)的分析家或行政執(zhí)行人員??刹僮鞯纳虅?wù)智能要求低延遲的數(shù)據(jù)。

Analysis Services 2005 為可操作的商務(wù)智能提供了新的處理選項(xiàng)。在 Analysis Services 2000 中,無(wú)論是多維數(shù)據(jù)集的存儲(chǔ)模式還是分區(qū)策略,都是用“拉”模型處理。啟動(dòng) Analysis Services 進(jìn)程在源數(shù)據(jù)庫(kù)中查找新的信息、處理可選存儲(chǔ)的詳細(xì)數(shù)據(jù),并計(jì)算和存儲(chǔ)聚合。

在 Analysis Services 2005 中仍支持“拉”模型,但結(jié)合了對(duì)低延遲商務(wù)智能異常有效的其他選項(xiàng)。

?

從 DTS 管道中推出數(shù)據(jù) ,或從自定義應(yīng)用程序中推出數(shù)據(jù)。數(shù)據(jù)可以從 DTS 包管道直接流入 Analysis Services 分區(qū),不用立即存儲(chǔ)。這種方案可用于降低分析數(shù)據(jù)的延遲(和存儲(chǔ)成本)。

?

按主動(dòng)緩存管理多維數(shù)據(jù)集, 以指定延遲和性能特性管理緩存,勿需管理干涉。

Analysis Services 多維存儲(chǔ)的查詢性能特性主宰著關(guān)系型存儲(chǔ)。簡(jiǎn)而言之,查詢針對(duì)多維 (MOLAP) 存儲(chǔ)執(zhí)行時(shí)效果最佳。其不足之處是延遲:多維存儲(chǔ)是從其關(guān)系源向下流動(dòng)的。主動(dòng)緩存技術(shù)的技巧就在于能夠在最小化數(shù)據(jù)延遲和管理成本的同時(shí)最大化查詢性能。

主動(dòng)緩存功能簡(jiǎn)化了管理數(shù)據(jù)過期問題的過程。如果事務(wù)發(fā)生在源數(shù)據(jù)庫(kù)(如新的維度成員或新的事實(shí)事務(wù))上,現(xiàn)有“緩存”便會(huì)過期。主動(dòng)緩存技術(shù)提供了一種可調(diào)整的機(jī)制,可確定重新構(gòu)建多維緩存的頻率;指定在重新構(gòu)建緩存時(shí)答復(fù)查詢的方式;在不需要任何管理干涉的情況下啟動(dòng)過程。

主動(dòng)緩存技術(shù)使您可以將多維數(shù)據(jù)集設(shè)置為在事務(wù)發(fā)生時(shí),自動(dòng)刷新其多維緩存。雖然 Analysis Services 處理數(shù)據(jù)速度非常快,但處理過程還是需要一些時(shí)間的。如果多維緩存處理過程沒有完成,主動(dòng)緩存配置便可以自動(dòng)將查詢重定向到相關(guān)的存儲(chǔ)。

在設(shè)計(jì)主動(dòng)緩存配置時(shí),一定要謹(jǐn)記必須為每個(gè)多維分區(qū)都設(shè)置主動(dòng)緩存。如果分區(qū)包括短時(shí)間范圍(如一小時(shí))內(nèi)的數(shù)據(jù),緩存刷新過程可能會(huì)發(fā)生的非???。最為復(fù)雜的主動(dòng)緩存配置依賴于從關(guān)系數(shù)據(jù)庫(kù)發(fā)往有更新發(fā)生的 Analysis Services 的通知。Microsoft SQL Server 關(guān)系數(shù)據(jù)庫(kù)支持這種通知。對(duì)于不能夠提交通知的數(shù)據(jù)庫(kù),可以將 Analysis Services 配置為根據(jù)定義的查詢,輪詢更改。

主動(dòng)緩存的參數(shù)有:

?

靜止期: 在服務(wù)器開始處理新信息前,關(guān)系源必須處于事務(wù)空閑狀態(tài)的時(shí)間量。該參數(shù)通常設(shè)置為一個(gè)小于十秒鐘的值。如果在關(guān)系源上存在許多連續(xù)的更新,則應(yīng)等待靜止期,以針對(duì)重復(fù)性刪除和重建緩存加以保護(hù)。

?

延遲: 允許用戶訪問過期數(shù)據(jù)的時(shí)間量。如果延遲設(shè)置為 0,則只要收到通知,用戶查詢就會(huì)被重定向到關(guān)系源。如果延遲設(shè)置為 600 秒,用戶則只能訪問十分鐘前的數(shù)據(jù)。如果設(shè)置為 -1,則表示用戶將一直訪問過期數(shù)據(jù),直至主動(dòng)緩存處理完畢。

?

靜默覆蓋間隔: 更改通知與主動(dòng)緩存處理開始之間的最大持續(xù)時(shí)間。如果源數(shù)據(jù)庫(kù)被不斷更新,此參數(shù)將覆蓋“靜止期”設(shè)置。

?

強(qiáng)制重建間隔: 當(dāng)源數(shù)據(jù)庫(kù)系統(tǒng)不能提供更新通知時(shí),可使用此參數(shù)提供簡(jiǎn)單的主動(dòng)緩存功能。如果源數(shù)據(jù)在 SQL Server RDBMS 中,則應(yīng)將該參數(shù)設(shè)置為 0。

數(shù)據(jù)挖掘

概述

Microsoft SQL Server 2005 Data Mining(數(shù)據(jù)挖掘)屬于商務(wù)智能技術(shù),它可幫助您構(gòu)建復(fù)雜的分析模型,并使其與您的業(yè)務(wù)操作相集成。數(shù)據(jù)挖掘可回答如下問題

?

該客戶的信用風(fēng)險(xiǎn)如何?

?

客戶的特征如何?

?

人們?cè)敢馔瑫r(shí)購(gòu)買哪些產(chǎn)品?

?

下個(gè)月能賣出多少產(chǎn)品?

數(shù)據(jù)挖掘應(yīng)用程序?qū)?shù)據(jù)挖掘模型集成到日常的業(yè)務(wù)運(yùn)營(yíng)之中。許多數(shù)據(jù)挖掘項(xiàng)目的目標(biāo)是構(gòu)建可供業(yè)務(wù)用戶、合作伙伴和客戶使用的分析應(yīng)用程序,而不必理會(huì)應(yīng)用程序底層的復(fù)雜計(jì)算。要實(shí)現(xiàn)這一目標(biāo),需要執(zhí)行兩個(gè)主要步驟:構(gòu)建數(shù)據(jù)挖掘模型并構(gòu)建應(yīng)用程序。SQL Server 2005 Data Mining 使這些步驟比以往更加簡(jiǎn)單。

Microsoft 2005 中數(shù)據(jù)挖掘功能的目標(biāo)是構(gòu)建具備以下特征的工具:

?

簡(jiǎn)單易用

?

可提供一整套的功能

?

可輕松嵌入到產(chǎn)品應(yīng)用程序中

?

緊密集成其他的 SQL Server BI 技術(shù),以及

?

能夠擴(kuò)展數(shù)據(jù)挖掘應(yīng)用程序的市場(chǎng)。

可以肯定,本白皮書的每位讀者幾乎都曾“使用”過數(shù)據(jù)挖掘應(yīng)用程序。如果您已在線購(gòu)得了本書或音樂,并收到了“購(gòu)買此產(chǎn)品的其他客戶”的建議,或者,如果信用卡公司要求您確認(rèn)一宗可疑交易,或者,食品店在收條上打印個(gè)性化優(yōu)惠券,所有這些,都是您從使用數(shù)據(jù)挖掘應(yīng)用程序中得到的好處。時(shí)至今日,這種應(yīng)用程序的開發(fā)已集中于解決大型公司所面臨的最大問題,這些公司能夠承受分析能力的匱乏以及巨額的開發(fā)費(fèi)用,而這些都是過去用傳統(tǒng)方法構(gòu)建數(shù)據(jù)挖掘應(yīng)用程序所需面對(duì)的。正如 Microsoft 的 OLAP 技術(shù)已推動(dòng)了 OLAP 市場(chǎng)增長(zhǎng)一樣,我們期望能夠?qū)?shù)據(jù)挖掘技術(shù)推廣開來(lái),使那些在過去不能開發(fā)這種應(yīng)用程序的企業(yè)和部門也能夠加入到其開發(fā)行列中來(lái)。

使用 SQL Server 2005 Data Mining 工具開發(fā)一套數(shù)據(jù)模式,然后在這些模式的基礎(chǔ)上隨意執(zhí)行預(yù)測(cè)。這是所有數(shù)據(jù)挖掘的模式:開發(fā)、模式發(fā)現(xiàn)和模式預(yù)測(cè)。

數(shù)據(jù)挖掘算法

所有數(shù)據(jù)挖掘工具(包括 Microsoft SQL Server 2005 Analysis Services)都采用了多種算法。當(dāng)然,Analysis Services 是可擴(kuò)展的;第三方 ISV 可以開發(fā)算法,并將所開發(fā)的算法無(wú)縫地融入到 Analysis Services 數(shù)據(jù)挖掘框架之中。根據(jù)數(shù)據(jù)和目標(biāo)的不同,應(yīng)該采用不同的算法,而且每種算法都可用于解決多個(gè)問題。

數(shù)據(jù)挖掘工具擅長(zhǎng)解決多種類型的問題。下表概括了業(yè)務(wù)問題的大致分類:

分析問題 示例 Microsoft 算法

分類 :為案例分配預(yù)定義的級(jí)別(如“好”與“差”)

?

信用風(fēng)險(xiǎn)分析

?

客戶流失分析

?

客戶挽留

?

決策樹

?

貝葉斯算法

?

神經(jīng)網(wǎng)絡(luò)

分割 :開發(fā)一種按相似案例分組的分類方法

?

客戶資料分析

?

郵件推銷活動(dòng)

?

群集

?

順序群集

關(guān)聯(lián) :相關(guān)性高級(jí)計(jì)算

?

購(gòu)物籃分析

?

高級(jí)數(shù)據(jù)研究

?

決策樹

?

相關(guān)規(guī)則

時(shí)間序列預(yù)測(cè) :預(yù)測(cè)未來(lái)

?

預(yù)測(cè)銷售

?

預(yù)測(cè)股票價(jià)格

?

時(shí)間序列

預(yù)測(cè) :根據(jù)相似案例(如現(xiàn)有客戶)的值預(yù)測(cè)新方案(如新客戶)的值

?

提供保險(xiǎn)率

?

預(yù)測(cè)客戶收入

?

預(yù)測(cè)溫度

?

全部

偏差分析 :發(fā)現(xiàn)案例或群體與其他案例和群體之間的差別

?

信用卡欺騙檢測(cè)

?

網(wǎng)絡(luò)入侵分析

?

全部

SQL Server 2005 中附帶了最流行的數(shù)據(jù)挖掘算法。

?

Microsoft Decision Trees (決策樹)通常是數(shù)據(jù)研究的起始點(diǎn)。它是主要的分類算法,對(duì)離散和連接屬性的可預(yù)測(cè)建模效果很好。用算法構(gòu)建模型時(shí),它著眼于數(shù)據(jù)集中每個(gè)輸入屬性是如何影響預(yù)測(cè)屬性的結(jié)果的。其目標(biāo)是找到一個(gè)輸入屬性及其狀態(tài)的組合,使您能夠預(yù)測(cè)出所預(yù)測(cè)屬性的輸出結(jié)果。

?

Microsoft Na?ve Bayes (貝葉斯算法)能夠快速構(gòu)建可用于分類和預(yù)測(cè)的數(shù)據(jù)挖掘模型。如果知道可預(yù)測(cè)屬性的每種狀態(tài),便可計(jì)算出輸入屬性每個(gè)可能狀態(tài)的概率。這種算法只支持離散(不連續(xù))屬性,它認(rèn)為所有輸入屬性都是彼此獨(dú)立的(前提是知道可預(yù)測(cè)屬性)。因?yàn)樨惾~斯算法的計(jì)算速度非???,因此在初始數(shù)據(jù)研究階段通常會(huì)選擇這種算法進(jìn)行分類和預(yù)測(cè)問題。

?

Microsoft Clustering 使用迭代技術(shù)將來(lái)自數(shù)據(jù)集的記錄分成若干個(gè)包含相似特性的簇。通過使用這些簇,您可以研究數(shù)據(jù),找出彼此之間的相互關(guān)系。您還可以從群集模型創(chuàng)建預(yù)測(cè)。

?

Microsoft Association 基于 priori 算法,它為在大型數(shù)據(jù)集中查找多路關(guān)聯(lián)提供了一種有效的方法。Association 算法在數(shù)據(jù)庫(kù)所有事務(wù)中循環(huán),在單一用戶事務(wù)中查找最有可能同時(shí)出現(xiàn)的項(xiàng)目。關(guān)聯(lián)的項(xiàng)目被分到一起,放入項(xiàng)目集中,生成可用于預(yù)測(cè)的規(guī)則。Microsoft Association 通常用于購(gòu)物籃分析。對(duì)于 Association 分析而言,執(zhí)行大量“非重復(fù)計(jì)數(shù)”的關(guān)系或 OLAP 分析是一個(gè)值得考慮的選擇。Microsoft Association 算法對(duì)算法參數(shù)的選擇很敏感,因此,對(duì)于一些小問題,使用 Microsoft Decision Trees 算法進(jìn)行購(gòu)物籃分析可能效果更佳。

?

Microsoft Sequence Clustering 將順序分析與在數(shù)據(jù)研究和預(yù)測(cè)中使用的群集方法結(jié)合在了一起。順序群集模型對(duì)事物發(fā)生次序很敏感。此外,群集算法還考慮到記錄群集中的其他屬性,使您可以開發(fā)關(guān)聯(lián)順序和非順序信息的模型。Sequence Clustering 算法將被用于執(zhí)行點(diǎn)擊流分析,以便于分析 Web 站點(diǎn)的通信流量、識(shí)別與特殊產(chǎn)品銷售關(guān)系最為密切的頁(yè)面,并預(yù)測(cè)接下來(lái)要訪問的頁(yè)面。

?

Microsoft Time Series (時(shí)間序列)會(huì)創(chuàng)建可用于預(yù)測(cè)一個(gè)或多個(gè)連續(xù)變量(如股票價(jià)格)的模型。Time Series 算法的預(yù)測(cè)完全依據(jù)于在模型創(chuàng)建過程中從培訓(xùn)數(shù)據(jù)中推導(dǎo)得出的趨勢(shì)。Microsoft Time Series 使用 AutoRegression Trees 技術(shù),非常簡(jiǎn)單易用,并可生成精確度極高的模型。在該算法中有一條專門用于時(shí)間序列的統(tǒng)計(jì)分析規(guī)則。大多數(shù)其他數(shù)據(jù)挖掘產(chǎn)品都提供了多項(xiàng)技術(shù),如 ARMA、ARIMA 和 Box-Jenkins,統(tǒng)計(jì)師必須在這些技術(shù)中確定模型的最佳技術(shù)選擇。Microsoft 選擇了一種方法,既可使廣泛的受眾能夠理解時(shí)間序列,又具備異常精確的結(jié)果。

?

Microsoft Neural Net 和 Decision Trees 及 Na?ve Bayes 一樣,主要用于數(shù)據(jù)研究、分類和預(yù)測(cè)。Neural Net 是一種人工智能技術(shù),該技術(shù)可以利用所有可能的數(shù)據(jù)關(guān)系。因?yàn)樗且环N非常徹底的技術(shù),因此它是三個(gè)分類算法中最慢的算法。

構(gòu)建挖掘模型

模型的構(gòu)建、培訓(xùn)和測(cè)試過程是創(chuàng)建應(yīng)用程序過程中最為困難的一部分。正如下面我們要討論的,實(shí)際開發(fā)應(yīng)用程序是一個(gè)簡(jiǎn)單的編程過程。在開始構(gòu)建數(shù)據(jù)挖掘模型之前,您應(yīng)當(dāng)已經(jīng)收集和清理了您的數(shù)據(jù),這些數(shù)據(jù)極有可能位于數(shù)據(jù)倉(cāng)庫(kù)中。SQL Server 2005 Data Mining 可以從關(guān)系數(shù)據(jù)庫(kù)或 Analysis Services 多維數(shù)據(jù)中訪問數(shù)據(jù)。

開發(fā)數(shù)據(jù)挖掘模型的最佳人選是同時(shí)具備業(yè)務(wù)和技術(shù)技巧的人員。模型的開發(fā)人員將會(huì)從其統(tǒng)計(jì)背景中獲益、了解企業(yè)面臨的關(guān)鍵業(yè)務(wù)問題、對(duì)數(shù)據(jù)和關(guān)系產(chǎn)生極大的好奇心,同時(shí)還能夠利用 SQL Server 2005 工具處理和存儲(chǔ)數(shù)據(jù)?,F(xiàn)有數(shù)據(jù)倉(cāng)庫(kù)小組中的成員最有可能遇到這些標(biāo)準(zhǔn)。

作為數(shù)據(jù)挖掘的初學(xué)者,應(yīng)在構(gòu)建原型模型的同時(shí),計(jì)劃花費(fèi)數(shù)周時(shí)間來(lái)研究數(shù)據(jù)、工具以及可供選擇的算法。使用一臺(tái)您具備數(shù)據(jù)庫(kù)管理權(quán)限的開發(fā)服務(wù)器。構(gòu)建模型的最初階段是探索階段:您可能會(huì)希望以不同的方法來(lái)重新構(gòu)建數(shù)據(jù)和實(shí)驗(yàn)。當(dāng)然,您肯定希望從少量數(shù)據(jù)子集開始,并在開發(fā)愈加清晰的模型設(shè)計(jì)時(shí)擴(kuò)展數(shù)據(jù)集。在原型階段,不要為如何構(gòu)建一個(gè)“可供生產(chǎn)使用”的應(yīng)用程序而擔(dān)心。使用 DTS 或執(zhí)行任何所需數(shù)據(jù)處理最為舒適的任何工具。保存一份記錄有必要轉(zhuǎn)換的高級(jí)日志,但不要期望您所做的一卻都能成為永久應(yīng)用程序的一部分。

您應(yīng)當(dāng)準(zhǔn)備兩套數(shù)據(jù):一套用于開發(fā)模型,而另一套用于測(cè)試模型的精確度,從中選擇適合您業(yè)務(wù)問題最佳模型。在考慮如何劃分?jǐn)?shù)據(jù)子集時(shí),要確保沒有引入任何偏差。例如,從十個(gè)客戶中選擇一個(gè)客戶,或根據(jù)姓氏的第一個(gè)字符區(qū)分,或根據(jù)一些其他任意屬性區(qū)分。

開發(fā)數(shù)據(jù)挖掘模型的過程涉及選擇以下內(nèi)容:

?

輸入數(shù)據(jù)集、

?

輸入字段、

?

數(shù)據(jù)挖掘算法,以及

?

該算法在計(jì)算過程中所用到的參數(shù)。

如果不知道哪種類型的算法適合處理您的業(yè)務(wù)問題,請(qǐng)先從“決策樹”或“貝葉斯”入手研究數(shù)據(jù)。如果不知道要包括哪些屬性,就選擇所有屬性。使用相關(guān)性網(wǎng)絡(luò)視圖,從中獲得可幫助您簡(jiǎn)化復(fù)雜模型的視圖。

在原型開發(fā)階段,您可能希望構(gòu)建相關(guān)模型,以便評(píng)估最佳算法和模型。使用“挖掘精度”圖表評(píng)估在預(yù)測(cè)中效果最佳的模型。您可能還希望構(gòu)建相關(guān)模型,對(duì)相同的數(shù)據(jù)執(zhí)行不同類型的分析。這些模型在作為相關(guān)模型時(shí)的處理速度要比作為獨(dú)立定義模型時(shí)的處理速度快。

在構(gòu)建和測(cè)試原型后,便可以構(gòu)建和測(cè)試實(shí)際數(shù)據(jù)挖掘模型。在將數(shù)據(jù)輸入數(shù)據(jù)挖掘引擎前,如果需要轉(zhuǎn)換數(shù)據(jù),那么為了要實(shí)現(xiàn)這些操作,應(yīng)當(dāng)開發(fā)可供生產(chǎn)用的操作流程。在某些情況下,可能要選擇從 DTS 管道直接植入挖掘模型。如果在少量數(shù)據(jù)的基礎(chǔ)上開發(fā)原型,將需要在整套培訓(xùn)數(shù)據(jù)的基礎(chǔ)上重新評(píng)估備選模型。

構(gòu)建數(shù)據(jù)挖掘應(yīng)用程序

在 Business Intelligence Development Studio 中開發(fā)和研究數(shù)據(jù)挖掘模型可使企業(yè)獲得巨大的價(jià)值。您可以瀏覽模型,了解數(shù)據(jù)與業(yè)務(wù)之間的關(guān)系,并使用該信息促進(jìn)策略決策的制定。但是,其最大的價(jià)值還是來(lái)自可以影響公司日常操作的數(shù)據(jù)挖掘應(yīng)用程序:例如,向客戶推薦產(chǎn)品、記錄客戶信用風(fēng)險(xiǎn),或根據(jù)預(yù)測(cè)的庫(kù)存不足下訂單的數(shù)據(jù)挖掘應(yīng)用程序。要開發(fā)可操作的數(shù)據(jù)挖掘應(yīng)用程序,您需要跳出 Business Intelligence Development Studio 的圈子,并用 Microsoft Visual Studio 或您選擇的其他開發(fā)環(huán)境編寫代碼。

大部分企業(yè)客戶都將面向客戶的數(shù)據(jù)挖掘應(yīng)用程序?qū)嵤榛?web 的 Win32 應(yīng)用程序,如 ASP 頁(yè)。數(shù)據(jù)挖掘模型業(yè)已構(gòu)建完畢,而且應(yīng)用程序也可以根據(jù)客戶的選擇或在 web 商務(wù)應(yīng)用程序中輸入的內(nèi)容,為客戶執(zhí)行預(yù)測(cè)。這可能是十分簡(jiǎn)單的應(yīng)用程序;唯一不尋常的部分是發(fā)布預(yù)測(cè)查詢。

數(shù)據(jù)挖掘應(yīng)用程序開發(fā)人員不一定就是開發(fā)數(shù)據(jù)挖掘模型的人員。應(yīng)用程序開發(fā)人員應(yīng)具備一流的開發(fā)技能,而對(duì)業(yè)務(wù)或統(tǒng)計(jì)知識(shí)的需求則相對(duì)較低。

Microsoft 的數(shù)據(jù)挖掘技術(shù)大大地簡(jiǎn)化了構(gòu)建自動(dòng)化數(shù)據(jù)挖掘應(yīng)用程序的過程。其中共有兩個(gè)步驟:

?

開發(fā)數(shù)據(jù)挖掘預(yù)測(cè)查詢,其 DMX 語(yǔ)法在“數(shù)據(jù)挖掘”規(guī)范的 OLE DB 中定義。不需要手工編寫 DMX,用戶只需單擊 Business Intelligence Development Studio 編輯器左欄上的“挖掘模型預(yù)測(cè)”圖標(biāo)即可?!邦A(yù)測(cè)查詢構(gòu)建器”圖形化工具會(huì)幫助您開發(fā)預(yù)測(cè)查詢。

?

在數(shù)據(jù)挖掘應(yīng)用程序中使用預(yù)測(cè)查詢。如果應(yīng)用程序只使用 DMX 便可完成預(yù)測(cè),則項(xiàng)目應(yīng)包括 ADO、ADO.Net 或 ADOMD.Net 等類引用(建議在 Beta 1 之后的開發(fā)中使用 ADOMD.Net)。如果您正在構(gòu)建一個(gè)更為復(fù)雜的應(yīng)用程序(例如要顯示用戶挖掘模型查看器,如“決策樹查看器”),將需要包括 Microsoft.AnalysisServices 和 Microsoft.AnalysisServices.Viewers 類。

有些客戶(主要是獨(dú)立軟件供應(yīng)商)希望創(chuàng)建可生成數(shù)據(jù)挖掘模型的應(yīng)用程序。這種應(yīng)用程序可能會(huì)替代在 Business Intelligence Development Studio 中開發(fā)挖掘模型,但可能只適用于特定的領(lǐng)域,如 web 分析。在這種情況下,開發(fā)項(xiàng)目就需要包括 Microsoft.DataWarehouse.Interfaces,以便可以獲得對(duì) AMO(Analysis Management Objects,分析管理對(duì)象)的訪問權(quán)限。

DMX 示例

數(shù)據(jù)挖掘過程包括三個(gè)步驟,分別為創(chuàng)建數(shù)據(jù)挖掘模型、培訓(xùn)模型和根據(jù)模型預(yù)測(cè)行為,這三個(gè)步驟都可通過簡(jiǎn)單、類似 SQL 編程語(yǔ)言的 DMX 來(lái)實(shí)現(xiàn)。示例語(yǔ)法如下所示;DMX 的完整使用方法可從聯(lián)機(jī)叢書中獲得。

創(chuàng)建數(shù)據(jù)挖掘模型:

    CREATE MINING MODEL CreditRisk

(CustID????????LONG KEY,

Gender????????TEXT DISCRETE,

Income????????LONG CONTINUOUS,

Profession????TEXT DISCRETE,

Risk????????TEXT DISCRETE PREDICT)

USING Microsoft_Decision_Trees


  

培訓(xùn)數(shù)據(jù)模型:

    INSERT INTO CreditRisk

(CustId, Gender, Income, Profession, Risk)

SELECT CustomerID, Gender, Income, Profession, Risk

From Customers


  

根據(jù)數(shù)據(jù)挖掘模型預(yù)測(cè)行為:

    SELECT NewCustomers.CustomerID, CreditRisk.Risk,

PredictProbability(CreditRisk)

FROM CreditRisk PREDICTION JOIN NewCustomers

ON CreditRisk.Gender=NewCustomer.Gender

AND CreditRisk.Income=NewCustomer.Income

AND CreditRisk.Profession=NewCustomer.Profession


  

Reporting Services

隨著 Microsoft SQL Server 2005 的發(fā)布,Microsoft 在其集成商務(wù)智能平臺(tái)中拓展了一個(gè)新的主要組件。即 SQL Server Reporting Services,該組件使得人們不管在任何商業(yè)環(huán)境中,都可將適當(dāng)?shù)男畔⑺瓦_(dá)適當(dāng)?shù)娜藛T,從而擴(kuò)展了 Microsoft 的商務(wù)智能發(fā)展前景。

Reporting Services 是一個(gè)基于服務(wù)器的完整平臺(tái),可創(chuàng)建、管理和交付傳統(tǒng)報(bào)告和交互式報(bào)告。它包括您創(chuàng)建、分發(fā)和管理報(bào)告所需的一切工具和信息。同時(shí),產(chǎn)品的標(biāo)準(zhǔn)模塊化設(shè)計(jì)和應(yīng)用程序編程接口 (API) 使軟件開發(fā)人員、數(shù)據(jù)提供商和企業(yè)能夠集成原有系統(tǒng)或第三方應(yīng)用程序中的報(bào)告功能。

Reporting Services 隨 SQL Server 2005 一起發(fā)布,其中包括:

?

用于創(chuàng)建、管理和查看報(bào)告的一整套工具

?

用于承載和處理報(bào)告的引擎

?

可將報(bào)告嵌入到(或?qū)⒔鉀Q方案集成到)不同 IT 環(huán)境中的可擴(kuò)展體系結(jié)構(gòu)與開放式接口。

為什么使用 Reporting Services?

毫無(wú)疑問,能夠在適當(dāng)?shù)臅r(shí)間將適當(dāng)?shù)男畔⑺瓦_(dá)適當(dāng)?shù)娜藛T具有巨大的價(jià)值。對(duì)于許多企業(yè)而言,這是一個(gè)挑戰(zhàn),因?yàn)檫@些需要訪問信息的人員不但具有廣泛的技術(shù)專業(yè)背景,而且還可能分散在整個(gè)傳統(tǒng)組織內(nèi)的不同位置,甚至于組織之外。

Reporting Services 通過靈活的訂閱和交付機(jī)制簡(jiǎn)化了傳統(tǒng)報(bào)告與交互式報(bào)告的創(chuàng)建過程,并可將這些報(bào)告順利地交付給廣泛的人群。它還為處理復(fù)雜苛刻的商業(yè)環(huán)境提供了必要的安全性和可管理性。

Reporting Services 提供了獨(dú)一無(wú)二的屬性組合:

?

完整的、基于服務(wù)器的報(bào)告平臺(tái) :Reporting Services 支持從創(chuàng)建報(bào)告到提交報(bào)告和后續(xù)管理的整個(gè)報(bào)告生命周期。

?

靈活可擴(kuò)展的報(bào)告功能 :Reporting Services 具用可擴(kuò)展的交付選項(xiàng),可同時(shí)支持眾多格式的傳統(tǒng)報(bào)告和交互式報(bào)告。它可通過開放式的 API 和接口輕松集成到任何環(huán)境或解決方案中。

?

可伸縮性 :產(chǎn)品基于 web 的標(biāo)準(zhǔn)化模塊設(shè)計(jì),可輕松擴(kuò)展為支持高數(shù)據(jù)容量的環(huán)境。您能夠創(chuàng)建具有多個(gè)報(bào)告服務(wù)器的報(bào)告服務(wù)器場(chǎng),訪問同一核心報(bào)告,為數(shù)以千計(jì)的 web 客戶端提供服務(wù)。

?

與 Microsoft 產(chǎn)品和工具的集成 :Reporting Services 隨 SQL Server 一起發(fā)布,可輕松集成我們所熟悉的 Microsoft 工具,如 Office 和 SharePoint Portal Server,無(wú)需進(jìn)行編程和自定義設(shè)置。

使用 Reporting Services 的途徑

由于 Reporting Services 是結(jié)合可伸縮、可擴(kuò)展體系結(jié)構(gòu)的單一完整的報(bào)告平臺(tái),因此它可滿足范圍廣泛的報(bào)告需求。

?

企業(yè) 報(bào)告: 企業(yè)可在內(nèi)部報(bào)告和商務(wù)智能應(yīng)用程序中使用 Reporting Services。許多公司都創(chuàng)建數(shù)據(jù)集市或倉(cāng)庫(kù)來(lái)匯總操作數(shù)據(jù)。通過使用 Reporting Services,公司的 IT 員工可以設(shè)計(jì)各種報(bào)告,并將這些報(bào)告通過電子郵件分發(fā),或在公司門戶上發(fā)布,將這些報(bào)告部署給的整個(gè)企業(yè)中的個(gè)人。Reporting Service 作為集成在 Microsoft BI 平臺(tái)中的一項(xiàng)綜合報(bào)告解決方案,為企業(yè)提供了巨大的價(jià)值。

?

嵌入式報(bào)告: 獨(dú)立軟件供應(yīng)商 (ISV) 可以使用 Reporting Services 將報(bào)告預(yù)先定義為打包應(yīng)用程序(隨 Microsoft SQL Server 同時(shí)運(yùn)行的)的一部分??蛻舻?IT 組織可按原樣訪問這些報(bào)告,或使用 Reporting Services 自定義報(bào)告,或?yàn)樘囟I(yè)務(wù)需求創(chuàng)建新報(bào)告。Reporting Services 為獨(dú)立軟件供應(yīng)商 (ISV) 提供了一種在應(yīng)用程序中嵌入靈活的交互式報(bào)告的簡(jiǎn)單方法。

?

為合作伙伴/客戶設(shè)計(jì)的 Web 報(bào)告: 組織可以將傳統(tǒng)報(bào)告或交互式 web 報(bào)告部署為通過外部網(wǎng)絡(luò)與客戶或合作伙伴交互。Reporting Services 在提供個(gè)性化和互動(dòng)性的同時(shí),還使報(bào)告客戶擺脫了復(fù)雜的底層數(shù)據(jù)源。

Reporting Services 功能

Reporting Services 將集中式托管報(bào)告系統(tǒng)的優(yōu)點(diǎn)與桌面及基于 Web 應(yīng)用程序的靈活性和按需選擇性集于一身。Reporting Services 是一個(gè)完整的報(bào)告平臺(tái),支持從報(bào)告創(chuàng)建到報(bào)告部署的整個(gè)報(bào)告生命周期。

制作報(bào)告

Reporting Services 包括創(chuàng)建傳統(tǒng)報(bào)告或交互式報(bào)告所需的一切工具及技術(shù),其中包括具有報(bào)告設(shè)計(jì)向?qū)Чδ艿膱D形化報(bào)告設(shè)計(jì)器工具。

報(bào)告制作功能 詳細(xì)信息

受到廣泛支持的數(shù)據(jù)源

Microsoft SQL Server

Microsoft Analysis Services

所有兼容 OLE DB 的數(shù)據(jù)源

所有兼容 ODBC 的數(shù)據(jù)源

靈活的制作工具

報(bào)告設(shè)計(jì)器(使用 Visual Studio 2005)

基于 XML 的報(bào)告定義語(yǔ)言 (RDL)

生成 RDL 的第三方工具

靈活的報(bào)告格式

自由格式

表格

矩陣

圖表

使用運(yùn)行時(shí)篩選的參數(shù)化報(bào)告

排序和分組

演練

鏈接的報(bào)告

模塊化報(bào)告執(zhí)行

轉(zhuǎn)換是從查詢流程中分離出來(lái)的一個(gè)流程;同一份報(bào)告可能轉(zhuǎn)換為不同的格式。

執(zhí)行可按計(jì)劃執(zhí)行,也可以按需執(zhí)行。

管理報(bào)告

Reporting Services 包括基于 web 的工具,可用于管理報(bào)告和報(bào)告服務(wù)器 Web 應(yīng)用程序。管理員可使用此界面為報(bào)告定義基于角色的安全性、編排報(bào)告執(zhí)行和提交,以及跟蹤報(bào)告歷史。或者,企業(yè)或 ISV 可以使用 Reporting Services Web Services API 編寫自定的管理工具。

由于報(bào)告定義、文件夾和資源都存儲(chǔ)在 SQL Server 數(shù)據(jù)庫(kù)中,因此,您可以使用其他工具(如 SQL Server Management Studio)管理元數(shù)據(jù),或使用那些充分采納已發(fā)布 API 的第三方應(yīng)用程序。

Reporting Services 實(shí)施了一個(gè)靈活、基于角色的安全模型,用來(lái)保護(hù)報(bào)告和報(bào)告資源。這一功能可根據(jù)各種不同的安全需求量身定做。該產(chǎn)品包括根據(jù)需要集成其他安全模型的可擴(kuò)展接口。

報(bào)告管理功能 詳細(xì)信息

報(bào)告元數(shù)據(jù)

?

名稱

?

描述

數(shù)據(jù)源管理

?

連接

?

憑據(jù)

參數(shù)管理

?

默認(rèn)

?

提示

報(bào)告編排

集成 SQL Server 代理

執(zhí)行屬性

實(shí)時(shí)、緩存或快照。Reporting Services 快照是報(bào)告數(shù)據(jù)集(運(yùn)行報(bào)告快照時(shí)報(bào)告的源查詢結(jié)果)的存儲(chǔ)副本。

報(bào)告執(zhí)行的歷史

被保留下來(lái),以供需要時(shí)再次使用的快照分類列表

報(bào)告安全性

?

用戶、組和角色

報(bào)告服務(wù)器 Web 應(yīng)用程序

基于 Web 的管理工具,這些工具可用于:

?

定義安全性

?

安排報(bào)告的執(zhí)行和提交

?

跟蹤報(bào)告歷史

靈活的管理 API

Web 服務(wù) API

提交報(bào)告

您可以將報(bào)告提交到門戶、將其以電子郵件的形式發(fā)送給用戶,或讓用戶使用基于 web 的報(bào)告服務(wù)器從文件夾層級(jí)中訪問報(bào)告。導(dǎo)航、搜索和訂閱功能可幫助用戶根據(jù)其需要定位和運(yùn)行報(bào)告。個(gè)性化的訂閱功能可讓用戶自行選擇自己喜歡的轉(zhuǎn)換格式。

報(bào)告提交功能 詳細(xì)信息

報(bào)告轉(zhuǎn)換選項(xiàng)的范圍

?

Web 格式 (HTML)

?

打印格式 (PDF, TIFF)

?

數(shù)據(jù) (Excel, XML, CSV)

?

通過開放式 API 實(shí)現(xiàn)的其他格式

靈活的提交選項(xiàng)

?

按計(jì)劃

?

由事件驅(qū)動(dòng)

?

個(gè)性化的訂閱

?

顯示的報(bào)告或鏈接交付

?

數(shù)據(jù)驅(qū)動(dòng)的訂閱

?

集成的其他應(yīng)用程序

總結(jié)

Microsoft SQL Server 2005 是一個(gè)完整的商務(wù)智能平臺(tái),它所提供的基礎(chǔ)結(jié)構(gòu)和服務(wù)器組件可用于構(gòu)建:

?

易于查詢且維護(hù)成本較低的大型復(fù)雜數(shù)據(jù)倉(cāng)庫(kù);

?

較小規(guī)模的企業(yè)或大型企業(yè)中的部門可以輕松構(gòu)建和管理小型報(bào)告和分析系統(tǒng);

?

向操作用戶交付分析數(shù)據(jù)的低延遲系統(tǒng);

?

閉環(huán)分析和數(shù)據(jù)挖掘系統(tǒng);以及

?

擴(kuò)展商務(wù)智能的嵌入式系統(tǒng)。

為用戶所熟悉的工具(SQL Server 關(guān)系數(shù)據(jù)庫(kù)、DTS、Reporting Services 和 Analysis Services OLAP 以及數(shù)據(jù)挖掘)也都得到了極大的改進(jìn)。新增功能(如 Business Intelligence Development Studio 和 SQL Server Management Studio)進(jìn)一步擴(kuò)展了 Microsoft BI 平臺(tái)。每個(gè)工具都具有創(chuàng)新性,其設(shè)計(jì)都可令您事半功倍:用比以前更少的硬件、規(guī)模更小的團(tuán)隊(duì)更快更好地構(gòu)建、部署和管理重要的商務(wù)智能應(yīng)用程序。

附錄 A:代碼示例

遞歸查詢示例

    USE AdventureWorks

GO

/*

This query brings back a list of managers, and the count of employees

who report to them directly or indirectly).

*/

WITH reps_cte (emp, mgr, recursion_level)

AS

(

/*Get the initial list of employees.*/

SELECT EmployeeID, ManagerID, 0

FROM Employee AS E

/*Get a Union of the anchor and the recursive term.*/

UNION ALL

SELECT reps_cte.emp, E.ManagerID, recursion_level+1

FROM Employee E, reps_cte????????-- Join with Employee

WHERE reps_cte.mgr=E.EmployeeID????-- This employee's manager

AND recursion_level<=20????????-- up to 20 levels of mgmt

)????????-- End of common table expression

/*Now query the recursive common table expression reps_cte*/

SELECT r.mgr,??E.[LastName]+', ' + E.[FirstName]

AS MgrName, count(*) CntEmployees

FROM reps_cte r INNER JOIN [Employee] E ON (r.mgr=E.EmployeeId)

GROUP BY mgr, E.[LastName]+', ' + E.[FirstName]

HAVING count(*) > 1????????????-- Means they manage at least one person

ORDER BY 3 DESC????????????-- Sort by count of employees

GO


  

SQL Server 2005 中的商務(wù)智能和數(shù)據(jù)倉(cāng)庫(kù)


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!??!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 久久久久毛片免费观看 | 国产精品久久久久久一级毛片 | 日本道专区无码中文字幕 | 91成人在线免费 | 91精品电影 | 日本理伦片午夜理伦片 | 久久精品视频16 | 国产日韩欧美 | 亚洲第一在线 | 欧美国产伦久久久久 | 亚洲精品久久婷婷丁香51 | 免费的污污网站 | 国产成人av在线 | 欧美精品一区二区三区在线 | 91成人在线视频 | 欧美精品日韩一区二区三区 | 成人免费一区二区三区视频网站 | 久久精品视在线观看2 | 在线观看日本污污ww网站 | 欧美日韩成人在线观看 | 麻豆一区二区99久久久久 | 精品一区二区三区在线视频 | 天堂在线观看中文字幕 | 亚洲日韩中文字幕一区 | 亚洲综合国产 | 国产99免费 | 在线a视频 | 永久精品| 国产精品中文在线 | 国产精品一区二区三区久久久 | 亚洲免费一区二区 | 99热精品在线观看 | 亚洲美女一区二区三区 | 久热中文字幕在线 | 开心综合 | 天堂色网站 | 久久综合婷婷香五月 | 成人国内精品久久久久影院 | 999精品嫩草久久久久久99 | videos 欧美 | 六月丁香综合 |