メインコンテンツまでスキップ
バージョン: 4.x

ICEBERG_META

説明

iceberg_meta テーブル値関数(tvf)は、icebergメタデータ、操作履歴、テーブルのスナップショット、ファイルメタデータなどを読み取るために使用します。

構文

ICEBERG_META(
"table" = "<table>",
"query_type" = "<query_type>"
);

必須パラメータ

iceberg_metaテーブル関数(tvf)の各パラメータは"key"="value"ペアです。

フィールド説明
<table>表示したいIcebergテーブルの完全なテーブル名。database_name.table_nameの形式で指定する必要があります。
<query_type>表示したいメタデータのタイプ。サポートされるタイプ:
snapshots: スナップショット情報
manifests: 現在のスナップショットのManifestファイル
all_manifests: すべての有効なスナップショットのManifestファイル(バージョン4.0.4からサポート)
files: 現在のスナップショットのファイル情報
data_files: 現在のスナップショットのデータファイル
delete_files: 現在のスナップショットの削除ファイル
partitions: パーティション情報
refs: リファレンス情報(ブランチとタグ)
history: 履歴レコード
metadata_log_entries: メタデータログエントリ

  • スナップショット用のicebergテーブルメタデータの読み取りとアクセス

    select * from iceberg_meta("table" = "ctl.db.tbl", "query_type" = "snapshots");
  • desc function と一緒に使用できます:

    desc function iceberg_meta("table" = "ctl.db.tbl", "query_type" = "snapshots");
  • iceberg テーブルスナップショットを検査する:

    select * from iceberg_meta("table" = "iceberg_ctl.test_db.test_tbl", "query_type" = "snapshots");
    +------------------------+----------------+---------------+-----------+-------------------+------------------------------+
    | committed_at | snapshot_id | parent_id | operation | manifest_list | summary |
    +------------------------+----------------+---------------+-----------+-------------------+------------------------------+
    | 2022-09-20 11:14:29 | 64123452344 | -1 | append | hdfs:/path/to/m1 | {"flink.job-id":"xxm1", ...} |
    | 2022-09-21 10:36:35 | 98865735822 | 64123452344 | overwrite | hdfs:/path/to/m2 | {"flink.job-id":"xxm2", ...} |
    | 2022-09-21 21:44:11 | 51232845315 | 98865735822 | overwrite | hdfs:/path/to/m3 | {"flink.job-id":"xxm3", ...} |
    +------------------------+----------------+---------------+-----------+-------------------+------------------------------+
  • snapshot_id でフィルタリング:

    select * from iceberg_meta("table" = "iceberg_ctl.test_db.test_tbl", "query_type" = "snapshots") where snapshot_id = 98865735822;
    +------------------------+----------------+---------------+-----------+-------------------+------------------------------+
    | committed_at | snapshot_id | parent_id | operation | manifest_list | summary |
    +------------------------+----------------+---------------+-----------+-------------------+------------------------------+
    | 2022-09-21 10:36:35 | 98865735822 | 64123452344 | overwrite | hdfs:/path/to/m2 | {"flink.job-id":"xxm2", ...} |
    +------------------------+----------------+---------------+-----------+-------------------+------------------------------+
  • iceberg テーブルのマニフェストを表示する(現在のスナップショットのマニフェストファイル)

    select * from iceberg_meta("table" = "iceberg_ctl.test_db.test_tbl", "query_type" = "manifests");
  • iceberg テーブルの all_manifests を表示する(すべての有効なスナップショットのマニフェストファイル、バージョン 4.0.4 からサポート)

    select * from iceberg_meta("table" = "iceberg_ctl.test_db.test_tbl", "query_type" = "all_manifests");
  • iceberg テーブルのファイルを表示する(現在のスナップショットのファイル情報)

    select * from iceberg_meta("table" = "iceberg_ctl.test_db.test_tbl", "query_type" = "files");
  • icebergテーブルのdata_filesを表示(現在のスナップショットのデータファイル)

    select * from iceberg_meta("table" = "iceberg_ctl.test_db.test_tbl", "query_type" = "data_files");
  • icebergテーブルのdelete_filesを表示(現在のスナップショットの削除ファイル)

    select * from iceberg_meta("table" = "iceberg_ctl.test_db.test_tbl", "query_type" = "delete_files");
  • icebergテーブルのパーティションを表示する

    select * from iceberg_meta("table" = "iceberg_ctl.test_db.test_tbl", "query_type" = "partitions");
  • icebergテーブルのrefs(参照情報)を表示

    select * from iceberg_meta("table" = "iceberg_ctl.test_db.test_tbl", "query_type" = "refs");
  • icebergテーブルの履歴を表示

    select * from iceberg_meta("table" = "iceberg_ctl.test_db.test_tbl", "query_type" = "history");
  • icebergテーブルのmetadata_log_entriesを表示する

    select * from iceberg_meta("table" = "iceberg_ctl.test_db.test_tbl", "query_type" = "metadata_log_entries");

関連

Icebergシステムテーブルの詳細情報については、Iceberg Catalog System Tablesを参照してください。