アプリケーション出力の設定 - Amazon Kinesis Data Analytics for SQL Applications 開発者ガイド

新規プロジェクトでは、Kinesis Data Analytics for SQL よりも 新しい Managed Service for Apache Flink Studio を使用することをお勧めします。Managed Service for Apache Flink Studio は、使いやすさと高度な分析機能を兼ね備えているため、高度なストリーム処理アプリケーションを数分で構築できます。

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

アプリケーション出力の設定

アプリケーションコードで、SQL ステートメントの出力を 1 つ以上のアプリケーション内ストリームに書き込みます。オプションでアプリケーションに出力設定を追加すると、アプリケーション内ストリームへのすべての書き込みを、Amazon Kinesis データストリーム、Kinesis Data Firehose 配信ストリーム、AWS Lambda 関数などの外部宛先に永続化できます。

アプリケーション出力の永続化に使用できる外部宛先の数には制限があります。詳細については、「Limits」を参照してください。

注記

エラーを精査するためにアプリケーション内エラーストリームのデータを永続化する外部宛先は、1 つにすることをお勧めします。

これらの出力設定で、以下を指定します。

  • アプリケーション内ストリーム名 – 外部宛先で永続化するストリームです。

    Kinesis Data Analytics は、出力設定で指定されたアプリケーション内ストリームを検索します。(ストリーム名は大文字と小文字が区別され、正確に一致する必要があることに注意してください)。アプリケーションコードがこのアプリケーション内ストリームを作成することを確認してください。

  • 外部宛先 – データを Kinesis データストリーム、Kinesis Data Firehose データ配信ストリーム、または Lambda 関数で永続化できます。ストリームまたは関数の Amazon リソースネーム (ARN) を指定します。また、Amazon Kinesis Analytics がユーザーに代わってストリームまたは Lambda 関数に書き込むために引き受けることができる IAM ロールを指定する必要があります。外部宛先に書き込むときに Kinesis Data Analytics が使用するレコード形式 (JSON, CSV) も記述します。

Kinesis Data Analytics でストリーミングまたは Lambda 宛先に書き込むことができない場合、サービスは無限に試行を続けます。これはバックプレッシャーを生み出し、アプリケーションに遅延が生じます。この問題が解決しない場合、アプリケーションは最終的に新しいデータの処理を停止します。Kinesis Data Analytics Metrics をモニタリングし、障害のアラームを設定できます。メトリクスとアラームの詳細については、Amazon CloudWatch メトリクスを使用するAmazon CloudWatch アラームを作成するを参照してください。

AWS Management Console を使用してアプリケーション出力を設定できます。コンソールは API コールを実行して設定を保存します。

AWS CLI を使用して出力を作成する

このセクションでは、CreateApplication または AddApplicationOutput オペレーションのリクエストボディの Outputs セクションを作成する方法について説明します。

Kinesis ストリーム出力を作成する

次の JSON フラグメントは、Amazon Kinesis データストリームの宛先を作成する CreateApplication リクエストボディの Outputs セクションを示しています。

"Outputs": [ { "DestinationSchema": { "RecordFormatType": "string" }, "KinesisStreamsOutput": { "ResourceARN": "string", "RoleARN": "string" }, "Name": "string" } ]

Kinesis Data Firehose 配信ストリームの出力

次の JSON フラグメントは、Amazon Kinesis Data Firehose 配信ストリームの宛先を作成する CreateApplication リクエストボディの Outputs セクションを示しています。

"Outputs": [ { "DestinationSchema": { "RecordFormatType": "string" }, "KinesisFirehoseOutput": { "ResourceARN": "string", "RoleARN": "string" }, "Name": "string" } ]

Lambda 関数出力を作成する

次の JSON フラグメントは、AWS Lambda 関数の宛先を作成する CreateApplication リクエストボディの Outputs セクションを示しています。

"Outputs": [ { "DestinationSchema": { "RecordFormatType": "string" }, "LambdaOutput": { "ResourceARN": "string", "RoleARN": "string" }, "Name": "string" } ]