無限ノック › DEA 練習問題一覧 › 問題
DEAデータストアの管理

ある企業のデータエンジニアは、Amazon S3 に Apache Iceberg テーブル形式でデータレイクを構築し、AWS Glue Data Catalog でテーブルを管理しています。先日、AWS Glue ETL ジョブの不具合により、重要なファクトテーブルのデータが誤って上書きされてしまいました。S3 バージョニングは有効ですが、Iceberg テーブルの論理的な整合性も保ちながら復旧したいと考えています。最も適切なデータ復旧方法はどれですか?

A
S3 バージョニングを使用して、上書き前のオブジェクトバージョンに手動でロールバックする
S3 バージョニングを使用して、上書き前のオブジェクトバージョンに手動でロールバックする方法は個々のオブジェクトファイルを復元できますが、Iceberg メタデータとの整合性は保証されないため、テーブルが壊れるリスクがあります。
B
Apache Iceberg のスナップショットロールバック機能(CALL system.rollback_to_snapshot())を使用して、上書き前のスナップショットに戻す
✓ 正解
Apache Iceberg はスナップショットベースのバージョン管理を提供しており、CALL system.rollback_to_snapshot() や FOR SYSTEM_TIME AS OF を使ったタイムトラベルクエリで、テーブルを論理的に特定の過去状態へロールバックできます。メタデータ(マニフェストファイル、スナップショットファイル)ごと整合性を保って復旧できる点が強みです。
C
AWS Backup を使用して S3 バケット全体を以前の復元ポイントに戻す
AWS Backup を使用してS3 バケット全体を以前の復元ポイントに戻す方法はバケット全体を戻すと、他テーブルのデータにも影響が及ぶため、最小限のロールバックには不向きです。
D
AWS Glue ジョブブックマーク機能を使用して、上書き前の処理状態に戻す
AWS Glue ジョブブックマーク機能を使用して、上書き前の処理状態に戻す方法はGlue ジョブブックマークは増分ロードの処理状態を管理する機能であり、テーブルデータのロールバックには使用できません。

解説

Apache Iceberg はスナップショットベースのバージョン管理を提供しており、CALL system.rollback_to_snapshot() や FOR SYSTEM_TIME AS OF を使ったタイムトラベルクエリで、テーブルを論理的に特定の過去状態へロールバックできます。メタデータ(マニフェストファイル、スナップショットファイル)ごと整合性を保って復旧できる点が強みです。 選択肢AのS3 バージョニングを使用して、上書き前のオブジェクトバージョンに手動でロールバックする方法は個々のオブジェクトファイルを復元できますが、Iceberg メタデータとの整合性は保証されないため、テーブルが壊れるリスクがあります。 選択肢CのAWS Backup を使用してS3 バケット全体を以前の復元ポイントに戻す方法はバケット全体を戻すと、他テーブルのデータにも影響が及ぶため、最小限のロールバックには不向きです。 選択肢DのAWS Glue ジョブブックマーク機能を使用して、上書き前の処理状態に戻す方法はGlue ジョブブックマークは増分ロードの処理状態を管理する機能であり、テーブルデータのロールバックには使用できません。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでDEAを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← DEA の問題一覧に戻る