Amazon Kinesis Data Firehose
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

选择目标

本主题介绍 Amazon Kinesis Data Firehose 中的 Create Delivery Stream (创建传输流) 向导的 Choose destination (选择目标) 页。

Kinesis Data Firehose 可以将记录发送到 Amazon Simple Storage Service (Amazon S3)、Amazon Redshift 或 Amazon Elasticsearch Service (Amazon ES)。

选择 Amazon S3作为目标

本部分介绍将 Amazon S3 用于您的目标的选项。

选择 Amazon S3 作为目标

  • Choose destination 页面上,为以下字段输入值:

    目的地

    选择 Amazon S3

    Destination S3 bucket

    请选择一个您拥有的用于接收流数据的 S3 存储桶。您可以创建一个新 S3 存储桶或选择现有的 S3 存储桶。

    Destination S3 bucket prefix

    (可选)要对 Amazon S3 对象使用默认前缀,请将此选项留空。Kinesis Data Firehose 对所传输的 Amazon S3 对象自动使用“YYYY/MM/DD/HH”UTC 时间格式的前缀。您可以将此前缀添加到开头。有关更多信息,请参阅Amazon S3 对象名称格式

    Source record S3 backup

    选择 Disabled 可禁用源记录备份。如果您启用使用 AWS Lambda 进行的数据转换,可以启用源记录备份将未转换的传入数据传输到单独的 S3 存储桶。您可以向开头添加由 Kinesis Data Firehose 生成的“YYYY/MM/DD/HH”UTC 时间前缀。在启用源记录备份之后,便不能禁用它。

选择 Amazon Redshift作为目标

本部分介绍将 Amazon Redshift 用于您的目标的选项。

选择 Amazon Redshift 作为目标

  • Choose destination 页面上,为以下字段输入值:

    目的地

    选择 Amazon Redshift

    集群

    S3 存储桶数据复制到的 Amazon Redshift 集群。将 Amazon Redshift 集群配置为可公开访问并取消阻止 Kinesis Data Firehose IP 地址。有关更多信息,请参阅 授予 Kinesis Data Firehose 访问 Amazon Redshift 目标的权限

    用户名

    具有访问 Amazon Redshift 集群的权限的 Amazon Redshift 用户。该用户必须具有 Amazon Redshift INSERT 权限,才能将数据从 S3 存储桶复制到 Amazon Redshift 集群中。

    密码

    有权访问集群的用户的密码。

    数据库

    将数据复制到其中的 Amazon Redshift 数据库。

    将数据复制到其中的 Amazon Redshift 表。

    (可选) 数据复制到的表的特定列。如果 Amazon S3 对象中定义的列数少于 Amazon Redshift 表中的列数,请使用该选项。

    Intermediate S3 bucket

    Kinesis Data Firehose 先将数据传输到您的 S3 存储桶,然后发出 Amazon Redshift COPY 命令将这些数据加载到您的 Amazon Redshift 集群中。请指定一个您拥有的用于接收流数据的 S3 存储桶。创建新的 S3 存储桶或选择您当前拥有的存储桶。

    Kinesis Data Firehose 在将数据从 S3 存储桶加载到 Amazon Redshift 集群后不会删除 S3 存储桶中的数据。您可以使用生命周期配置管理 S3 存储桶中的数据。有关更多信息,请参阅 Amazon Simple Storage Service 开发人员指南 中的对象生命周期管理

    Intermediate S3 bucket prefix

    (可选)要对 Amazon S3 对象使用默认前缀,请将此选项留空。Kinesis Data Firehose 对所传输的 Amazon S3 对象自动使用“YYYY/MM/DD/HH”UTC 时间格式的前缀。您可以将此前缀添加到开头。有关更多信息,请参阅 Amazon S3 对象名称格式

    COPY options

    您可以在 Amazon Redshift COPY 命令中指定的参数。您可以根据自己的配置情况酌情使用这些参数。例如,如果启用了 Amazon S3 数据压缩,则需要使用“GZIP”;如果 S3 存储桶没有位于与 Amazon Redshift 集群相同的 AWS 区域中,则需要使用“REGION”。有关更多信息,请参阅 Amazon Redshift Database Developer Guide 中的 COPY

    COPY command

    Amazon Redshift COPY 命令。有关更多信息,请参阅 Amazon Redshift Database Developer Guide 中的 COPY

    Retry duration

    将数据 COPY 到 Amazon Redshift 集群失败时,允许 Kinesis Data Firehose 重试的持续时间 (0–7200 秒)。Kinesis Data Firehose 每 5 分钟重试,直到重试持续时间结束。如果将重试持续时间设置为 0(零)秒,则 Kinesis Data Firehose 不会在 COPY 命令失败时重试。

    Source record S3 backup

    如果通过 AWS Lambda 启用数据转换,可以启用源记录备份将未转换的传入数据传输到单独的 S3 存储桶。在启用源记录备份之后,便不能禁用它。

    Backup S3 bucket

    接收未转换数据的 S3 存储桶。

    Backup S3 bucket prefix

    要对源记录备份使用默认前缀,请将此选项留空。Kinesis Data Firehose 对所传输的 Amazon S3 对象自动使用“YYYY/MM/DD/HH”UTC 时间格式的前缀。您可以将此前缀添加到开头。有关更多信息,请参阅Amazon S3 对象名称格式。此值为可选项。

选择 Amazon ES作为目标

本部分介绍将 Amazon ES 用于您的目标的选项。

选择 Amazon ES 作为目标

  1. Choose destination 页面上,为以下字段输入值:

    目的地

    选择 Amazon Elasticsearch Service

    数据将传输到的 Amazon ES 域。

    索引

    将数据索引到您的 Amazon ES 集群时使用的 Elasticsearch 索引名称。

    Index rotation

    选择是否轮换 Elasticsearch 索引以及多久轮换一次。如果启用索引轮换,Kinesis Data Firehose 将在指定的索引名称后面追加相应的时间戳并轮换。有关更多信息,请参阅针对 Amazon ES 目标的索引轮换

    Type

    将数据索引到您的 Amazon ES 集群时使用的 Amazon ES 类型名称。对于 Elasticsearch 6.x,每个索引只能有一个类型。如果您尝试为已具有其他类型的现有索引指定新类型,Kinesis Data Firehose 会在运行时返回错误。

    Retry duration

    对 Amazon ES 集群的索引请求失败时,允许 Kinesis Data Firehose 重试的持续时间(0–7200 秒)。Kinesis Data Firehose 每 5 分钟重试,直到重试持续时间结束。如果将重试持续时间设置为 0(零)秒,则 Kinesis Data Firehose 不会在索引请求失败时重试。

    Backup mode

    您可以选择只备份传输失败的记录,也可以选择备份所有记录。如果仅选择传输失败的记录,则 Kinesis Data Firehose 无法传输到 Amazon ES 集群或 Lambda 函数无法转换的任何数据都会备份到指定的 S3 存储桶。如果选择所有记录,则 Kinesis Data Firehose 在将数据传输到 Amazon ES 的同时将所有传入源数据都备份到 S3 存储桶。有关更多信息,请参阅 数据传输故障处理流程数据转换失败处理

    Backup S3 bucket

    您拥有的用作数据备份目标的 S3 存储桶。创建新的 S3 存储桶或选择您当前拥有的存储桶。

    Backup S3 bucket prefix

    (可选)要对 Amazon S3 对象使用默认前缀,请将此选项留空。Kinesis Data Firehose 对所传输的 Amazon S3 对象自动使用“YYYY/MM/DD/HH”UTC 时间格式的前缀。您可以将此前缀添加到开头。有关更多信息,请参阅Amazon S3 对象名称格式。此值为可选项。

  2. 选择 Next (下一步) 转至配置设置页面。

选择 Splunk 作为目标

本部分介绍使用 Splunk 作为目标的选项。

选择 Splunk 作为目标

  • Choose destination (选择目标) 页面上,为以下字段提供值:

    目的地

    选择 Splunk

    Splunk cluster endpoint

    要确定终端节点,请参阅 Splunk 文档中的配置 Amazon Kinesis Firehose 以将数据发送到 Splunk 平台

    Splunk endpoint type

    在大多数情况下,请选择 Raw。如果已使用 AWS Lambda 预处理您的数据,以便按事件类型将数据发送到不同的索引,请选择 Event。有关要使用的终端节点的信息,请参阅 Splunk 文档中的配置 Amazon Kinesis Firehose 以将数据发送到 Splunk 平台

    身份验证令牌

    要设置可从 Kinesis Data Firehose 接收数据的 Splunk 终端节点,请参阅 Splunk 文档中的 Amazon Kinesis Firehose 的 Splunk 插件的安装和配置概述。保存在为该传输流设置终端节点时从 Splunk 获取的令牌,并在此处添加该令牌。

    HEC acknowledgement timeout

    指定 Kinesis Data Firehose 等待 Splunk 确认索引的时间。如果 Splunk 在到达超时前未发送确认,则 Kinesis Data Firehose 将其视为数据传输失败。然后,Kinesis Data Firehose 重试或将数据备份到 Amazon S3 存储桶中,具体取决于您设置的重试持续时间值。

    Retry duration

    指定 Kinesis Data Firehose 重试向 Splunk 发送数据的时间。

    发送数据后,Kinesis Data Firehose 会先等待 Splunk 确认。如果出现错误或在确认超时期限内没有收到确认,Kinesis Data Firehose 将启动重试持续时间计数器。它将不断重试,直到重试持续时间到期。然后,Kinesis Data Firehose 将其视为数据传输失败,并将数据备份到 Amazon S3 存储桶中。

    每次 Kinesis Data Firehose 将数据发送到 Splunk 时,无论是初始尝试还是重试,它都会重新启动确认超时计数器并等待来自 Splunk 的确认。

    即使重试持续时间到期,Kinesis Data Firehose 仍会等待确认,直到它收到确认或到达确认超时期限。如果确认超时,Kinesis Data Firehose 将确定在重试计数器中是否有剩余时间。如果有剩余时间,它将再次重试并重复该逻辑,直到收到确认或确定重试时间已到期。

    如果不希望 Kinesis Data Firehose 重试发送数据,请将此值设置为 0。

    S3 backup mode

    选择是备份 Kinesis Data Firehose 发送到 Splunk 的所有事件,还是仅备份无法传输到 Splunk 的事件。如果您需要较高的数据持久性,请为所有事件启用该备份模式。还要考虑最初备份所有事件,直到您确认在 Splunk 中为您的数据正确编制了索引。

    S3 backup bucket

    选择现有备份存储桶或创建新存储桶。

    S3 backup bucket prefix

    您可以为 Amazon S3 备份存储桶指定一个前缀。