注意:以下翻译的准确性尚未经过验证。这是使用 AIP ↗ 从原始英文文本进行的机器翻译。
将 Foundry 连接到 Amazon Kinesis,以实时从 Kinesis 流读取数据到 Foundry 流中。
功能 | 状态 |
---|---|
探索 | 🟢 普遍可用 |
流同步 | 🟢 普遍可用 |
流导出 | 🟢 普遍可用 |
partition_key (字符串) | data (字符串) | kinesis_ingestion_timestamp (时间戳) | foundry_ingestion_timestamp (时间戳) |
---|---|---|---|
London | {"firstName": "John", "lastName": "Doe"} | 2023-07-12T15:12:42.371Z | 2023-07-12T15:12:42.512Z |
Paris | {"firstName": "Jean", "lastName": "DuPont"} | 2023-07-12T15:12:42.418Z | 2023-07-12T15:12:42.512Z |
Kinesis 连接器将消息内容解析为 Unicode 字符串。使用下游流变换(例如,Pipeline Builder中的parse_json
)解析结构化数据。
partition_key
列将包含用于将消息发布到 Kinesis 的分区键。kinesis_ingestion_timestamp
列将包含将消息发布到 Kinesis 的时间戳。foundry_ingestion_timestamp
列将包含消息被 Foundry 吸收的时间戳。连接器始终在源 Kinesis 流的每个活动分片上使用单个消费者线程。
流同步旨在成为一致的、长期运行的任务。任何流同步的中断都是潜在的中断,具体取决于预期的结果。
目前,流同步有以下限制:
我们建议通过每个源的两个代理进行连接,以最小化停机时间。确保代理没有重叠的维护窗口。
Kinesis 连接器保证具有相同 partition_key
的消息的传递顺序。具有不同 partition_key
值的消息可能以任何顺序处理。
了解更多关于在 Foundry 中设置连接器的信息。
参数 | 必填? | 默认值 | 描述 |
---|---|---|---|
AWS 区域 | 是 | us-east-1 | 您的 Kinesis 流所在的 AWS 区域。 |
为您的 Kinesis 连接选择一种认证方法:AWS 实例或静态凭证。
以下是一个 IAM 策略示例,包含从指定 kinesis 流读取和写入所需权限的示例。
Copied!1{ 2 "Version": "2012-10-17", 3 "Statement": [ 4 { 5 "Sid": "ReadKinesisStream", 6 "Effect": "Allow", 7 "Action": [ 8 "kinesis:ListShards", // 列出分片 9 "kinesis:GetShardIterator", // 获取分片迭代器 10 "kinesis:GetRecords", // 获取记录 11 "kinesis:DescribeStream" // 描述流 12 ], 13 "Resource": "arn:aws:kinesis:us-east-1:123456789012:stream/read-stream-name" // 读取流的资源 ARN 14 }, 15 { 16 "Sid": "WriteKinesisStream", 17 "Effect": "Allow", 18 "Action": [ 19 "kinesis:PutRecords" // 写入记录 20 ], 21 "Resource": "arn:aws:kinesis:us-east-1:123456789012:stream/write-stream-name" // 写入流的资源 ARN 22 } 23 ] 24}
此 JSON 配置定义了 AWS IAM 策略,用于 Kinesis 数据流的读取和写入权限。
AWS 实例认证仅在通过代理连接时可用,不能直接连接。
当您的 Foundry 代理运行在具有预配置 IAM 角色的 AWS 资源(例如 EC2 实例)上时,Kinesis 连接器将使用预配置的 IAM 角色连接到 Kinesis 流。不需要额外的配置。
静态凭证指的是标准的 AWS 认证,使用与 IAM 用户绑定的访问密钥 ID 和秘密访问密钥。
参数 | 是否必需 | 默认值 |
---|---|---|
访问密钥 ID | 是 | 无 |
秘密访问密钥 | 是 | 无 |
Kinesis 连接器可以选择在连接到 Kinesis 流之前承担一个 STS 角色。有关这些参数的详细信息,请参考 AWS 文档 ↗。
参数 | 是否必需 | 默认值 |
---|---|---|
角色 ARN | 是 | 无 |
角色会话名称 | 是 | 无 |
角色会话持续时间 | 是 | 900 |
外部 ID | 否 | 无 |
连接器必须可以访问 AWS Kinesis API,如果使用 STS 角色,则还需访问 AWS STS API。
https://kinesis.<region>.amazonaws.com
https://sts.<region>.amazonaws.com
了解如何在设置流式同步教程中设置与 Kinesis 的同步。
连接器支持在数据连接中以外部 Kinesis 流的方式导出。
要以 Kinesis 格式导出,首先为您的 Kinesis 连接器启用导出。然后,创建一个新的导出。
选项 | 是否必需 | 默认值 | 描述 |
---|---|---|---|
输出流 ARN | 是 | N/A | 您希望导出的 Kinesis 流的 ARN。 |
分区列 | 是 | 第一个字符串列 | 将用于确定数据记录在流中属于哪个分片的列。必须是一个字符串值,通常是主键。查看 AWS 文档 ↗ 获取更多信息。 |