

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 创建直播桌配送
<a name="data-delivery-st-create"></a>

 创建一种传输，将记录从 Amazon Kinesis Data Streams 流持续发送到由 S3 表存储桶支持的 Apache Iceberg 上的流式传输表。您可以使用 Amazon Web Services 管理控制台 或创建配送 Amazon CLI。创建交付时，Amazon Kinesis Data Streams 会在您指定的表存储桶中创建目标 Iceberg 表。

**注意**  
 在创建交付之前，请完成中的先决条件[直播表入门](data-delivery-st-getting-started.md)，包括中所述的 IAM 服务执行角色[用于数据传输的 IAM 权限](data-delivery-iam.md)。流式传输表需要架构注册表中的 Amazon Glue 架构和死信队列。

## 使用 Amazon Web Services 管理控制台
<a name="data-delivery-st-create-console"></a>

1. 打开 Kinesis 控制台，网址为。[https://console.amazonaws.cn/kinesis](https://console.amazonaws.cn/kinesis)

1. 在导航窗格中，选择**流式传输表**，然后选择**创建直播表**。

1. **步骤 1：源配置。**在**配送详情**下，输入**配送名称**。可接受的字符包括大写和小写字母、数字、下划线、连字符和句点。对于**来源**，选择要从中 On-Demand传送的直播。仅显示 On-Demand 直播。选择**下一步**。

1. **步骤 2：目标配置。**在 “**录音转换配置**” 下，选择一种**录音转换格式**：
   + JSO@@ **N** — 根据架构注册表中的 Amazon Glue 架构进行验证的 JSON 记录。在 Glue 架构注册表下提供**架构 AR** N。
   + **Glue 架构注册表 JSON** — 使用 Amazon Glue 架构注册表 JSON 架构转换记录。

   对于 **Glue 架构注册表**，请指定架构 ARN 或选择**浏览**以选择一个架构 ARN。

1. 在**目标表**下，指定 Amazon Kinesis Data Streams 在哪里创建 Iceberg 表：
   + **S3 表存储桶 ARN** — S3 表存储桶的 ARN。选择 “**浏览 S3**” 以选择一个。
   + **命名空间** — 表的命名空间（仅限小写字母、数字和下划线）。
   + **表名**-要创建的表的名称。
   + **列名** — 架构中用于按小时对表进行分区的日期时间字段的名称。该字段必须是架构中具有日期时间格式的字符串字段。
   + **压缩类型** **— 选择 **ZSTD**、**Snappy 或 N** one。**
   + **数据新鲜度**-传送记录之前的最大缓冲时间（以秒为单位）（最小 300，最大 900）。

   选择**下一步**。

1. **步骤 3：其他配置。**配置以下内容，然后选择**下一步**：
   + **加密配置**-默认情况下，数据使用默认 Amazon S3 加密进行加密。要使用客户管理的密钥，请选择**自定义加密设置（高级）**。
   + **服务访问权限** — 对于 **IAM 角色 ARN**，选择或创建授予目标访问权限的 IAM 角色。选择**创建 IAM 角色**来创建一个。
   + **死信队列** — 对于 **S3 存储桶 URI**，请选择用于存储无法交付的记录的 Amazon S3 存储桶。（可选）设置 **S3 存储桶错误输出前缀**。
   + **日志传输**-（可选）选择 “**传送到 Amazon CloudWatch 日志**” 以捕获传输诊断。
   + **标签**-（可选）添加键值标签以识别和组织您的交付。

1. **步骤 4：查看并创建。**查看您的配置，然后选择**创建直播表**。配置完成后，交付将从 “创建” 转换为 “活动”。

## 使用 Amazon CLI
<a name="data-delivery-st-create-cli"></a>

 使用`create-channel`命令创建流式表传输。此配置需要架构注册表中的 Amazon Glue 架构和死信队列：

```
aws kinesis create-channel \
    --channel-name "my-iceberg-delivery" \
    --service-execution-role-arn "arn:aws:iam::111122223333:role/my-channel-role" \
    --stream-configuration-list '[
        {
            "StreamARN": "arn:aws:kinesis:us-east-1:111122223333:stream/my-stream",
            "RecordConfiguration": {
                "RecordFormatType": "JSON",
                "GSRSchemaARN": "arn:aws:glue:us-east-1:111122223333:schema/my-registry/my-schema"
            }
        }
    ]' \
    --s3-tables-destination-configuration '{
        "DataFreshnessInSeconds": 300,
        "DeadLetterQueueS3Configuration": {
            "BucketARN": "arn:aws:s3:::amzn-s3-demo-dlq-bucket",
            "ExpectedBucketOwner": "111122223333",
            "ErrorOutputPrefix": "dlq/"
        },
        "S3TablesConfigurationList": [
            {
                "TableBucketARN": "arn:aws:s3tables:us-east-1:111122223333:bucket/amzn-s3-demo-table-bucket",
                "Namespace": "my_namespace",
                "TableName": "my_table",
                "CompressionType": "ZSTD",
                "PartitionSpec": {
                    "PartitionFields": [
                        {
                            "SourceName": "timestamp",
                            "Transform": "TIME_HOUR"
                        }
                    ]
                }
            }
        ]
    }'
```

 该命令返回频道 ARN () `ChannelARN`。将其与一起使用`describe-channel`来验证交付是否已达到 “活动” 状态。请参阅[描述直播桌配送](data-delivery-st-describe.md)。

 **API 参考 — 参**见`CreateChannel`《*亚马逊 Kinesis Data Streams API* 参考》。