本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
配置应用程序输出
在您的应用程序代码中,将 SQL 语句的输出写入一个或多个应用程序内部流。您可以选择在应用程序中添加输出配置,以便将写入到应用程序内部流的所有内容永久保存到外部目标中,如 Amazon Kinesis 数据流、Kinesis Data Firehose 传输流或 AWS Lambda 函数。
可以用来永久保存应用程序输出的外部目标的数量有限制。有关更多信息,请参阅 Limits。)
建议用一个外部目标来永久保存应用程序内部错误流数据,以方便调查错误。
在所有这些输出配置中,可以提供以下内容:
-
应用程序内部流名称 – 要永久保存到外部目标的流。
Kinesis Data Analytics 查找在输出配置中指定的应用程序内部流。(流名称区分大小写,必须完全匹配。)确保应用程序代码创建此应用程序内流。
-
外部目标 – 您可以将数据永久保存到 Kinesis 数据流、Kinesis Data Firehose 传输流或 Lambda 函数中。您需要提供流或函数的 Amazon 资源名称 (ARN)。您还需要提供 Kinesis Data Analytics 代表您写入到流或函数时代入的 IAM 角色。您描述在写入到外部目标时 Kinesis Data Analytics 使用的记录格式(JSON、CSV)。
如果 Kinesis Data Analytics 无法写入到流或 Lambda 目标,该服务将继续无限期地进行尝试。这将产生反向压力,导致您的应用程序滞后。如果不能解决这一问题,您的应用程序最终将停止处理新数据。您可以监控 Kinesis Data Analytics 指标并设置故障警报。有关指标和警报的更多信息,请参阅使用 Amazon CloudWatch 指标和创建 Amazon CloudWatch 警报。
您可以使用 AWS 管理控制台配置应用程序输出。控制台将调用 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" } ]