我們正在使用基於事實表的退化維來創建OLAP多維數據集,以鏈接到另一個到多個事實表。我們將SQL Server 2012上的源數據庫的兼容性級別設置爲SQL Server 2012 (110)
。我們已將此退化維上的stringstoragecompatibilitylevel
設置爲1100
。我們甚至將所有維度和多維數據集分區設置爲1100
。然而,我們仍然發現了以下錯誤:4GB時接收錯誤文件大小限制即使兼容級別爲1100
Processing Dimension Attribute 'Data Time Period ID' failed. 155130000 rows have been read.
Start time: 7/21/2016 9:31:08 AM; End time: 7/22/2016 10:08:00 AM; Duration: 24:36:52
Error Messages 1
File system error: A string store or binary store with a compatibility level of '1050'
is at the maximum file size of 4 gigabytes. To store additional strings, you can change
the StringStoresCompatibilityLevel property of the associated dimension or distinct count
measure to '1100' and reprocess. This option is only available on databases with a
compatibility level of '1100' or higher.
Physical file: \\?\I:\s2012\OLAP\Data\DATAwarehouse.0.db\DimfactDegenerate.0.dim\18.Data Time Period ID.asstore.
Logical file: .
Errors in the OLAP storage engine: An error occurred while the 'Data Time Period ID' attribute
of the 'DimfactDegenerate' dimension from the 'DATAwarehouse' database was being processed.
目標OLAP數據庫,維度,多維數據集分區和源數據倉庫都被設置爲使用1100
。我已通過腳本化數據庫並搜索兼容性級別來驗證OLAP數據庫/維度/分區都在1100
上。我甚至搜索了1050
,並沒有顯示在腳本中。
事實表中有大約9億條記錄。橋表包含18億條記錄。基於事實表的退化維中使用的2列的總大小約爲15 GB(基於這些列的平面文件輸出 - 即信封的背面)。所有添加的退化維都是唯一的。從閱讀有關如何兼容級別應該「通過」我們對此感到滿意:
- 數據庫來源是SQL Server 2012的兼容性水平集上。
- 目標OLAP數據庫使用
1100
兼容性 - 多維數據集分區使用
1100
兼容性 - 尺寸使用
1100
兼容性 - 有65個以下十億記錄
- 所有的記錄都是獨一無二的
什麼其他選項或設計更改是否必須解決這個看似不可能的錯誤?
嗨,我現在正面臨着這個問題。你能否讓我知道,你是如何解決這個問題的? – Chandru
@Chandru,我相信我最後的「解決方案」只是重新創建OLAP項目,從頭開始將所有內容都設置爲1100。如果我在構建/過程之後設置了兼容性,則構建XML中的某些內容不會更新。不是最好的解決方案,但這是我如何解決它的。 – wergeld
感謝您的回覆。好的,會嘗試這個解決方案。如果您瞭解其他任何解決方案,請告訴我們。 – Chandru