複製系統資料表參考

這很重要

受管式災難復原僅對特定對象開放。 請透過您的 Azure Databricks 帳戶團隊申請存取權限。 Azure Databricks 會在你獲准後,為你的帳戶啟用受控災害復原 (DR)。

本頁提供系統結構中states表格replication的參考資料,該表格追蹤 Azure Databricks 管理災難復原(DR)的複製狀態。 每一列都是故障轉移群組的狀態事件,定期發出,且每當故障轉移群組變更時都會發出。 使用此表監控故障轉移群組的當前及歷史複製狀態,包括複製延遲及任何阻礙至少一個資產複製的錯誤。

表格路徑system.replication.states

如何讀取複製狀態

狀態事件會定期發出。 每個事件都會回報故障轉移群組的總體狀態、當前延遲,以及任何阻礙至少一個資產複製的錯誤。 它並未列出哪些個別物件成功複製。

replication_lag_msnull時,該事件中未被錯誤覆蓋的所有部分,都已複製到該延遲。 其他範圍內資產即使陣列未空,仍持續複製並保持延遲更新 errors 。 在 INITIAL_REPLICATION期間,在所有範圍內資產被複製一次之前, replication_lag_ms 可以為 null:事件仍可列出阻塞錯誤,但尚未測量完整性。

管理災難復原完全不支援的資產類型,無論是成功還是錯誤,都不會出現在表格中。 他們的缺席並不代表他們複製了。 請參閱限制。 使用不支援功能(如列篩選、欄遮罩或基於屬性的存取控制 ABAC)的範圍內資產,會在表格中顯示為失敗資產。

要確認某個特定資產是否存在於次級裝置中,請檢查該物件。 由於次級範圍內目錄為唯讀,Azure Databricks 建議在次要區域設置獨立的唯讀監控工作區。 請參見 設定複製

狀態表結構參考

表格 states 使用下列架構:

欄位名稱 資料類型 描述 Example
event_id 字串 狀態事件的唯一識別碼。 ca886134-876c-4671-a38b-332edf48c602
event_time 時間戳記 事件發出的時間戳記。 2024-01-05T00:00:00.000+00:00
account_id 字串 故障轉移群組所屬的帳號ID。 ca886134-876c-4671-a38b-332edf48c602
failover_group_name 字串 故障轉移群組的完全合格名稱。 accounts/account1/failover-group/group1
replication_state 字串 事件發出時的複製狀態。 可能的值為 INITIAL_REPLICATIONACTIVECREATEDUPDATEDDELETEDFAILOVER_STARTEDFAILOVER_FINISHEDFAILOVER_ABORTED和 。 ACTIVE
errors 陣列 replication_stateINITIAL_REPLICATIONACTIVE,是阻礙至少一個資產複製的錯誤彙整清單,包括每個錯誤影響的資產數量。 詳見錯誤參考。 參見 Errors 參考資料
replication_lag_ms long 事件發出時,距離最後一次成功複製所有範圍內資產僅幾毫秒。 一個 null 值表示至少有一個資產從未從來源複製到複製品。 數值上升表示 DR 無法複製至少一個範圍內資產,但其他範圍內資產的變更仍會持續被複製。 2323
effective_primary_region 字串 事件發出時故障轉移組的主要區域。 us-west-2
managed_assets 結構 事件發出時由故障轉移小組管理的資產。 請參閱 管理資產參考資料 詳見 管理資產參考資料

錯誤參考

欄位 errors 包含阻擋複製的錯誤陣列。 陣列中的每個元素是一個結構體,包含以下欄位:

欄位名稱 資料類型 描述
error 結構 錯誤的詳細數據。 包含 error_class (字串),一個錯誤的類別名稱; parameters (映射),包含錯誤細節的鍵值參數;以及 message (字串),一個人類可讀的錯誤訊息。
affected_assets_counts 陣列 每個受影響的資產類型只能有一條紀錄。 每個條目包含 asset_type (字串),受影響資產的類型,以及 failing_count (long),錯誤所影響的該類型資產數量。

管理資產參考

欄位 managed_assets 是一個結構體,描述事件發出時由故障轉移群組管理的資產。 包含以下欄位:

欄位名稱 資料類型 描述
metastore_ids 陣列 由故障轉移群組管理的元儲存庫的 ID。
workspace_sets 陣列 工作區集合由故障轉移群組管理。 每個項目包含 name (string) 和 workspace_ids (array)。
catalogs 陣列 目錄由故障轉移團隊管理。 每個條目包含 name (字串)。

閱讀表格時的考量

分析表格時 states 請注意以下幾點:

  • 事件發生後,資料填充可能需要長達3小時。
  • 該表格包含 Azure Databricks 帳號中所有故障轉移群組的事件。

範例查詢

以下查詢會回傳特定故障轉移群組的最新複寫狀態,包括目前 replication_state、複寫延遲及任何阻塞錯誤:

SELECT
  event_time,
  replication_state,
  replication_lag_ms,
  errors
FROM system.replication.states
WHERE failover_group_name = :failover_group_name
ORDER BY event_time DESC
LIMIT 1

以下查詢會回傳給定故障轉移群組的複寫延遲分布:

SELECT histogram_numeric(replication_lag_ms, 20) AS replication_lag_distribution
FROM system.replication.states
WHERE failover_group_name = :failover_group_name