分割量值群組時,您可以在遠端 Analysis Services 執行個體上設定次要資料庫作為資料分割儲存。
Cube (稱為 master 資料庫) 的遠端資料分割,會儲存在 Analysis Services 遠端執行個體上的專用 Analysis Services 資料庫 (稱為次要資料庫) 中。
專用次要資料庫會針對唯一的 master 資料庫儲存遠端資料分割,但是 master 資料庫可以使用多個次要資料庫,只要所有次要資料庫都在相同的 Analysis Services 遠端執行個體上即可。 資料庫中專屬於遠端資料分割的維度會建立為連結維度。
必要條件
建立遠端資料分割之前,必須先符合下列條件:
您必須具有次要 Analysis Services 執行個體和專用資料庫以儲存資料分割。 次要資料庫的用途只有一個,那就是為 master 資料庫提供遠端資料分割儲存。
這兩個伺服器執行個體的版本必須相同。 這兩個資料庫應該是相同的功能層級。
這兩個執行個體必須設定 TCP 連接。 Analysis Services 不支援使用 HTTP 通訊協定建立遠端資料分割。
這兩部電腦上的防火牆設定必須設為接受外部連接。 如需設定防火牆的詳細資訊,請參閱<設定 Windows 防火牆以允許 Analysis Services 存取>。
執行 master 資料庫之執行個體的服務帳戶必須具有 Analysis Services 遠端執行個體的管理存取權限。 如果服務帳戶變更,您必須更新伺服器和資料庫上的權限。
您必須是兩部電腦的 Analysis Services 管理員。
您必須確保災害復原計畫包含遠端資料分割的備份與還原。 使用遠端資料分割會讓備份與還原作業變得很複雜。 請務必針對您的計畫進行徹底的測試,確保能夠還原必要資料。
設定遠端資料分割
執行 SQL Server Analysis Services 執行個體的兩部不同電腦都必須建立遠端資料分割配置,其中一部電腦指定為主要伺服器,而另一部電腦指定為從屬伺服器。
下列程序假設您有兩個伺服器執行個體,其中 Cube 資料庫部署在主要伺服器上。 基於此程序的目的,Cube 資料庫稱為 db-master。 包含遠端資料分割的儲存資料庫稱為 db-storage。
您將使用 SQL Server Management Studio 和 SQL Server Data Tools (SSDT) 完成此程序。
[!附註]
遠端資料分割只能與其他遠端資料分割合併。 如果使用本機和遠端資料分割的組合,替代方式是建立包含合併資料的新資料分割,並刪除您不再使用的資料分割。
為 Cube 部署指定有效的伺服器名稱 (在 SSDT 中)
在主要伺服器上:在 [方案總管] 中,以滑鼠右鍵按一下方案名稱,然後選取 [屬性]。 在 [屬性] 對話方塊中,依序按一下 [組態屬性]、[部署] 及 [伺服器],然後設定主要伺服器的名稱。
在從屬伺服器上:在 [方案總管] 中,以滑鼠右鍵按一下方案名稱,然後選取 [屬性]。 在 [屬性] 對話方塊中,依序按一下 [組態屬性]、[部署] 及 [伺服器],然後設定從屬伺服器的名稱。
建立及部署次要資料庫 (在 SSDT 中)
在從屬伺服器上:為儲存資料庫建立新的 Analysis Services 專案。
在從屬伺服器上:在 [方案總管] 中,建立指向 Cube 資料庫 (db-master) 的新資料來源。 使用提供者 [Native OLE DB\Microsoft OLE DB Provider for Analysis Services 11.0]。
在從屬伺服器上:部署方案。
啟用功能 (在 SSMS 中)
在從屬伺服器上:在 SQL Server Management Studio 中,以滑鼠右鍵按一下 [物件總管] 中已連接的 Analysis Services 執行個體,然後選取 [屬性]。 將**[Feature\LinkToOtherInstanceEnabled]** 和 [Feature\LinkFromOtherInstanceEnabled] 設為 [True]。
在從屬伺服器上:以滑鼠右鍵按一下 [物件總管] 中的伺服器名稱,然後選取 [重新啟動] 以重新啟動伺服器。
在主要伺服器上:在 SQL Server Management Studio 中,以滑鼠右鍵按一下 [物件總管] 中已連接的 Analysis Services 執行個體,然後選取 [屬性]。 將**[Feature\LinkToOtherInstanceEnabled]** 和 [Feature\LinkFromOtherInstanceEnabled] 設為 [True]。
在主要伺服器上:若要重新啟動伺服器,請以滑鼠右鍵按一下 [物件總管] 中的伺服器名稱,然後選取 [重新啟動]。
設定遠端伺服器上的 MasterDataSourceID 資料庫屬性 (在 SSMS 中)
在從屬伺服器上:以滑鼠右鍵按一下儲存資料庫 (db-storage),並指向 [編寫資料庫的指令碼為] |ALTER 至 |新增查詢編輯器視窗。
將 [MasterDataSourceID] 新增至 XMLA,然後指定 Cube 資料庫 db-master 的識別碼作為其值。 XMLA 看起來應該類似如下。
<Alter ObjectExpansion="ExpandFull" xmlns="https://schemas.microsoft.com/analysisservices/2003/engine"> <Object> <DatabaseID>DB-Storage</DatabaseID> </Object> <ObjectDefinition> <Database xmlns:xsd="http://www.w3.org/2001/XMLSchema" 400" <ID>DB-Storage</ID> <Name>DB-StorageB</Name> <ddl200:CompatibilityLevel>1100</ddl200:CompatibilityLevel> <Language>1033</Language> <Collation>Latin1_General_CI_AS</Collation> <DataSourceImpersonationInfo> <ImpersonationMode>ImpersonateAccount</ImpersonationMode> <Account>*********</Account> </DataSourceImpersonationInfo> <MasterDataSourceID>DB-Master</MasterDataSourceID> </Database> </ObjectDefinition> </Alter>按 F5 執行指令碼。
設定遠端資料分割 (在 SSDT 中)
在主要伺服器上:開啟 Cube 設計師中的 Cube,然後按一下 [資料分割] 索引標籤。 展開量值群組。 如果為多個資料分割設定量值群組,請按一下 [新增資料分割];否則在 [來源] 資料行中按一下瀏覽 (. . ) 按鈕,以編輯現有的資料分割。
在 [資料分割精靈] 的 [指定來源資訊] 中,選取 [原始資料來源檢視] 和 [事實資料表]。
如果使用查詢繫結,請為建立的新資料分割提供分割資料的 WHERE 子句。
在 [處理與儲存位置] 的 [處理位置] 下,選擇 [遠端 Analysis Services 資料來源],然後按一下 [新增],以建立指向從屬資料庫 db-storage 的新資料來源。
[!附註]
如果發生錯誤,指出集合中不存在此資料來源,您必須開啟儲存資料庫 db-storage 的專案,然後建立指向 master 資料庫 db-master 的資料來源。
在主要伺服器上:以滑鼠右鍵按一下 [方案總管] 中的 Cube 名稱,然後選取 [處理] 並完整處理 Cube。
管理遠端資料分割
Analysis Services 支援遠端資料分割的平行和循序處理。 定義資料分割的 master 資料庫會協調參與處理 Cube 之資料分割所有執行個體之間的交易。 然後將處理報表傳送至處理資料分割的所有執行個體。
您可以在單一 Analysis Services 執行個體上同時管理內含遠端資料分割的 Cube 及其資料分割。 但是,您只能在定義遠端資料分割及其父 Cube 的 Analysis Services 執行個體上,檢視及更新資料分割的中繼資料。 您無法在遠端 Analysis Services 執行個體上,檢視或更新遠端資料分割。
[!附註]
雖然結構描述資料列集不會顯示專用於儲存遠端資料分割的資料庫,但是使用分析管理物件 (AMO) 的應用程式仍可使用 XML for Analysis Discover 命令探索專用資料庫。 任何使用 TCP 或 HTTP 用戶端直接傳送至專用資料庫的 CREATE 或 DELETE 命令會成功完成,但是伺服器會傳回警告,指出這些動作可能會損毀此密切管理的資料庫。