徵狀
當您在 SQL Server Analysis Services 的維度上執行處理作業時,如果服務處於記憶體壓力之下,則無法處理該維度,而且資料可能會損毀。注意: 這個問題會發生在相對不少見的爭用情況中。 發生這個問題時,您可能會遇到不正確的維度關聯或ProcessUpdate 失敗。在下列情況下,就會發生此問題:
-
Analysis Services 記憶體使用量超出處理作業期間為服務設定的高記憶體限制,導致分析服務積極清除記憶體頁面。
-
在處理期間,沒有記錄問題的錯誤或訊息,且維度處理不會失敗。 相反地,處理已完成,而損毀的資料會寫入維度檔案。
-
這個問題最可能顯示為新新增維度成員的不正確維度屬性關係。 例如:產品維度中的成員會出現在不正確的類別或子類別下。
-
另一種損壞可能會顯示本身:在包含嚴格屬性關聯的維度中使用後續ProcessUpdate ,維度處理會失敗,並出現下列錯誤訊息:
在維度的遞增處理期間,不能變更屬性之間的嚴格關聯。
注意: 此錯誤也可能會因合法原因而發生,例如基礎資料來源中的變更。 不過,如果資料表或視圖中作為維度來源的基礎資料沒有變更,這可能是錯誤的原因。
-
當伺服器位於記憶體壓力之下,但如果清潔器執行緒在維度處理完成之前,evicts 新新增維度成員的資料頁面,有時就不會發生這個問題。 這是在分析服務服務中,維度處理執行緒與記憶體清理程式執行緒之間較少見的爭用情況。
-
安裝此修正程式後,就不會再發生該問題,但必須重新處理受影響的物件才能解決問題。
-
當伺服器不在記憶體壓力底下時,受影響維度上的 ProcessUpdate會修正由於這個問題而造成的損毀。 針對有一個或多個嚴格屬性關聯的受影響維度,處理常式將會失敗,並顯示上述錯誤。
-
若要修正包含剛性關係之維度的問題,請變更伺服器上受影響維度的屬性關聯,並執行ProcessUpdate。 接著,屬性關聯可以改回到 [剛性],而使用維度的測度群組的索引可以重建。
-
解決方案
這個問題首先是在 SQL Server 的下列累積更新中修正:
Sql server 2014 累積更新14 forsql Server 2012 Service pack 3累積更新程式 13 for Sql server 2012 SP2累積更新7(適用于 sql server 2014 Service pack 1 )
每個新的 SQL Server 累計更新都包含所有的修正程式,以及前一個累積更新中所包含的所有安全性修正程式。 查看 SQL Server 的最新累計更新:
Sql server 2014 的最新累計更新sql SERVER 2012 SP3的 sql server 的最新累計更新2012 SP2
狀態
Microsoft 已確認<適用於>一節中所列的 Microsoft 產品確實有上述問題。
參考
瞭解 Microsoft 用於描述軟體更新的 術語 。