分割量值群組時,您可以將遠端 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 To | New 查詢編輯器 視窗]。
將 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 Designer,然後按一下 [資料分割] 索引標籤。展開量值群組。 如果已針對多個資料分割設定量值群組,請按一下 [ 新增資料分割 ],或按一下流覽 (。.[來源] 資料行中的 [) ] 按鈕,以編輯現有的分割區。
在 [資料分割精靈] 的 [指定來源資訊] 中,選取原始資料來源檢視和事實資料表。
如果使用查詢繫結,請為建立的新分割區提供分割資料的 WHERE 子句。
在 [處理與儲存位置] 的 [處理位置] 下,選擇 [遠端 Analysis Services 資料來源],然後按一下 [新增],以建立指向從屬資料庫 db-storage 的新資料來源。
注意
如果發生錯誤,指出集合中不存在此資料來源,您必須開啟儲存資料庫 db-storage 的專案,然後建立指向 master 資料庫 db-master 的資料來源。
在主要伺服器上:以滑鼠右鍵按一下方案總管中的 Cube 名稱,然後選取 [處理] 並完整處理 Cube。
管理遠端分割區
Analysis Services 支援遠端分割區的平行處理和循序處理。 定義分割區的 master 資料庫會協調參與處理 Cube 之分割區所有執行個體之間的交易。 然後將處理報表傳送至處理分割區的所有執行個體。
包含遠端資料分割的 Cube 可以與其在 Analysis Services 的單一實例上的分割區一起管理。 不過,只有定義分割區及其父 Cube 的 Analysis Services 實例,才能檢視和更新遠端資料分割的中繼資料。 無法在 Analysis Services 的遠端實例上檢視或更新遠端分割區。
注意
雖然結構描述資料列集不會顯示專用於儲存遠端分割區的資料庫,但是使用分析管理物件 (AMO) 的應用程式仍可使用 XML for Analysis Discover 命令探索專用資料庫。 任何使用 TCP 或 HTTP 用戶端直接傳送至專用資料庫的 CREATE 或 DELETE 命令會成功完成,但是伺服器會傳回警告,指出這些動作可能會損毀此密切管理的資料庫。