使用 IBM cpdctl 維護 Spark 表

適用於火花機

您可以透過 IBM Cloud Pak for Data Command Line Interface ( IBM cpdctl) 的協助,提交 Spark 應用程式來執行 Iceberg 資料表維護作業。 IBM cpdctl 中的 tablemaint 工具可讓您提交、列出和取得 Spark 應用程式的詳細資料。

開始之前

  • watsonx.data 已配置 Native Spark 引擎的實例。
  • 下載並安裝 IBM cpdctl。 如需相關資訊,請參閱 安裝 IBM cpdctl
  • 在 IBM cpdctl 中設定 watsonx.data 環境。 如需詳細資訊,請參閱 設定 IBM cpdctl

表格維護

您可以使用 tablemaint 公用程式中的可用資源來執行下列資料表維護活動。

  • 快照管理

    • rollback_to_snapshot - 將表回滾至特定的快照 ID。
    • rollback_to_timestamp - 將資料表回復到特定日期和時間的快照。
    • set_current_snapshot - 設定資料表當前的快照 ID。
    • cherrypick_snapshot - 從快照中篩選變更到目前的資料表狀態。
  • 元資料管理

    • expire_snapshots - 移除不再需要的舊快照及其檔案。
    • remove_orphan_files - 用來移除在 Iceberg 表的任何 metadata 檔案中沒有被引用的檔案。
    • rewrite_data_files - 將小檔案合併為大檔案,以減少元資料開銷和執行時開啟檔案的成本。
    • rewrite_manifests - 重寫表格的清單,以最佳化掃描規劃。
  • 表格遷移

    • register_table - 為 metadata.json 檔案建立目錄項目,該檔案存在但沒有相對應的目錄識別碼。

如需相關資訊,請參閱 如何使用 wx-data 指令 --help (-h) 一節。