创建和更新数据流 - Amazon Kinesis Data Streams
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

创建和更新数据流

Amazon Kinesis Data Streams 实时吸收大量数据、持久存储数据并使这些数据可供使用。Kinesis Data Streams 存储的数据单位是数据记录数据流 表示一组数据记录。数据流中的数据记录将分发到分片中。

分片具有流中的一系列数据记录。在创建流时,您将指定流的分片数。流的总容量是其分片容量的总和。您可以根据需要增加或减少流中的分片数。但请注意,您需要按分片付费。有关分片的容量及限制的信息,请参阅 Kinesis Data Streams 限制

创建器将数据记录放入分片,使用者从分片中获取数据。

确定 Kinesis Data Streams 的初始大小

在创建流之前,您需要确定流的初始大小。在创建流后,可以使用 Amazon Web Services Management Console或 UpdateShardCount API 动态扩展或缩减分片的容量。当有 Kinesis Data Stream 应用程序使用流中数据时,可以进行更新。

要确定流的初始大小,您需要以下输入值:

  • 写入流的数据记录的平均大小(以 KB 为单位,四舍五入为 1 KB),数据大小 (average_data_size_in_KB)。

  • 每秒写入流和从流读取的数据记录数 (records_per_second)。

  • 并发且独立使用流中数据的 Kinesis Data 流应用程序的数量,即使用者数量 (number_of_consumers)。

  • 以 KB 为单位的传入写入带宽 (incoming_write_bandwidth_in_KB),等于 average_data_size_in_KB 乘以 records_per_second

  • 以 KB 为单位的传出读取带宽 (outgoing_read_bandwidth_in_KB),等于 incoming_write_bandwidth_in_KB 乘以 number_of_consumers

可使用以下公式中的输入值来计算流所需的分片的初始数量 (number_of_shards):

number_of_shards = max(incoming_write_bandwidth_in_KiB/1024, outgoing_read_bandwidth_in_KiB/2048)

创建流

您可以使用 Kinesis Data Streams 控制台、Kinesis 数据流 API 或Amazon Command Line Interface(Amazon CLI)。

使用控制台创建数据流

  1. 登录到Amazon Web Services Management Console,然后打开 Kinesis 控制台https://console.aws.amazon.com/kinesis

  2. 在导航栏中,展开区域选择器并选择一个区域。

  3. 选择创建数据流

  4. Create Kinesis stream (创建 Kinesis 流)页面上,输入流名称和所需分片数量,然后单击 Create Kinesis stream (创建 Kinesis 流)

    Kinesis stream (Kinesis 流)页面上,当流处于创建中时,流的 Status (状态)Creating (正在创建)。当流可以使用时,Status (状态) 会更改为 Active (有效)

  5. 选择流的名称。Stream Details (流详细信息) 页面显示了流配置摘要以及监控信息。

使用动能数据流 API 创建流

  • 有关使用 Kinesis Data Streams API 创建流的信息,请参阅创建流

使用 Amazon CLI 创建流

  • 有关使用 Amazon CLI 创建流的信息,请参阅 create-stream 命令。

更新流

您可以使用 Kinesis Data Streams 控制台、Kinesis 数据流 API 或Amazon CLI。

注意

您可以为现有流或最近刚创建的流启用服务器端加密。

使用控制台更新数据流

  1. 打开 Amazon Kinesis 控制台https://console.aws.amazon.com/kinesis/

  2. 在导航栏中,展开区域选择器并选择一个区域。

  3. 在列表中选择流的名称。Stream Details (流详细信息) 页面显示流配置摘要和监控信息。

  4. 要编辑分片数量,请在 Shards 部分中选择 Edit,然后输入新分片数。

  5. 要对数据记录启用服务器端加密,请选择编辑中的服务器端加密部分。选择要用作加密主密钥的 KMS 密钥,或者使用默认主密钥aws/kinesis, 由 Kinesis 管理. 如果您为流启用加密,并使用自己的 Amazon KMS 主密钥,请确保您的创建器和使用者应用程序有权访问您使用的 Amazon KMS 主密钥。要将权限分配给应用程序以访问用户生成的 Amazon KMS 密钥,请参阅使用用户生成的 KMS 主密钥的权限

  6. 要编辑数据保留期,请选择 Data retention period 部分中的 Edit,然后输入新的数据保留期。

  7. 如果您在账户中启用了自定义指标,请选择编辑中的分片级指标部分,然后为流指定量度。有关更多信息,请参阅使用亚马逊云观察监控 Amazon Kinesis Data Streams 服务

使用 API 更新流

要使用 API 更新流详细信息,请参阅以下方法:

使用 Amazon CLI 更新流

有关使用 Amazon CLI 更新流的信息,请参阅 Kinesis CLI 参考