慎重に検討した結果、アプリケーションの Amazon Kinesis Data Analytics は 2 つのステップSQLで中止することにしました。
1. 2025 年 10 月 15 日以降、SQLアプリケーションの新しい Kinesis Data Analytics を作成することはできません。
2. 2026 年 1 月 27 日以降、アプリケーションを削除します。SQL アプリケーションの Amazon Kinesis Data Analytics を開始または操作することはできません。SQL それ以降、Amazon Kinesis Data Analytics のサポートは終了します。詳細については、「Amazon Kinesis Data Analytics for SQL Applications の中止」を参照してください。
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
アプリケーション内ストリームとポンプ
アプリケーション入力を設定する際に、ストリーミングソースを作成済みのアプリケーション内ストリームにマッピングします。データは絶えずストリーミングソースからアプリケーション内ストリームに流れます。アプリケーション内ストリームは、SQL ステートメントを使用してクエリできるテーブルのように機能しますが、データが絶えず流れているためにストリームと呼ばれます。
注記
アプリケーション内ストリームを Amazon Kinesis データストリームと Firehose 配信ストリームと混同しないでください。アプリケーション内ストリームは、Amazon Kinesis Data Analytics アプリケーションのコンテキスト内のみに存在します。Kinesis データストリームと Firehose 配信ストリームは、アプリケーションとは無関係です。アプリケーションの入力設定におけるストリーミング送信元として、または出力設定における送信先として、これらを設定できます。
また、必要に応じて、中間クエリ結果を保存するためにアプリケーション内ストリームをさらに作成することもできます。アプリケーション内ストリームを作成する手順は、2 ステップです。まず、アプリケーション内ストリームを作成し、そこにデータをポンプします。たとえば、アプリケーションの入力設定で INPUTSTREAM
という名前のアプリケーション内ストリームを作成するとします。次の例では、別のストリーム (TEMPSTREAM
) を作成して、INPUTSTREAM
からそこにデータをポンプしています。
-
次の図のように、3 つの列を持つアプリケーション内ストリーム (
TEMPSTREAM
) を作成します。CREATE OR REPLACE STREAM "TEMPSTREAM" ( "column1" BIGINT NOT NULL, "column2" INTEGER, "column3" VARCHAR(64));
列名は引用符で指定され、大文字小文字を区別します。詳細については、Amazon Kinesis Data Analytics SQL リファレンスの「Identifiers」を参照してください。
-
ポンプを使用してストリームにデータを挿入します。ポンプとは、1 つのアプリケーション内ストリームから別のアプリケーション内ストリームにデータを挿入する、連続して実行される挿入クエリです。次のステートメントは、ポンプ (
SAMPLEPUMP
) を作成し、別のストリーム (INPUTSTREAM
) からレコードを選択して、TEMPSTREAM
にデータを挿入します。CREATE OR REPLACE PUMP "SAMPLEPUMP" AS INSERT INTO "TEMPSTREAM" ("column1", "column2", "column3") SELECT STREAM inputcolumn1, inputcolumn2, inputcolumn3 FROM "INPUTSTREAM";
複数のライターから 1 つのアプリケーション内ストリームに挿入できます。また、ストリームから複数のリーダーを選択できます。アプリケーション内ストリームを、配信/購読メッセージングパラダイムの実装と考えることができます。このパラダイムでは、そこに含まれる作成時刻と受信時刻を含むデータ列はストリーミング SQL ステートメントのカスケードで処理、変換、転送でき、従来の RDBMS に保存する必要はありません。
アプリケーション内ストリームが作成された後は、通常の SQL クエリを実行できます。
注記
ストリームのクエリを実行するとき、ほとんどの SQL ステートメントは、行ベースまたは時間ベースのウィンドウを使用してバインドされます。詳細については、「ウィンドウクエリ」を参照してください。
また、ストリームを結合することもできます。ストリーム結合の例については、「ストリーミングデータオペレーション: ストリーム結合」を参照してください。