對於新專案,我們建議您使用適用於 Apache Flink Studio 的全新受管理服務,取代適用於應用程式的 Kinesis Data Analytics。SQLManaged Service for Apache Flink Studio 易於使用且具備進階分析功能,讓您在幾分鐘內建置複雜的串流處理應用程式。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
設定應用程式輸出
在應用程式碼中,您可以將 SQL 陳述式的輸出寫入一或多個應用程式內串流。您可以選擇性地將輸出組態新增至應用程式。將寫入應用程式內串流的所有內容保留到外部目的地,例如 Amazon Kinesis 資料串流、Firehose 交付串流或函數。 AWS Lambda
您可以用來保存應用程式輸出的外部目的地數量有限制。如需詳細資訊,請參閱 限制。
注意
建議您使用其中一個目的地來保留應用程式內錯誤串流資料,藉此調查錯誤。
在每種輸出組態中,您提供下列項目:
-
應用程式內串流名稱:您要保留至外部目的地的串流。
Kinesis Data Analytics 會尋找您在輸出組態中指定的應用程式內串流。(串流名稱區分大小寫,必須完全匹配。) 請確定您的應用程式碼會建立此應用程式內串流。
-
外部目標 — 您可以將資料保留至 Kinesis 資料串流、Firehose 交付串流或 Lambda 函數。您提供資料串流或函數的 Amazon Resource Name (ARN)。您也必須提供 Kinesis Data Analytics 可擔任的 IAM 角色,以代您讀取串流或函數。在寫入外部目的地時,您可以向 Kinesis Data Analytics 描述要使用的記錄格式 (JSON、CSV)。
如果 Kinesis Data Analytics 無法寫入串流或 Lambda 目的地,服務會繼續無限期地嘗試。這會產生背壓,導致您的應用程式落後。如果此問題未解決,您的應用程式最終會停止處理新資料。您可以監控 Kinesis Data Analytics 指標並設定故障警示。如需有關指標和警示的詳細資訊,請參閱使用 Amazon CloudWatch 指標和建立 Amazon CloudWatch 警示。
您可以使用 AWS Management Console配置應用程式輸出。控制台進行 API 呼叫以保存配置。
使用建立輸出 AWS CLI
本節說明如何建立 CreateApplication
或 AddApplicationOutput
作業的請求內文 Outputs
區段。
建立 Kinesis 串流輸出
下列 JSON 片段顯示 CreateApplication
要求內文中用來建立 Amazon Kinesis 資料串流目的地的 Outputs
區段。
"Outputs": [ { "DestinationSchema": { "RecordFormatType": "string" }, "KinesisStreamsOutput": { "ResourceARN": "string", "RoleARN": "string" }, "Name": "string" } ]
建立 Firehose 傳送串流輸出
下列 JSON 片段顯示CreateApplication
請求內文中用於建立 Amazon 資料 Firehose 交付串流目的地的Outputs
區段。
"Outputs": [ { "DestinationSchema": { "RecordFormatType": "string" }, "KinesisFirehoseOutput": { "ResourceARN": "string", "RoleARN": "string" }, "Name": "string" } ]
建立 Lambda 函數輸出
以下 JSON 片段顯示CreateApplication
請求主體中用於創建 AWS Lambda 函數目標的Outputs
部分。
"Outputs": [ { "DestinationSchema": { "RecordFormatType": "string" }, "LambdaOutput": { "ResourceARN": "string", "RoleARN": "string" }, "Name": "string" } ]