當您在 Microsoft SQL Server Analysis Services 中處理物件時,您可以選取處理選項來控制每個物件所發生的處理類型。 處理類型因物件不同而有所不同,且因物件自上次處理後所發生的變化而有可能改變。 如果您啟用 Analysis Services 自動選取處理方法,它會使用方法,以最少的時間將對象傳回至完整處理的狀態。
處理設定可讓您控制所處理的物件,以及用來處理這些物件的方法。 某些處理設定主要用於批處理作業。 如需批處理的詳細資訊,請參閱批處理(Analysis Services)。
備註
本主題適用於多維度和數據採礦解決方案。 如需表格式解決方案的相關信息,請參閱 處理資料庫、數據表或數據分割。
處理選項
下表描述 Analysis Services 中可用的處理方法,並識別支援每個方法的物件。
| 模式 | 適用對象 | 說明 |
|---|---|---|
| 進程預設值 | 立方體、資料庫、維度、度量群組、挖掘模型、挖掘結構和分區。 | 偵測資料庫對象的進程狀態,並執行將未處理或部分處理的對象傳遞至完整處理狀態所需的處理。 如果您變更資料綁定,Process Default 將對受影響的物件執行 Process Full。 |
| 進程已滿 | 立方體、資料庫、維度、量值群組、採礦模型、採礦結構和分區。 | 處理 Analysis Services 物件及其所包含的所有物件。 針對已經處理的物件執行 Process Full 時,Analysis Services 會卸除物件中的所有數據,然後處理物件。 當對對象進行結構變更時,需要這種處理,例如,新增、刪除或重新命名屬性階層時。 |
| 進程清除 | Cube、資料庫、維度、量值群組、採礦模型、採礦結構和分割區。 | 刪除指定物件中的數據及任何較低層級的組成子物件。 卸除數據之後,不會重載數據。 |
| 處理資料 | 維度、立方體、度量群組和分區。 | 只處理數據而不建置匯總或索引。 如果分割區中有數據,則會先清除數據,再使用源數據重新填充該分割區。 |
| 進程新增 | 維度、量值群組和分區 注意:Process Add 不適用於 Management Studio 中的維度處理,但您可以撰寫 XMLA 腳本來執行此動作。 |
針對維度,新增成員並更新維度屬性標題和描述。 針對量值群組和分割區,僅將新可用的事實數據和進程新增至相關的數據分割。 |
| 進程更新 | 尺寸 | 強制重新讀取數據和更新維度屬性。 將會移除相關分割區上的靈活彙總和索引。 |
| 進程索引 | 立方體、維度、量值群組和分區 | 為所有已處理的分區建立或重建索引和聚合。 對於未處理的物件,此選項會產生錯誤。 如果您關閉延遲處理,則需要使用此選項處理。 |
| 進程結構 | 立方體和採礦結構 | 如果 cube 未處理,Analysis Services 會在必要時處理該 cube 的所有維度。 之後,Analysis Services 只會建立 Cube 定義。 如果此選項套用至採礦結構,則會使用源數據填入採礦結構。 此選項與 [處理完整] 選項之間的差異在於,此選項不會將處理向下反覆運算到採礦模型本身。 |
| 流程清晰結構 | 採礦結構 | 從採礦結構中移除所有定型數據。 |
處理設定
下表描述建立進程作業時可用的處理設定。
| 處理選項 | 說明 |
|---|---|
| 平行 | 用於批處理。 此設定會導致 Analysis Services 將處理程序分派,並以平行方式在單一交易內執行。 如果發生錯誤,結果是所有變更會被回復。 您可以明確設定平行工作數目上限,或讓伺服器決定最佳散發。 [平行] 選項適用於加速處理。 |
| 循序 (交易模式) | 控制處理作業的執行行為。 當您使用 One Transaction 處理時,所有變更都會在處理作業成功之後進行認可。 這表示受特定處理作業影響的所有 Analysis Services 物件仍可供查詢使用,直到認可程序為止。 這可讓物件暫時無法使用。 使用 個別交易 會導致程序成功後,處理作業中受影響的所有物件立即無法查詢。 這兩個可用的選項如下: 一筆交易。 處理作業會以交易的形式執行。 如果處理作業內的所有進程都成功,則會認可處理作業的所有變更。 如果一個程序失敗,所有由處理任務所造成的變化都會被回復。 一個交易 是預設值。 個別的交易。 處理作業中的每個進程都會以獨立作業的形式執行。 如果一個進程失敗,則只會回復該程式,而且處理作業會繼續。 每個作業都會在作業結束時提交所有程序變更。 |
| 回寫數據表選項 | 控制回寫數據表在處理期間如何處理。 這個選項適用於 Cube 中的回寫分割區,並使用下列選項: 使用現有。 使用現有的回寫數據表。 這是預設值。 建立。 如果已經存在,則建立新的回寫數據表並導致進程失敗。 建立Always。 建立新的回寫數據表,即使已經存在也一樣。 刪除並取代現有的數據表。 |
| 處理受影響的物件 | 控制處理作業的物件範圍。 受影響的物件是由物件相依性所定義。 例如,數據分割相依於決定匯總的維度,但維度並不相依於數據分割。 您可以使用下列選項: False。 作業會處理在作業中明確命名的物件,以及所有相依物件。 例如,如果處理作業只包含維度,Analysis Services 只會處理作業中明確識別的物件。 如果處理作業包含分割區,數據分割處理會自動叫用受影響維度的處理。 False 是預設設定。 True。 作業會處理作業中明確命名的物件、所有相依物件,以及處理受物件影響的所有物件,而不會變更受影響物件的狀態。 例如,如果處理作業只包含維度,Analysis Services 也會處理目前處於已處理狀態之數據分割之維度處理所影響的所有分割區。 目前處於未處理狀態的受影響分割區不會處理。 不過,因為分割區相依於維度,如果處理作業只包含分割區,數據分割處理會自動叫用受影響維度的處理,即使維度目前處於未處理狀態也一樣。 |
| 維度索引鍵錯誤 | 決定分析服務在處理期間當錯誤發生時所採取的動作。 當您選取 [使用預設錯誤組態] 時,Analysis Services 會使用針對所處理之每個物件所設定的錯誤組態。 如果物件設定為使用預設組態設定,Analysis Services 會使用針對每個選項列出的預設設定。 當您選取 [使用自訂錯誤組態] 時,您可以選取下列動作的值來控制錯誤處理行為: 關鍵錯誤處理措施。 如果記錄中還沒有任何索引鍵值,則會選取其中一個動作進行: 轉換為未知。 索引鍵會解譯為未知的成員。 這是預設設定。 捨棄記錄。 記錄已被捨棄。 |
|
處理錯誤限制。 選取下列其中一個選項,控制所處理的錯誤數目: 忽略錯誤計數。 這可讓處理繼續,而不論錯誤數目為何。 發生錯誤時停止。 使用此選項,您可以控制兩個額外的設定。 錯誤數目 可讓您將處理限制為發生特定數目的錯誤。 於錯誤處理動作中,您可以設置當達到錯誤數目時所採取的動作。 您可以選取 [停止處理],這會導致處理作業失敗並回復任何變更,或 [停止記錄],這可讓處理繼續而不發生記錄錯誤。 發生錯誤時停止 是預設設定,錯誤數量 設定為0,而錯誤處理動作 設定為停止處理。 |
|
| 特定錯誤狀況。 您可以設定下列選項來控制特定的錯誤處理行為: 找不到索引鍵。 發生於鍵值存在於分區中,但不存在於相應的維度時。 默認設定為 報告並繼續。 其他設定為 [忽略錯誤] 和 [報告] 和 [停止]。 重複的鍵值。 當維度中存在多個鍵值時就會發生。 預設設定為 [忽略錯誤]。 其他設定為 報告並繼續 和 報告並停止。 Null 鍵已轉換為未知。 發生於索引鍵值為 Null 且 Key 錯誤動作 設定為 [轉換成未知] 時。 預設設定為 [忽略錯誤]。 其他設定為 報告並繼續 和 報告並停止。 不允許空值鍵。 當 鍵錯誤動作 設定為 捨棄記錄 時發生。 預設設定為 報表並繼續。 其他設定為 [忽略錯誤] 和 [報告] 和 [停止]。 |