スキーマのネスト解除とデータパーティショニング
DynamoDB や SaaS アプリケーションなどの NoSQL データソースを使用する場合、データから次のような分析に固有の課題が見えてくることがあります。
-
同じテーブル内のレコードのスキーマが異なる場合がある
-
同じテーブル内のネストされたレコードは、異なる方法で表現できる
-
マップや配列などの複雑なネスト構造には、効率的なクエリを実行するために変換が必要
-
大規模なクエリパフォーマンスを確保するには、最適なデータ整理が必要
AWS Glue ゼロ ETL 統合は、次の 2 つの優れた機能を通じてこれらの課題に対処します。
-
スキーマのネスト解除: 複雑なネストされたデータ構造を分析しやすい形式に自動的にフラット化します。ネスト解除のレベルを設定して、データ構造の保持とクエリの簡素化による最適化とのバランスを取ります。
-
データパーティショニング: 指定された列または時間ベースのディメンションに基づいてデータを論理パーティションに整理し、クエリの実行中にパーティションプルーニングを有効にすることでクエリのパフォーマンスを向上させ、コストを削減します。
このようなデータソースを効果的にクエリするために、AWS Glue ゼロ ETL では、ターゲット AWS Glue データベースでレプリケートされるソースデータのスキーマ処理とパーティショニングスキームがすぐに利用できる状態で提供されます。CreateIntegrationTableProperty API を使用して、各テーブルのスキーマのネスト解除とパーティショニングを設定できます。これにより、分析ワークロードのデータをどのように構造し、整理するかをファインチューニングできます。
デフォルトのネスト解除とパーティショニングの動作
-
ターゲットテーブルにネスト解除オプションが指定されていない場合、AWS Glue ゼロ ETL はデフォルトの完全なネスト解除になります
-
ターゲットテーブルに PartitionSpec が指定されていない場合、AWS Glue ゼロ ETL はデフォルトのバケットパーティショニングになります