使用 Microsoft SQL Server 2000 和 Windows 2000 Datacenter Serve

發表于:2010-06-18來源:作者:點擊數: 標簽:SQLsqlSql分布式Datacenter
白皮書 摘要 小企業所有者通常知道他們所有客戶的名稱,尤其是頂級客戶的名稱。例如,小企業所有者可以很容易查看單個客戶名稱、付款地址以及這些客戶的購買情況。小企業所有者通常與客戶保持著密切的聯系,以便隨時了解客戶對其業務的滿意程度,并努力培養

白皮書

摘要

小企業所有者通常知道他們所有客戶的名稱,尤其是頂級客戶的名稱。例如,小企業所有者可以很容易查看單個客戶名稱、付款地址以及這些客戶的購買情況。小企業所有者通常與客戶保持著密切的聯系,以便隨時了解客戶對其業務的滿意程度,并努力培養與頂級客戶的關系,以確保他們一直是自己的頂級客戶。

相比之下,大型企業的所有者要想與客戶保持這種靈活的接觸就困難得多。這是因為,大型組織需要處理更多的復雜情況,它們不僅有更多的客戶,而且有更多的雇員、產品、服務,最重要的是,還需要處理更多各種各樣的文書工作和信息。這意味著,大型企業的所有者需要詳細審閱更多的數據,才能確定有哪些最佳客戶、哪些產品和服務客戶更愿意同時購買,才能根據各個客戶的購買習慣確定客戶的總體需要。

僅在美國,Microsoft 就擁有超過一億個客戶,1“客戶”是指從 Microsoft 分銷商或零售商那里已經購買至少一個 Microsoft 產品的最終用戶、注冊為事件參加者的最終用戶或訂閱聯機新聞快遞的最終用戶。Microsoft 的渠道關系要求公司通過各種獨立的來源獲得每個最終用戶的名稱和地址。Microsoft 依靠一組十分先進的工具和技術,也就是基于分布式數據倉庫的高效 Microsoft® SQL Server 2000,來有效地管理與客戶的關系。該系統每天能夠加載 2 百萬個以上的客戶記錄,但它只使用八臺運行 Microsoft Windows® 2000 Datacenter Server 網絡操作系統和 Microsoft SQL Server 2000 的計算機、兩臺運行 Microsoft Windows 2000 Advanced Server 網絡操作系統的計算機、550 個硬盤驅動器、32 個磁盤控制器和大約 1 TB 與客戶有關的數據。

同時,該數據倉庫還包括 1 億 5 千萬條 SQL 事務記錄,這些記錄支持交叉表報表和圖表化功能,便于管理者查看單個客戶的綜合情況并了解他們對 Microsoft 產品和 Microsoft 贊助的事件和新聞快遞的興趣。

對于 Microsoft 或其他任何大型組織來說,設計和部署分布式數據倉庫環境以支持大型的全球客戶關系管理 (CRM) 和決策支持系統 (DSS) 并不是件小事。沒有一個符合實際的范例,要想計劃、部署和擴展一個有效的系統將十分困難。本文檔說明了 Microsoft 所面臨的許多問題和挑戰,以及它在擴展和部署其分布式數據倉庫以支持 CRM 和 DSS 功能(這些功能以前需要有第三方的大型機環境的協助)時所采用的方法。

通過充分解釋由 Microsoft 設計和支持小組完成的許多設計、開發和部署決策,本文檔可以視作為 Microsoft 建立高度有效的分布式數據倉庫所使用的方法范例。

業務要求

Microsoft 信息技術小組 (ITG) 確定了三項業務要求,推動數據倉庫的設計和部署支持 CRM 和 DSS 功能。這些業務要求是:提高客戶滿意度、規模經濟以及更加標準化和集成化的環境。

客戶滿意度

提高客戶滿意度的中心是 Microsoft 在 1999 年開始實施的全球 CRM 和 DSS 環境。這些環境是分布式數據倉庫的中心部分,Microsoft 希望通過完整地使用這些環境,能夠比以往更好地確定個人和組織正在使用哪些產品和服務。

該分布式數據倉庫的一項關鍵功能是幫助 Microsoft 全面了解每個客戶的情況。因此,Microsoft 正在設法統一各種來自內部和外部信息源的客戶信息。在數據倉庫中,客戶和 Microsoft 之間的每個“接觸”都將記錄在中心儲存庫中。這意味著,當客戶購買產品然后注冊該產品時(無論使用平寄郵件或電子郵件,還是通過訂閱新聞快遞或參加某項事件),都會產生一些交互操作的記錄,從而為 Microsoft 提供了該客戶的個人化綜合信息。隨著時間的推移,我們相信更有效率的 CRM 解決方案將幫助決策者更好了解客戶關系,開發出更好的產品和服務,由此提高長期的客戶滿意度和忠誠度。

規模經濟

Microsoft 是一家高度分散的企業,屬下的 60 多個分支機構都有銷售辦事處。多年來,每個分支機構都投資建設獨立的客戶數據庫解決方案,以滿足其特定的需要。這些投資來源于每個分支機構的預算。例如,位于英國的分支機構每年為此花費了大約一百五十萬美元。其他大型分支機構也需要做相同的投資,而少數幾個較小的分支機構則不得不完全放棄對與客戶相關的活動和事件有利的投資。這意味著,較小的分支機構通常無法用大分支機構的大手筆投資方式來培育與客戶的關系。

分支機構還可能建立多個數據庫以滿足每個客戶群的需求,或者建立不同的數據庫以提供產品技術支持電話、產品注冊、傳出電話、營銷等功能。每個獨立的解決方案都需要對數據獲取、數據處理、支持以及客戶數據查詢工具進行投資。由于單個投資通常只能使一個分支機構受益,所以傳統的方法難于產生規模經濟。

因此,Microsoft 設計和部署能夠支持全球 CRM 和 DSS 的分布式數據倉庫,其目的另一個方面是要努力利用規模經濟,即僅用一個集中管理的解決方案來使所有分支機構的決策者都受益。

標準化

標準也是 Microsoft 設計和部署使用集中管理的分布式數據倉庫的全球統一 CRM 和 DSS 環境行動的中心。過去,在如何實現 CRM 方面,即使存在一些標準,各個分支機構所使用的不同實施方案卻很少使用這些標準。例如,某些分支機構開發了自定義代碼的應用程序來支持銷售、市場和客戶支持小組。而其他分支機構則使用第三方應用程序,或者外包整個客戶關系職能部門。

為了解決這個問題,Microsoft 啟動了一項內部計劃,開發出標準化的和可伸縮的 CRM 和 DSS 實現方法,使所有分支機構的決策者都能夠從中受益。該過程的第一步是統一位于美國的各個獨立系統的信息,并設計和部署作為本文主題的分布式數據倉庫。

概述

由于 Microsoft 的客戶數量龐大,倉庫設計人員在規劃解決方案時的首要決策之一是將客戶信息分布在多個服務器上,其動機是獲得強大功能。分布式設計允許多個服務器同時處理單獨的任務(任務作為一個或多個 SQL 存儲過程)。它還使擴展更容易,因為它支持識別那些可以劃分成多個子任務的任務,而這些子任務又可以同時運行在多個服務器上。在編程級別上,這涉及到將 SQL 存儲過程劃分成兩個或更多個新的存儲過程,然后將這些存儲過程加載在運行 SQL Server 2000 Enterprise Edition 的獨立計算機上。

即使數據倉庫已經作為分布式系統實施,每個服務器仍然能夠與其他使用 Microsoft Cluster Service(包括在 Windows 2000 Datacenter Server 中)和存儲區網絡的服務器共享部分數據。每個群集服務器都執行專門的數據處理,然后通過把數據庫放在某個群集磁盤資源中,來共享該處理的結果。隨后,當另一個服務器請求共享的磁盤資源并重新加載共享的數據庫時,系統將用更專門化的數據處理來繼續執行后續的處理過程。

最后,決策者就能通過基于 Web 的活動管理及 DSS 工具來查看數據。使用這些工具,決策者就能根據特定配置文件查看客戶列表,并根據實際選擇的任一配置文件來生成活動和事件。到 2001 年 3 月,該數據倉庫包含了大約 1 億個 Microsoft 美國客戶的信息,并且計劃未來包括其他國家或地區的客戶信息。

不管美國客戶的信息是從什么地方收集到的,這些信息都會安全存儲在位于華盛頓州 Redmond 的 Microsoft 總部的服務器中。這些系統每天 24 小時每周 7 天受到嚴格的安全措施保護。

數據倉庫基于如下 Microsoft 產品:

  • Windows 2000 Datacenter Server,包括 Microsoft Cluster Service2(要查看合格 OEM 的列表,請訪問 http://www.microsoft.com/windows2000/guide/datacenter/overview/default.asp)作為連續的產品開發過程的一部分,Microsoft 的數據倉庫設計人員和產品開發組正在評估在使用超過四個節點的配置下的 Windows 2000 Datacenter Server。本文檔通過圖例說明了正在評估的七節點群集的使用情況。
  • Windows 2000 Advanced Server,包括 Internet Information Service
  • Microsoft SQL Server 2000 Enterprise Edition

數據倉庫中的數據來自各種內部和外部渠道,包括 microsoft.com Web 站點和 Dun&Bradstreet。利用每天能夠添加 2 百萬條記錄的容量,該數據倉庫幾乎始終都在加載那些注冊新產品、訂閱新聞快遞或參與公司事件的新老客戶的信息。

因為數據倉庫采用集中管理方式,所以它只需要相對少的維護資源。數據倉庫的設計、部署以及目前的維護只需要 23 個人參加,在運行大約一年之后,它已經證明具有幾個明顯的優點。例如,數據倉庫正在幫助提供更全面的美國客戶的情況;以前,為了實施新功能和報表功能,以及為了制定培養與公司頂級客戶的關系計劃,需要做大量的外包安排工作,而現在這方面所花的時間正在減少。圖 1 概述了 Microsoft 內部所使用的分布式設計,以及服務器及其功能。


圖 1 Microsoft 技術支持 CRM 和 DSS 數據倉庫設計的各種組合情況

內部數據倉庫的使用者由兩組主要決策者組成:確定市場趨勢者和數據挖掘者。第一組觀察各個市場段,并使用相當基本的報表進行交叉表報告和歷史分析,例如,參加事件或訂閱新聞快遞之后購買了產品的人數。第二組則挖掘橫向銷售和縱向銷售的機會,以便規劃未來的活動和事件。

設計

由于分布式數據倉庫的邏輯及物理結構對其分布式性質和可伸縮性起關鍵作用,因此下面將詳細介紹 Microsoft 如何把數據倉庫劃分成邏輯層和物理層,并設計通過數據倉庫的數據流。在這方面所做的工作是為了從各個分散的渠道獲得客戶名稱和地址,這與利用現有客戶的識別號相反。(要詳細了解實施邏輯結構時所面臨的問題,請參見“實施”一節。)

邏輯結構

在分布式數據倉庫的邏輯結構設計過程中,工程師考慮了為符合業務要求而必須在系統中執行的主要事件,以及這些事件的執行順序。

事件

工程師將六個數據倉庫事件定義為主要事件:數據映射、標準化和匹配、操作數據存儲、決策支持、活動管理和數據抑制。

數據映射。客戶信息來自許多數據源,包括產品注冊卡、事件注冊卡、電子調查和訂閱電子新聞快遞。每個數據源既可以獲得所有數據源共有的信息(例如“客戶名稱”),也可以獲得給定數據源唯有的信息(例如“訂閱起始日期”)。數據映射將數據字段在表中的位置標準化,以便(例如)客戶的名稱不會因為疏忽而存儲到客戶的地址字段。數據映射還對各種數據源提供的數據字段進行安排,以便每個輸入文件都使用相同的數據字段格式。

標準化和匹配。與任何數據倉庫一樣,Microsoft CRM 和 DSS 數據倉庫包括一些規定,以避免出現不必要的重復和冗余。例如,當客戶更改地址、電話號碼或職業信息時,數據倉庫必須反映這些更改,而不能因疏忽去更新錯誤的記錄(例如,更改另一個同名客戶的記錄),或者創建重復記錄(例如,用原地址列出了一個客戶,然后再用新地址列出該客戶)。通過對每個更新記錄以及所有新的客戶記錄使用標準化和匹配方法,數據倉庫將確保建立一個完備和準確的單個客戶信息記錄。

操作數據存儲。為了在準備永久存儲時使數據均質化,數據倉庫使用了基于星形構架格式的操作數據存儲庫 (ODS) 來獲得靈活和永久的存儲環境。從該環境中,DSS 和活動管理的“工廠處理”獲得它們的數據。

工廠處理。在分布式數據倉庫中,工廠處理涉及對 ODS 中的數據進行轉換,以便適合進行報告、分析和活動管理等的活動。工廠處理的方法是,從 ODS 取得數據,并通過應用業務規則進行提煉,對其進行非規范化、聚合和分區處理,從而確保它有適合在數據集市中使用的格式。按照數據倉庫的設計,在 ODS 和數據集市中,“單個客戶”是最低一級的聚合。

決策支持。決策者必須能夠統計正在注冊產品、參與事件、加入新聞快遞等的單個客戶的數目。他們還必須能夠觀察給定市場段以確定縱向銷售和橫向銷售的機會。出于這些原因,Microsoft CRM 和 DSS 數據倉庫包括了靈活的 DSS 環境。

活動管理。決策者還必須能夠邀請選中的客戶參加公司贊助的事件,并使用批量電子郵件、平寄郵件或客戶電話聯系他們。出于該原因,數據倉庫包括活動管理功能。

數據抑制。雖然 Microsoft 能夠定期地以任何最實用的方式來聯系數據倉庫中的大多數客戶是非常重要的,但某些客戶卻不喜歡與其聯系,或者只愿意通過某些方式進行聯系(例如,電子郵件而不是電話,或者平寄郵件而不是傳真)。通過數據抑制,Microsoft CRM 和 DSS 數據倉庫可以在判斷要聯系哪些客戶以及何時以何種方式聯系他們時考慮這些客戶的要求。數據抑制是 Microsoft 在數據倉庫中實施安全和隱私首選項的一個組件。該倉庫不僅可以指示單個客戶的首選聯系和非聯系信息,而且還能限制對敏感數據的訪問,以便分析人員可以查看計算結果,而不用實際查看名稱和地址。

事件順序

定義數據倉庫中的主要事件之后,設計工程師確定了這些事件發生的順序。如圖 2 所示,事件被按照數據負載、工廠處理和數據集市的生成進行分組。


圖 2Microsoft CRM 和 DSS 數據倉庫的邏輯結構

下面是數據流的簡短摘要:

  • 數據安全地存儲在 ODS 中,
  • 數據移動到工廠服務器,在這里使用 SQL 存儲過程生成聚合和加速表,并且
  • 轉換后的數據被移動到決策支持或活動管理的數據集市,其中使用相關的星形構架格式將數據存儲起來。

利用該過程,通過應用業務邏輯和規則,使數據保持在系統中的移動,其中間結果可以供需要該數據來進行額外處理的各種服務器使用。該方法允許數據倉庫中的每個服務器有一個專門的角色,并確保所有服務器保持忙碌狀態。

物理結構

在 Microsoft CRM 和 DSS 數據倉庫的物理結構的設計過程中,工程師考慮了邏輯結構、輸入數據的數量、業務規則的復雜性以及高速計算機的可用性等因素。要最有效地利用硬件,并能夠通過添加服務器進行擴展,工程師使用了分布式計算環境在建立邏輯結構之后對物理結構進行建模。

遵循在 90 年代初期流行起來的“適時”方法,該設計使組織(例如 Microsoft)能夠僅在需要進一步處理時才應用財力資源。這種方法的另一個優點是,它使組織能夠確實是在需要更多的計算能力時,才利用最先進和最強大的計算設備。圖 3 說明 Microsoft 按照適時方法擴展數據倉庫的方式。


圖 3 使用“適時”方法擴展分布式數據倉庫

物理結構還指定了需要多少服務器、每個服務器上需要運行什么產品以及如何處理聯網和存儲問題。對于 Microsoft CRM 和 DSS 數據倉庫,該結構指定了八臺在 Windows 2000 Datacenter Server 網絡操作系統下運行 SQL Server 2000 Enterprise Edition 的服務器,和兩臺運行 Windows 2000 Advanced Server 網絡操作系統用于中間層報表功能的服務器。系統要求 SQL Server 2000 Enterprise Edition 使用超過 3GB 的內存。圖 4 說明了該部署情況,表 1 則詳細說明了所使用的各種硬件配置。


圖 4 分布式數據倉庫的物理結構

表 1 Microsoft CRM 和 DSS 分布式數據倉庫中所使用的硬件配置

主要服務器角色
處理器數
處理器速度
內存
SQL Server 數據庫大小
標準化和匹配

 

4

 

500 MHz

 

4 GB

 

8 GB

 

ODS

 

8

 

550 MHz

 

4 GB

 

900 GB

 

活動管理工廠

 

8

 

550 MHz

 

4 GB

 

1100 GB

 

活動管理數據集市

 

8

 

550 MHz

 

4 GB

 

650 GB

 

活動管理數據集市

 

8

 

550 MHz

 

4 GB

 

650 GB

 

決策支持中間層

 

4

 

500 MHz

 

4 GB

 

8 GB

 

決策支持工廠

 

8

 

550 MHz

 

4 GB

 

600 GB

 

活動管理中間層

 

4

 

500 MHz

 

4 GB

 


 

決策支持數據集市

 

8

 

550 MHz

 

4 GB

 

300 GB

 

決策支持數據集市

 

8

 

550 MHz

 

4 GB

 

300 GB

 

目前,數據倉庫使用了超過 550 個磁盤和 32 個磁盤控制器,組成總計 17.3 TB 未格式化的物理存儲區。七臺服務器正在使用 Microsoft Cluster Service(包括在 Windows 2000 Datacenter Server 中)和存儲區網絡 (SAN) 來共享接近 1 TB 的基于 SQL Server 2000 的數據,并使其可供其他運行 SQL Server 2000 的服務器全局使用。圖 5 說明了 SAN 的邏輯體系結構,它使用邏輯單位數字 (LUN) 掩碼功能。使用 Microsoft Cluster Service 來管理共享的邏輯驅動器。

crmdss5

圖 5 邏輯 SAN 結構

數據流

為了與其他服務器共享專門化處理的中間結果,數據倉庫利用了 Microsoft Cluster Service、SAN 和 SQL Server 2000 備份。SQL Server 2000 備份用來把數據庫放在群集化的驅動器資源上,然后使用 Microsoft Cluster Service 根據對驅動器資源的請求并應用“故障轉移”將該驅動器資源轉移到另一臺服務器。這時,其他服務器可以通過執行更專門化的 SQL 代碼,立即重新加載數據庫并繼續執行其他專門處理。

分布式數據倉庫中的服務器通過線纜連接到光纖通道控制的磁盤卷。它們還通過線纜連接到異步傳輸模式 (ATM) 網絡。最初,生產支持人員通過在網絡上復制數據實現在服務器之間共享數據。當倉庫只包含幾百萬條客戶記錄時,該方法很有效,但是對于更大的數據集合,則不能很好地擴展使用該方法,因為復制操作需要花費數天的時間才能完成?,F在,使用 SAN、SQL Server 2000 備份和 Microsoft Cluster Service 故障轉移,等量數據的加載操作可以在數分鐘內完成。

注意,盡管通常部署 Microsoft Cluster Service 是為了提高容錯性和可用性,但在分布式數據倉庫中這不是它的使用目的。實際上,使用它只是為了在群集節點之間共享基于 SQL 的數據。數據將連續加載到 ODS 中。每周,操作小組都要停止加載過程,并使用 SQL Server 備份工具將 ODS 備份到 SAN。一旦備份完成,小組將使用 Microsoft Cluster Administrator 應用故障轉移,從包含備份的驅動器轉移到決策支持工廠服務器,并在這里立即重新加載數據。

決策支持工廠使用 SQL 通過應用業務規則和數據轉換繼續處理該數據。該過程運行大約需要超過四天的時間。然后,工廠服務器將在啟動 SQL Server 備份,把 ODS 派生的數據庫備份到共享驅動器資源時,然后開始運行它當前的工廠處理。

備份完成后,將使用 Microsoft Cluster Service 應用故障轉移,從共享驅動器資源轉移到活動管理工廠服務器。一旦發生該操作,活動管理工廠服務器將使用 SQL Server 2000 還原數據庫并開始處理數據,以支持活動管理。該處理過程將與決策支持工廠所執行的處理過程同時進行。

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97