處理多維度模型 (Analysis Services)

適用於: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

處理是 Analysis Services 將數據從關係型數據源載入多維度模型的步驟或一系列步驟。 對於使用 MOLAP 記憶體的物件,資料會儲存在資料庫檔案資料夾中的磁碟上。 針對 ROLAP 記憶體,處理會視需要發生,以響應物件上的 MDX 查詢。 對於使用 ROLAP 記憶體的物件,處理是指在傳回查詢結果之前更新快取。

根據預設,當您將解決方案部署至伺服器時,就會進行處理。 您也可以使用 Management Studio 或 SQL Server Data Tools 等工具,或使用 Integration Services 和 SQL Server Agent 依排程處理解決方案的所有或部分。 對模型進行結構變更時,例如移除維度或變更其相容性層級,您必須再次處理以同步處理模型的實體和邏輯層面。

本主題包含下列各節:

必要條件

選擇工具或方法

處理物件

重新處理物件

先決條件

  • 處理需要 Analysis Services 實例的系統管理許可權。 如果您要從 SQL Server Data Tools 或 Management Studio 以互動方式處理,您必須是 SQL Server Analysis Services 實例上伺服器管理員角色的成員。 針對自動執行的處理,例如使用透過 SQL Server Agent 排程的 SSIS 套件,用來執行封裝的帳戶必須是伺服器管理員角色的成員。 如需設定系統管理員許可權的詳細資訊,請參閱 將伺服器管理員許可權授與 Analysis Services 實例

  • 用來擷取資料的帳戶是在數據源物件中指定,如果您是使用 Windows 驗證,則為模擬選項,或使用資料庫驗證作為連接字串上的用戶名稱。 帳戶必須具有模型所使用關係型數據源的讀取許可權。

  • 您必須先部署專案或方案,才能處理任何物件。

    一開始,在模型開發初期,部署和處理會一起發生。 不過,您可以在部署解決方案之後,設定選項以稍後處理模型。 如需部署的詳細資訊,請參閱 部署 Analysis Services 專案 (SSDT)

選擇工具或方法

您可以使用 SQL Server Data Tools 或 Management Studio 之類的用戶端應用程式,或是以 SQL Server Agent 作業或 SSIS 封裝執行的腳本作業,以互動方式處理物件。

處理資料庫的方式會因模型處於作用中開發或生產環境而有很大的差異。 將模型部署至生產伺服器之後,必須嚴格控制處理,以確保多維度數據的完整性和可用性。 由於物件是相互相依的,因此處理通常會在模型之間產生串聯效果,因為其他物件也會同時處理或未處理。 如果某些物件處於未處理狀態,則不會解析該數據的查詢,並中斷任何使用該數據的報告或應用程式。 開發處理生產資料庫的策略時,請考慮使用您已偵錯並測試的腳本或 SSIS 套件,以避免運算符錯誤或忽略的步驟。

如需詳細資訊,請參閱 處理工具與方法

處理物件

處理會影響下列 SQL Server Analysis Services 物件:量值群組、數據分割、維度、Cube、採礦模型、採礦結構和資料庫。 當物件包含一或多個物件時,處理最高層級物件會導致處理所有較低層級物件的串聯。 例如,Cube 通常包含一或多個量值群組(每個群組都包含一或多個分割區)和維度。 處理 Cube 會導致處理 Cube 內的所有量值群組,以及目前處於未處理狀態的組成維度。 如需處理 SQL Server Analysis Services 物件的詳細資訊,請參閱 處理 Analysis Services 物件

處理作業正常運作時,可以存取受影響的 SQL Server Analysis Services 對象進行查詢。 處理作業可在交易內運作,而且交易可以認可或回復。 如果處理作業失敗,則會回復交易。 如果處理作業成功,當認可變更時,就會將獨佔鎖定放在 物件上,這表示對象暫時無法用於查詢或處理。 在交易的認可階段,查詢仍然可以傳送至物件,但查詢會排入佇列,直到認可完成為止。

在處理作業期間,是否處理物件及其處理方式取決於針對該物件所設定的處理選項。 如需可套用至每個物件之特定處理選項的詳細資訊,請參閱 處理選項和設定 (Analysis Services)

重新處理物件

包含未處理元素的 Cube 必須先重新處理,才能流覽。 SQL Server Analysis Services 中的 Cube 包含量值群組和數據分割,必須先處理才能查詢 Cube。 如果 Cube 處於未處理狀態,處理 Cube 會導致 SQL Server Analysis Services 處理 Cube 的組成維度。 第一次處理對象之後,每當發生下列其中一種情況時,就必須部分或完整地重新處理物件:

  • 對象的結構會變更,例如卸除事實數據表中的數據行。

  • 對象的匯總設計會變更。

  • 對象中的數據必須更新。

當您在 SQL Server Analysis Services 中處理物件時,可以選取處理選項,或者您可以啟用 SQL Server Analysis Services 來判斷適當的處理類型。 提供的處理方法與某個物件不同,而且是以 物件類型為基礎。 此外,可用的方法會根據自上次處理對象後發生哪些變更。 如果您啟用 SQL Server Analysis Services 自動選取處理方法,它會使用方法,以最少的時間將對象傳回至完整處理的狀態。 如需詳細資訊,請參閱 處理選項和設定 (Analysis Services)

另請參閱

邏輯架構 (Analysis Services - 多維度數據)
資料庫物件 (Analysis Services - 多維度數據)