共用方式為


設定維度和數據分割的字串記憶體

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

您可以重新設定字串記憶體,以容納維度屬性或分割區中非常大的字串,這些字串超過字串存放區的 4 GB 檔案大小限制。 如果您的維度或分割區包含此大小的字串存放區,您可以變更維度或數據分割層級的 StringStoresCompatibilityLevel 屬性,以解決檔案大小限制。

請注意,您可以只針對需要額外容量的物件增加字串記憶體。 在大部分的多維度模型中,字串數據會與維度相關聯。 不過,包含字串上相異計數量值的分割區也可以受益於此設定。 因為此設定適用於字串,因此數值數據不會受到影響。

此屬性的有效值包括下列專案:

價值 描述
1050 指定預設字串記憶體架構,受限於每個存放區 4 GB 的檔案大小上限。
1100 指定較大的字串記憶體,每個存放區最多支援40億個唯一字串。

重要

變更物件的字串儲存設定需要您重新處理物件本身和任何相依物件。 需要處理才能完成程式。

本主題包含下列各節:

關於字串存放區

字串記憶體組態是選擇性的,這表示即使是您建立的新資料庫,也會使用預設的字串存放區架構,而該架構受限於 4 GB 的檔案大小上限。 使用較大的字串記憶體架構對效能的影響很小,但明顯。 只有當字串記憶體檔案接近或上限為 4 GB 時,才應該使用它。

注意

此設定不適用於數據採礦模型。 目前,仍可能遇到包含數據採礦結構之模型的 GB 檔案大小限制。

在 Analysis Services 多維度資料庫中,字串會與數值數據分開儲存,以根據數據的特性進行優化。 字串數據通常位於代表名稱或描述的維度屬性中。 也可以有相異計數量值的字串數據。 字串數據也可以在索引鍵中使用。

您可以依擴展名來識別字串存放區(例如,asstore、.bstore、.ksstore 或 .string 檔案)。 根據預設,每一個檔案都會受限於 4 GB 上限。 在 SQL Server 2012 (11.x)中,您可以指定可視需要成長字串存放區的替代儲存機制來覆寫檔案大小上限。

相較於限制實體檔案大小的預設字串記憶體架構,較大的字串記憶體是以最大字串數目為基礎。 較大字串記憶體的最大限制是40億個唯一字串或40億筆記錄,無論第一次發生。 較大的字串記憶體會建立偶數大小的記錄,其中每個記錄都等於 64K 頁面。 如果您有很長的字串不符合單一記錄,則有效限制會小於 40 億個字串。

先決條件

您必須擁有 SQL Server 2012 (11.x) 或更新版本的 SQL Server Analysis Services。

維度和數據分割必須使用 MOLAP 記憶體。

資料庫相容性層級必須設定為 1100。 如果您使用 SQL Server Data Tools 和 SQL Server 2012 (11.x) 或更新版本的 SQL Server Analysis Services 建立或部署資料庫,資料庫兼容性層級已設定為 1100。 如果您將舊版 SQL Server Analysis Services 中建立的資料庫移至 ssSQL11 或更新版本,則必須更新相容性層級。 對於您要移動但未重新部署的資料庫,您可以使用 SQL Server Management Studio 來設定相容性層級。 如需詳細資訊,請參閱多維度資料庫的相容性層級

步驟 1:在 SQL Server Data Tools 中設定 StringStoreCompatiblityLevel 屬性

  1. 使用 SQL Server Data Tools,開啟包含您要修改之維度或分割區的專案。

  2. 若要變更維度的字串記憶體,請開啟 [方案總管]。 按兩下您要修改字串記憶體的維度。

  3. 在 [維度設計師] 的 [屬性] 窗格中,確定已選取維度的父節點(例如,如果維度是 Customers,請選取 [客戶],而不是其中一個子屬性)。

  4. 在 [屬性] 窗格中的 [進階] 區段中,將 StringStoresCompatibilityLevel 設定為 1100。 針對需要較大記憶體的其他維度重複,否則請將剩餘的維度保留 1050 值。

  5. 如果是分割區,請從 [方案總管] 開啟 Cube。

  6. 按兩下 [資料分割] 索引標籤。

  7. 展開分割區,選取需要額外儲存容量的數據分割,然後修改 StringStoresCompatibilityLevel 屬性。

  8. 儲存盤案。

步驟 2:處理物件

在您處理 物件之後,將會使用新的記憶體架構。 處理物件也會證明您已成功解決記憶體條件約束問題,因為先前回報字串存放區溢位條件的錯誤應該不會再發生。

  • 在 [方案總管] 中,以滑鼠右鍵按下維度,或您剛才修改過,然後選取 [[處理]

您必須在使用新字串存放區架構的每個物件上使用 [處理完整] 選項。 在處理之前,請務必對維度執行影響分析,以檢查相依物件是否需要重新處理。

另請參閱

工具和處理方法 (Analysis Services)
處理選項和設定 (Analysis Services)
數據分割儲存模式和處理
維度記憶體