翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
データ配信の概念
このトピックでは、Amazon Kinesis Data Streams でのストリーミングテーブルと Amazon S3 配信の主な概念について説明します。
データの鮮度
データ鮮度は、Kinesis Data Streams が受信レコードをバッファしてから送信先に配信する最大時間 (秒単位) を定義します。データの鮮度は 300~900 秒 (5~15 分) の間で設定できます。デフォルト値は 300 秒です。
-
低い値 – バッチサイズを小さくして、送信先への配信を高速化します。
-
値が高い – バッチ処理がより効率的になり、送信先で生成されるファイルが少なくて大きなファイルが生成されます。
ストリーミングテーブルの入力形式
Apache Iceberg のストリーミングテーブルに配信する場合、データ配信は次の入力レコード形式をサポートします。どちらの形式にも AWS Glue スキーマレジストリが必要です。
-
JSON – プレーン JSON レコード。 AWS Glue Schema Registry に登録されたスキーマを参照する
GSRSchemaARN( AWS Glue スキーマレジストリスキーマの ) を指定する必要があります。 -
GSR_JSON (AWS Glue スキーマレジストリ JSON) – 各レコードにスキーマ ID が埋め込まれた JSON レコード。スキーマは AWS Glue Schema Registry から自動的に解決されます。
汎用 Amazon S3 バケットの入力形式
汎用 Amazon S3 バケットに配信する場合、データ配信は次の入力レコード形式をサポートします。スキーマレジストリは必要ありません。
-
JSON – プレーン JSON レコード。
-
STRING – UTF-8 文字列レコード。
-
BYTE_ARRAY – raw バイナリレコード。
注記
このGSR_JSON形式は、汎用 Amazon S3 バケットではサポートされていません。Apache Iceberg のストリーミングテーブルへの配信にのみ使用できます。
スキーマの適用
Apache Iceberg のストリーミングテーブルの場合、すべてのレコードは AWS Glue Schema Registry に登録されたスキーマに対して検証されます。スキーマに準拠しないレコードは、ストリーミングテーブルに配信されません。失敗メタデータは、トラブルシューティングのためにデッドレターキューに書き込まれます。データ配信はスキーマの進化をサポートしていません。これには、新しいフィールドの追加、既存のフィールドの削除、フィールドの名前変更、フィールドデータ型の変更が含まれます。
バックフィルなし
送信先は、ストリーミングテーブルを作成した後、または S3 配信を設定した後に生成されたレコードのみを受け取ります。ストリーム内の既存のレコードはバックフィルされません。
配信あたりの新しいテーブル
ストリーミングテーブル配信ごとに、送信先に独自の Iceberg テーブルが作成されます。既存のテーブルへの配信はサポートされていません。を呼び出すときに、テーブルバケットの ARN、名前空間、およびテーブル名を指定しますCreateChannel。
デッドレターキュー
デッドレターキューは、正常に配信できなかったレコードに関する情報をキャプチャします。
-
Apache Iceberg でのテーブルのストリーミング – デッドレターキューが必要です。失敗したレコードには S3 バケットとプレフィックスを指定する必要があります。
-
汎用 Amazon S3 バケット – デッドレターキューはオプションです。指定しない場合、デフォルトはエラープレフィックスが付いた同じ送信先バケットになります。
デッドレターキューには、完全なレコードペイロードではなく、レコード識別子とエラーコンテキストが含まれます。
インライン圧縮
データ配信は、シャード間のレコードを最適なサイズのファイルに集約することで、インライン圧縮を実行します。これにより、送信先の小さなファイルの数が減少し、クエリのパフォーマンスが向上します。
配信状態
配信は、ライフサイクル中に次の状態に移行します。
-
CREATING – 配信がプロビジョニングされています。
-
ACTIVE – 配信はレコードを配信しています。
-
UPDATING – 設定の変更が進行中です。
-
DELETING – 配信は削除中です。
-
失敗 – 配信で回復不可能なエラーが発生しました。
追加のみの配信
配信は追加専用です。更新とアップサートはサポートされていません。ストリームの各レコードは、送信先の新しい行として書き込まれます。