翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Apache Iceberg ワークロードのモニタリング
Iceberg ワークロードをモニタリングするには、メタデータテーブル
を使用している場合は AWS Glue Data Catalog、Iceberg が公開するメタデータテーブルの上にモニタリングを設定することで、Iceberg テーブルの状態に関するインサイトを得ることができます。
モニタリングは、パフォーマンス管理とトラブルシューティングに不可欠です。例えば、Iceberg テーブルのパーティションが小さなファイルの特定の割合に達すると、ワークロードは圧縮ジョブを開始してファイルをより大きなファイルに統合できます。これにより、クエリが許容レベルを超えて遅くなるのを防ぐことができます。
テーブルレベルのモニタリング
次の画面は、QuickSight で作成されたテーブルモニタリングダッシュボードを示しています。このダッシュボードは、Spark SQL を使用して Iceberg メタデータテーブルをクエリし、アクティブなファイル数や合計ストレージ数などの詳細なメトリクスをキャプチャします。この情報は、運用上の目的で AWS Glue テーブルに保存されます。最後に、次の図に示すように、Amazon Athena を使用して QuickSight ダッシュボードが作成されます。この情報は、システム内の特定の問題を特定して対処するのに役立ちます。

QuickSight ダッシュボードの例は、Iceberg テーブルの次の主要業績評価指標 (KPIs) を収集します。
KPI |
説明 |
Query |
---|---|---|
ファイル数 |
Iceberg テーブル内のファイルの数 (すべてのスナップショット用) |
|
アクティブなファイルの数 |
Iceberg テーブルの最後のスナップショット内のアクティブなファイルの数 |
|
平均ファイルサイズ |
Iceberg テーブル内のすべてのファイルの平均ファイルサイズ、メガバイト単位 |
|
平均アクティブファイルサイズ |
Iceberg テーブル内のアクティブなファイルの平均ファイルサイズ、メガバイト単位 |
|
小さいファイルの割合 |
100 MB 未満のアクティブなファイルの割合 |
|
合計ストレージサイズ |
孤立したファイルと Amazon S3 オブジェクトバージョンを除く、テーブル内のすべてのファイルの合計サイズ (有効になっている場合) |
|
アクティブなストレージの合計サイズ |
特定のテーブルの現在のスナップショット内のすべてのファイルの合計サイズ |
|
データベースレベルのモニタリング
次の例は、Iceberg テーブルのコレクションに関するデータベースレベルの KPIs の概要を提供するために QuickSight で作成されたモニタリングダッシュボードを示しています。

このダッシュボードは、次の KPIs。
KPI |
説明 |
Query |
---|---|---|
ファイルの数 |
Iceberg データベース内のファイルの数 (すべてのスナップショット用) |
このダッシュボードは、前のセクションで提供されたテーブルレベルのクエリを使用し、結果を統合します。 |
アクティブなファイルの数 |
Iceberg データベース内のアクティブなファイルの数 (Iceberg テーブルの最後のスナップショットに基づく) |
|
平均ファイルサイズ |
Iceberg データベース内のすべてのファイルの平均ファイルサイズ、メガバイト単位 |
|
平均アクティブファイルサイズ |
Iceberg データベース内のすべてのアクティブなファイルの平均ファイルサイズ、メガバイト単位 |
|
小さいファイルの割合 |
Iceberg データベースで 100 MB 未満のアクティブなファイルの割合 |
|
合計ストレージサイズ |
孤立したファイルと Amazon S3 オブジェクトバージョンを除く、データベース内のすべてのファイルの合計サイズ (有効になっている場合) |
|
アクティブなストレージの合計サイズ |
データベース内のすべてのテーブルの現在のスナップショット内のすべてのファイルの合計サイズ |
予防メンテナンス
前のセクションで説明したモニタリング機能を設定することで、事後対応角度ではなく予防的なテーブルメンテナンスにアプローチできます。たとえば、テーブルレベルとデータベースレベルのメトリクスを使用して、次のようなアクションをスケジュールできます。
-
テーブルが N 個の小さなファイルに達したときに小さなファイルをグループ化するには、ビンパッキング圧縮を使用します。
-
テーブルが特定のパーティション内の N 個の削除ファイルに達したときに、ビンパッキング圧縮を使用して削除ファイルをマージします。
-
合計ストレージがアクティブストレージの X 倍になったら、スナップショットを削除して、圧縮済みの小さなファイルを削除します。