メインコンテンツまでスキップ
バージョン: Latest-3.4

Iceberg メタデータテーブル

このトピックでは、StarRocks で Iceberg テーブルのメタデータ情報を確認する方法について説明します。

概要

バージョン V3.4.1 以降、StarRocks は Iceberg メタデータテーブルをサポートしています。これらのメタデータテーブルには、Iceberg テーブルに関するさまざまな情報が含まれており、テーブルの変更履歴、スナップショット、マニフェストなどがあります。元のテーブル名にメタデータテーブル名を追加することで、各メタデータテーブルをクエリできます。

現在、StarRocks は以下の Iceberg メタデータテーブルをサポートしています。

メタデータテーブル説明
historyテーブルに対して行われたメタデータ変更のログを表示します。
metadata_log_entriesテーブルのメタデータログエントリを表示します。
snapshotsテーブルスナップショットの詳細を表示します。
manifestsテーブルのログ内のスナップショットに関連付けられたマニフェストの概要を表示します。
partitionsテーブル内のパーティションの詳細を表示します。
filesテーブルの現在のスナップショット内のデータファイルと削除ファイルの詳細を表示します。
refsIceberg の参照に関する詳細を表示し、ブランチやタグを含みます。

history テーブル

使用法:

SELECT * FROM [<catalog>.][<database>.]table$history;

出力:

フィールド説明
made_current_atスナップショットが現在のスナップショットになった時刻。
snapshot_idスナップショットの ID。
parent_id親スナップショットの ID。
is_current_ancestorこのスナップショットが現在のスナップショットの祖先であるかどうか。

metadata_log_entries テーブル

使用法:

SELECT * FROM [<catalog>.][<database>.]table$metadata_log_entries;

出力:

フィールド説明
timestampメタデータが記録された時刻。
fileメタデータファイルの場所。
latest_snapshot_idメタデータが更新されたときの最新スナップショットの ID。
latest_schema_idメタデータが更新されたときの最新スキーマの ID。
latest_sequence_numberメタデータファイルのデータシーケンス番号。

snapshots テーブル

使用法:

SELECT * FROM [<catalog>.][<database>.]table$snapshots;

出力:

フィールド説明
committed_atスナップショットがコミットされた時刻。
snapshot_idスナップショットの ID。
parent_id親スナップショットの ID。
operationIceberg テーブルに対して行われた操作の種類。 有効な値:
  • append: 新しいデータが追加されます。
  • replace: テーブル内のデータを変更せずにファイルが削除および置換されます。
  • overwrite: 古いデータが新しいデータで上書きされます。
  • delete: テーブルからデータが削除されます。
manifest_listスナップショットの変更に関する詳細情報を含む Avro マニフェストファイルのリスト。
summary前のスナップショットから現在のスナップショットまでに行われた変更の概要。

manifests テーブル

使用法:

SELECT * FROM [<catalog>.][<database>.]table$manifests;

出力:

フィールド説明
pathマニフェストファイルの場所。
lengthマニフェストファイルの長さ。
partition_spec_idマニフェストファイルの書き込みに使用されるパーティション仕様の ID。
added_snapshot_idこのマニフェストエントリが追加されたときのスナップショットの ID。
added_data_files_countマニフェストファイル内で ADDED ステータスのデータファイルの数。
added_rows_countマニフェストファイル内で ADDED ステータスのすべてのデータファイルの総行数。
existing_data_files_countマニフェストファイル内で EXISTING ステータスのデータファイルの数。
existing_rows_countマニフェストファイル内で EXISTING ステータスのすべてのデータファイルの総行数。
deleted_data_files_countマニフェストファイル内で DELETED ステータスのデータファイルの数。
deleted_rows_countマニフェストファイル内で DELETED ステータスのすべてのデータファイルの総行数。
partition_summariesパーティション範囲のメタデータ。

partitions テーブル

使用法:

SELECT * FROM [<catalog>.][<database>.]table$partitions;

出力:

フィールド説明
partition_valueパーティション列名とパーティション列値のマッピング。
spec_idファイルのパーティション Spec ID。
record_countパーティション内のレコード数。
file_countパーティションにマッピングされたファイルの数。
total_data_file_size_in_bytesパーティション内のすべてのデータファイルのサイズ。
position_delete_record_countパーティション内の Position Delete ファイルの総行数。
position_delete_file_countパーティション内の Position Delete ファイルの数。
equality_delete_record_countパーティション内の Equality Delete ファイルの総行数。
equality_delete_file_countパーティション内の Position Equality ファイルの数。
last_updated_atパーティションが最後に更新された時刻。

files テーブル

使用法:

SELECT * FROM [<catalog>.][<database>.]table$files;

出力:

フィールド説明
contentファイルに格納されているコンテンツの種類。 有効な値: DATA(0), POSITION_DELETES(1), および EQUALITY_DELETES(2)
file_pathデータファイルの場所。
file_formatデータファイルの形式。
spec_id行を含むファイルを追跡するために使用される Spec ID。
record_countデータファイルに含まれるエントリの数。
file_size_in_bytesデータファイルのサイズ。
column_sizesIceberg 列 ID とファイル内の対応するサイズとのマッピング。
value_countsIceberg 列 ID とファイル内の対応するエントリ数とのマッピング。
null_value_countsIceberg 列 ID とファイル内の対応する NULL 値の数とのマッピング。
nan_value_countsIceberg 列 ID とファイル内の対応する非数値値の数とのマッピング。
lower_boundsIceberg 列 ID とファイル内の対応する下限とのマッピング。
upper_boundsIceberg 列 ID とファイル内の対応する上限とのマッピング。
split_offsets推奨される分割位置のリスト。
sort_idこのファイルのソート順序を表す ID。
equality_idsEquality Delete ファイルでの等価比較に使用されるフィールド ID のセット。
key_metadataこのファイルを暗号化するために使用される暗号化キーに関するメタデータ(該当する場合)。

refs テーブル

使用法:

SELECT * FROM [<catalog>.][<database>.]table$refs;

出力:

フィールド説明
name参照の名前。
type参照の種類。 有効な値: BRANCH または TAG
snapshot_id参照のスナップショット ID。
max_reference_age_in_ms参照が期限切れになるまでの最大年齢。
min_snapshots_to_keepブランチのみ、ブランチ内で保持する最小スナップショット数。
max_snapshot_age_in_msブランチのみ、ブランチ内で許可される最大スナップショット年齢。ブランチ内の古いスナップショットは期限切れになります。