Share via


向外延展 Analysis Services 方案

通常在很多情況下,Analysis Services 資料庫管理員 (dba) 會想要針對日益增加的使用者,改善查詢回應時間。有兩種方式可以完成這個目標:在現有的伺服器中加入更強大的功能 (向上延展),或在數個小伺服器間分散負載 (向外延展)。

向上延展方案通常受到現有硬體無法再擴充或升級之位置的限制。這也許是因為現有的主機板無法接受新版本的 CPU,也可能是已達到記憶體的實體位址空間。在另一方面,向外延展方案比較有彈性,而且其限制比較容易克服。如果網路負載平衡器 (NLB) 中的伺服器數目已達到最大限制,可以將額外的 NLB 加入到方案中,並在多個 NLB 之間分散伺服器。

本文件描述向外延展 Analysis Services 方案理論上的架構。

狀況

Analysis Services dba 必須提供 Analysis Services 方案的使用者較佳的查詢回應時間,但是提供每日最少的停機時間來重新整理資料。使用者數目在上個月已經從原本的 80 位使用者加倍,而且這個數目預期在接下來的六個月內再次加倍。從第七個月開始,使用者的擴充預期是每個月成長 4 個百分比。Analysis Services 資料庫大小目前為 80GB,而且每個月會成長 6GB。此資料庫目前可以保存前 12 個月的資料,而且預期可以維護前 3 個會計年度的記錄加上目前年度的記錄。平均處理時間為 2 個半小時,而且停機時間限制為半小時。

替代方案

在您了解狀況後,唯一的方案似乎是向上延展伺服器。這將會提供沒有停機時間的服務,但在處理時間會讓效能減緩。不過,目前有 160 位使用者,而且在接下來的六個月內將會加倍到 320 位使用者。之後,每個月將會繼續成長 13-16 位使用者,而且會無限制地延續下去。以這樣的速率,使用者的數目在穩定成長的第 18 和 19 個月之間將會再次加倍。已知這個狀況,要調整正確的硬體大小,並針對其在未來 12 個月之容量的 50% 下使用的設備調整預算要求相當困難。

慶幸的是,向外延展此方案可以利用唯讀資料庫能力,在 SQL Server 2008 Analysis Services 中進行。

向外延展架構

此架構是使用兩個元素設計的:

  • 實體配置,其目標是將使用者輸送量最大化。

  • 運算架構,其目標是將停機時間最小化。

實體配置

此方案包含三個主要元件:

  • 處理環境

  • 存放區域網路 (SAN)

  • 資料存取環境

第一個元件為處理,是使用 SAN 區段更新與處理資料的地方。第二個元件為 SAN,是針對處理和資料存取環境保存資料的地方。第三個元件為資料存取,是讓使用者可以使用資料的地方。

處理環境

處理環境是由一部伺服器、一個 SAN 的連線,以及一個保存 Analysis Services 資料的 SAN 邏輯磁碟區所形成。

存放區域網路 (SAN)

此方案包含兩個獨立的「SAN 邏輯磁碟區」:一個用於處理環境,而另一個用於資料存取環境。

SAN 是一組裝置,可為多維度資料庫提供實體儲存體。它可在伺服器與儲存體 (包括共用儲存體、叢集與資料復原機制) 之間進行高速連線。

在本文件中,「SAN 邏輯磁碟區」會定義作業系統視為一個實體磁碟機的儲存體單位。

資料存取環境

資料存取環境是由共用相同 SAN 邏輯磁碟機的多部伺服器 (開始通常是三部) 所形成。使用者可以透過使用負載平衡演算法路由所有內送要求的 NLB 裝置連接到資料存取伺服器。

實體配置的 Variant

如有必要,您可以在方案中使用下列 Variant 以獲得較佳的效能。

處理環境

在某些情況下,您可能會使用兩部處理伺服器:一部用於關聯式資料庫,而另一部用於保存 Analysis Services 資料庫。

此外,您可以定義多個邏輯磁碟區以便在 SAN 中個別保存關聯式資料庫與多維度資料庫。

資料存取環境

將兩個或多個 NLB 定義為方案的一部分,其中每個 NLB 裝置至少有三部資料存取伺服器。

運算架構

方案的運算分為三個階段:

  • 資料處理。

  • 停機時間

  • 重設資料處理

資料處理

在這個階段,會更新並處理多維度資料庫。只要準備好要傳送的多維度資料庫內容,資料存取環境就會處理要傳送的資料。這個程序包含下列步驟:

  • 從資料處理伺服器卸離 Analysis Services 資料庫。

  • 讓保存 Analysis Services 資料庫的 SAN 邏輯磁碟區離線。

停機時間

在這個階段,已更新之資料庫的內容會與原始資料庫的內容交換。

  • 設定 NLB 以拒絕任何內送要求。

  • 從每個資料存取伺服器卸離 Analysis Services 資料庫。

  • 從每個資料存取伺服器,讓保存 Analysis Services 資料庫的 SAN 邏輯磁碟區離線。

  • 使用 SAN 命令交換處理環境和資料存取環境之間的 SAN 邏輯磁碟區。

  • 針對每個資料存取伺服器,讓保存 Analysis Services 資料庫的 SAN 邏輯磁碟區當做唯讀裝置上線。

  • 在 ReadOnly 模式下,將 Analysis Services 資料庫附加到每個資料存取伺服器。

  • 設定 NLB 以接受任何內送要求。

重設資料處理

在這個階段,舊的 SAN 邏輯磁碟區的內容會遭到更新,並在處理環境上線。

  • 使用 SAN 命令,將資料存取中的 SAN 邏輯磁碟區鏡像到處理環境的邏輯 SAN。

  • 針對處理環境,讓保存 Analysis Services 資料庫的 SAN 邏輯磁碟區當做讀/寫裝置上線。

  • 在 ReadWrite 模式下,將 Analysis Services 資料庫附加到處理環境伺服器。