移行戦略の選択 - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

移行戦略の選択

Iceberg 形式に移行する場合、インプレース移行とフル移行の選択が不可欠です。特定のニーズに最適なアプローチを決定するには、以下の質問と推奨事項を検討してください。

質問 推奨事項

データファイル形式 (CSV や Apache Parquet など) は何ですか?

  • テーブルファイル形式が Parquet、ORC、または Avro の場合は、インプレース移行を検討してください。

  • CSV、JSON などの他の形式の場合は、フルデータ移行を使用します。

テーブルスキーマを更新または統合しますか?

  • Iceberg ネイティブ機能を使用してテーブルスキーマを進化させる場合は、インプレース移行を検討してください。たとえば、移行後に列の名前を変更できます。(スキーマは Iceberg メタデータレイヤーで変更できます)。

  • 不要になった列全体を削除する場合は、完全なデータ移行を使用することをお勧めします。

テーブルはパーティション戦略を変更するとメリットがありますか?

  • Iceberg のパーティショニングアプローチが要件を満たしている場合 (例えば、新しいデータは新しいパーティションレイアウトを使用して保存され、既存のパーティションはそのままになる)、インプレース移行を検討してください。

  • テーブルで非表示のパーティションを使用する場合は、完全なデータ移行を検討してください。非表示パーティションの詳細については、「ベストプラクティス」セクションを参照してください。

テーブルはソート順序戦略を追加または変更することでメリットがありますか?

  • データのソート順序を追加または変更するには、データセットを書き換える必要があります。この場合、フルデータ移行の使用を検討してください。

  • すべてのテーブルパーティションを書き換えるコストが非常に高い大きなテーブルの場合は、インプレース移行の使用を検討し、最も頻繁にアクセスされるパーティションに対して圧縮 (ソートが有効) を実行してください。

テーブルには小さなファイルが多数ありますか?

  • 小さなファイルを大きなファイルにマージするには、データセットを書き換える必要があります。この場合、フルデータ移行の使用を検討してください。

  • すべてのテーブルパーティションを書き換えるコストが非常に高い大きなテーブルの場合は、インプレース移行の使用を検討し、最も頻繁にアクセスされるパーティションに対して圧縮 (ソートが有効) を実行してください。