为什么选择 Kinesis Data Streams?
Amazon Kinesis Data Streams 是一项完全托管、无服务器的流式传输数据服务,可以轻松实时弹性摄取和存储日志、事件、点击流及其他形式的流式传输数据。Kinesis Data Streams 使用简单的即用即付定价模式。Kinesis Data Streams 提供三种模式:按需标准模式、按需增强模式和预置容量模式,所有模式都有特定的计费选项。单击以下选项卡了解有关这些选项的详细信息
AWS 定价计算器
在单次估计中计算 Amazon Kinesis Data Streams 及架构成本。
-
按需标准
-
按需增强
-
按需标准
-
在按需标准模式下,您需要为写入数据流和从中读取的数据量(GB)付费。您不需要指定希望应用程序执行的读写吞吐量。Kinesis Data Streams 在上升或下降时立即适应您的工作负载。
在按需模式下,定价基于提取和检索的数据量以及您帐户中每个数据流的每小时费用。可选功能会产生额外费用:延期数据留存(超过前 24 小时,在前 7 天内)、长期数据留存(7天以上,最多一年),以及增强型扇出。 账户中以按需标准模式运行的每条数据流也将按小时费率收费。
如果您创建了具有未知工作负载的新数据流、具有不可预测的应用程序流量或不希望管理容量,按需标准模式可能是最好的选择。
关键术语
数据输入: 提取到 Kinesis Data Streams 中的数据按写入数据流的 GB 计费。 将发送到服务的数据记录数乘以每个记录的大小,四舍五入到最接近的1KB(1024字节)。例如,如果每条数据记录的大小为 4.5 KB,Kinesis Data Streams 会将其计为 5KB 的提取数据。预设情况下,提取到 Kinesis Data Streams 中的所有数据都会存储 24 小时,并且不需要额外收费。
数据输出:从 Kinesis Data Streams 检索的数据按从数据流读取的每 GB 计费。这是通过检索的记录数乘以每条记录的大小来计算的。此计算没有应用四舍五入系数。如果每条数据记录的大小为 4.5 KB,Kinesis Data Streams 会将其计为 4.5 KB 的传出数据。
每条数据流:您的账户中以按需标准模式运行的每条数据流也按小时收费。
延期数据留存:默认情况下,Amazon Kinesis Data Streams 会将您的数据存储 24 小时。延长数据保留为将您数据流的存储期延长至长达 7 天的选项。对于存储时间超过24小时(最多7天)的数据,您将收取 GB 月费率。
长期数据保留:长期数据保留为您提供了存储数据流长达 365 天的选项。在最初的七天,您将收取延长的数据保留率,然后在指定的保留期内,对存储超过七天的数据收取较低的 GB 月费率。
增强型扇出功能:增强型扇出功能通过为每个数据使用者提供每个分片的读取吞吐量(最高2 MB /秒),从而改善读取并行性。使用者使用增强型扇出功能时,会根据检索的数据量(GB)产生额外费用。
按区域定价
定价示例
假设您每秒发送 1000 条流式传输数据,每条记录大小为 3 KB,发送到美国东部以按需标准模式运行的 Amazon Kinesis Data Stream。您希望将数据保留一天,并通过单个使用者进行处理。您的每月费用按以下方式计算:
记录大小向上取整为 3KB 的倍数,即 1 KB = 3 KB
提取的数据(GB/秒)=(1000 条记录/秒 * 3KB/记录)/1048576KB/GB = 0.00286 GB/秒
提取的数据(GB/月)= 30 天/月 * 86400 秒/天 * 0.00286 GB/秒 = 7,413.12 GB/月
由于您只有一个使用者:
检索的数据(GB/秒)= 1 (使用者) * (1,000 条记录秒 * 3 KB/记录) / 1,048,576 KB/GB = 0.00286 GB/秒检索的数据 (GB/月) = 30 天/月 * 86,400 秒/天 * 0.00286 GB/秒 = 7,413.12 GB/月
一天的保留期包含在数据提取费用中。
美国东部的价格为每 GB 提取的数据为 0.08 USD。
数据输入月度费用 = 7,413.12 GB x 0.08 USD/GB = 593.04 USD
美国东部的价格为每 GB 检索的数据为 0.040 USD
数据输出月度费用 = 7,413.12 GB x 0.040 USD/GB = 296.50 USD
由于数据流在一个月内使用30天:
每流费用 = 30 x 24 x 0.040 (费率)= 28.80 USD月度总费用= 593.04 USD + 296.50 USD + 28.80 USD = 918.34 USD
-
按需增强
-
在按需增强模式下,您需要为写入数据流和从中读取的每 GB 数据付费。您不需要指定希望应用程序执行的读写吞吐量。Kinesis Data Streams 会根据工作负载的增加或减少立即进行调节。您可以指定预热吞吐量,以将数据流即时扩展至预期峰值,无需额外费用。
定价基于摄取和检索的数据量,账户级别所有按需数据流的最低收费标准为数据摄取 25MB/s、数据检索 25MB/s。不收取固定流小时费用。可选功能延期留存(超出首个 24 小时,最长 1 年)将产生额外费用。使用增强扇出不收取额外费用。
如果您的数据摄取总量至少达到 10MB/s、扇出至超过 2 个使用者、账户中使用超过 50 个流,或者希望为按需流设置预热吞吐量,那么按需增强模式可能是最佳选择。
关键术语
数据输入:摄取到 Kinesis Data Streams 中的数据按写入数据流的数据量(GB)计费。将发送到服务的数据记录数乘以每个记录的大小,四舍五入到最接近的 1 KB(1024 字节)。例如,如果每条数据记录的大小为 4.5 KB,Kinesis Data Streams 会将其计为 5 KB 的摄取数据。默认情况下,摄取到 Kinesis Data Streams 中的所有数据都会存储 24 小时,并且不需要额外收费。
数据输出:从 Kinesis Data Streams 检索的数据按从数据流读取的数据量(GB)计费。该值通过检索的记录数乘以每条记录的大小来计算。此计算不应用舍入系数。如果每条数据记录的大小为 4.5 KB,Kinesis Data Streams 会将其计为 4.5 KB 的注入数据。
增强型扇出功能:增强型扇出功能通过为每个数据使用者提供各自的单分片读取吞吐量(最高 2MB / 秒)来提升多个消费应用程序的数据检索量。使用者使用增强扇出功能时,只需为读取数据量(GB)支付数据输出费用。
延期数据留存:默认情况下,Amazon Kinesis Data Streams 会将您的数据存储 24 小时。延期数据留存让您最多可以选择将存储期延长至 1 年。按 GB-月费率向您收费。
按区域定价
定价示例 1
假设您每秒发送 3000 条流式传输数据,每条记录大小为 10 KB,发送到美国东部以按需增强模式运行的 Amazon Kinesis Data Stream。您希望将数据保留一天,并通过单个使用者对其进行处理。您的每月费用按以下方式计算:
摄取的数据(GB/秒)=(3000 条记录/秒 * 10 KB/记录)/1048576 KB/GB = 0.0286 GB/秒
摄取的数据(GB/月)= 30 天/月 * 86400 秒/天 * 0.0286 GB/秒 = 74157.7 GB/月
由于您只有一个使用者:
检索的数据(GB/秒)= 1(使用者)*(3000 条记录/秒 * 10 KB/记录)/ 1048576 KB/GB = 0.0286 GB/秒检索的数据(GB/月)= 30 天/月 * 86400 秒/天 * 0.0286 GB/秒 = 74157.7 GB/月
一天的保留期包含在数据摄取费用中。
美国东部的价格为每 GB 摄取数据 0.032 USD
数据输入月度费用 = 74157.7 GB * 0.032 USD/GB = 2373.05 USD美国东部的价格为每 GB 检索数据 0.016 USD
数据输出月度费用 = 74157.7 GB * 0.016 USD/GB = 1186.52 USD月度总费用 = 2373.05 USD + 1186.52 USD = 3559.57 USD
定价示例 2
此示例描述当账户的数据吞吐量低于按需增强模式最低使用要求(25 MB/s)时的计费情况。假设您每秒发送 1000 条流式传输数据,每条记录大小为 10 KB,发送到美国东部以按需增强模式运行的 Amazon Kinesis Data Stream。您希望将数据保留一天,并通过单个使用者对其进行处理。您的每月费用按以下方式计算:
摄取的数据(GB/秒)=(1000 条记录/秒 * 10 KB/记录)/1048576 KB/GB = 0.00954 GB/秒
由于摄取的数据未达到最低承诺 25MB/s(0.0244GB/秒),因此会产生 0.0149GB/秒的差额费用摄取的数据(GB / 月)= 30 天/月 * 86400 秒/天 *(0.00954 GB/秒 + 0.0149 GB/秒)= 63281.25GB/月
由于您只有一个使用者:
检索的数据(GB/秒)= 1(使用者)* (1000 条记录秒 * 10 KB/记录) / 1048576 KB/GB = 0.00954 GB/秒
由于检索的数据未达到最低承诺 25MB/s(0.0244GB/秒),因此会产生 0.0149GB/秒的差额费用
检索的数据(GB / 月)= 30 天/月 * 86400 秒/天 *(0.00954 GB/秒 + 0.0149 GB/秒)= 63281.25GB/月一天的保留期包含在数据摄取费用中。
美国东部的价格为每 GB 摄取数据 0.032 USD
数据输入月度费用 = 63281.25 GB * 0.032 USD/GB = 2025.00 USD美国东部的价格为每 GB 检索数据 0.016 USD
数据输出月度费用 = 63281.25 GB * 0.016 USD/GB = 1012.50 USD月度总费用 = 2025.00 USD + 1012.50 USD = 3037.50 USD
* AWS 不会针对数据创建器传输到 Amazon Kinesis Data Streams 的数据,或从 Amazon Kinesis Data Streams 到您的消费应用程序的数据收取传输费用(如果所有资源位于同一区域)。
* 如果您的数据创建器正在写入其他区域的 Kinesis Data Stream,AWS 不会收取数据传输费用。 在按需模式下,如果您的消费应用程序正在从其他 AWS 区域的数据流读取数据,则会产生额外费用。 您需要支付标准 AWS 数据传输费用。
* 请注意,AWS 免费套餐中目前不包括 Amazon Kinesis Data Streams。AWS 免费套餐计划为您提供一系列 AWS 服务的免费试用。有关 AWS 免费套餐的更多详细信息,请参阅 AWS 免费套餐。
-
预置模式
在预置模式下,可以根据应用程序的写入和读取请求速率指定其需要的分片数。分片是一种容量单位,可提供 1 MB/秒的写入速率和 2 MB/秒的读取速率。
如果您有可预测的应用程序流量,运行流量一致或逐渐增加的应用程序,或者可以预测容量需求以控制成本,预置模式可能是最好的选择。
关键术语
分区小时:分区是 Amazon Kinesis 数据流的基本吞吐量单位。您可以根据吞吐量要求指定数据流所需的分区数量。您可以按小时对每个分区付费。
一个分区可以提供 1MB/秒 的提取容量或 1000 个记录/秒。
当数据使用者选择使用增强型扇出功能时,每个分区可以为每个使用者提供高达 2MB/秒的数据输出。
当数据使用者不使用增强型扇出时,无论从一个分区并行处理数据的使用者的数量是多少,每个分区都可以提供高达 2MB /秒的数据输出。
PUT Payload Unit (25 KB):记录是数据生产者添加到 Amazon Kinesis 数据流的数据。PUT Payload Unit 以组成一条记录的 25KB 有效载荷“块”计算。例如,5 KB 记录包含一个 PUT Payload Unit,45 KB 记录包含两个 PUT Payload Unit,而 1 MB 记录则包含 40 个 PUT Payload Unit。PUT Payload Unit 以每百万 PUT Payload Unit 费率收费。
增强型扇出功能: 增强型扇出功能通过为每个数据使用者提供每个分区的读取吞吐量(最高2 MB /秒),从而改善读取并行性。当使用者使用增强型扇出时,每个使用者分区小时和每 GB 检索的数据会按小时产生费用。
扩展数据保留:预设情况下,Amazon Kinesis Data Streams 会将您的数据存储 24 小时。延长数据保留为将您数据流的存储期延长至长达 7 天的选项。一旦您启用延长数据保留后,您需要按照您的数据流产生的每个分区小时支付额外的费用。
长期数据保留:长期数据保留为您提供了存储数据流长达 365 天的选项。对于前 7 天的数据保留,将向您收取延长数据保留费用,对于存储超过 7 天直至您指定的保留期的数据,将按照每月每 GB 的费率收费。
检索长期保留数据:如果您使用 GetRecords API 检索数据,那么对于存储超过 7 天的数据检索将按照每 GB 费率收费。对于原定设置存储 24 小时或依延长数据保留存储长达 7 天的数据,将不会收取检索费用。如果使用了增强型扇出功能使用者(SubscribeToShard API),则不会收取长期数据检索费用。
按区域定价
定价示例
让我们假定您的数据生产者平均每秒输入 100 个记录,每个记录大小为 35KB。在这种情况下,总数据总输入速率为 3.4MB/秒(100 个记录/秒*35KB/记录除以 1024 = 3.4 MB/秒)。为方便起见,我们假设每次交易的吞吐量和记录大小全天都是稳定不变的。请注意,我们可以随时动态调整 Amazon Kinesis 流处理的吞吐量。
首先,我们可以计算数据流达到所需吞吐量所需的分区数量。由于一个分区每秒可提供 1 MB 的数据输入容量并支持 1000 个记录,四个分区每秒可提供 4 MB 的数据输入容量和 4000 个记录。所以,具有四个分区的数据流可在 100 个记录/秒的速率下实现 3.4 MB/秒的所需吞吐量。
然后,我们使用美国东部地区的定价计算 Kinesis Data Streams 的月度费用:
分区小时:一个分区每小时的费用为 0.015 USD,或每天 0.36 USD(0.015 USD x 24)。我们的数据流具有四个分区,因此它每天的费用为 1.44 USD (0.36 USD*4)。若一个月有 31 天,我们的分区时间月度费用为 44.64 USD (1.44 USD*31)。
PUT Payload Unit (25KB):由于我们的记录是 35 KB,因此每条记录包含两个 PUT Payload Unit。我们的数据创建器合计每秒存放 100 条记录或 200 个 PUT Payload Unit。即每月 267840000 条记录或 535680000 个 PUT Payload Unit。由于 100 万 PUT Payload Unit 费用为 0.014 USD,我们每月的 PUT Payload Unit 成本为 7.499 USD(0.014*535.68 USD)。
另外,我们可以选择将数据流的数据保留期间从 24 小时延长至最多 7 天。在本示例中,我们假定数据流已在整个月内启用了延长数据保留。您也可以仅在对防止数据丢失至关重要的时候选择扩展数据保留,这样可以节省扩展保留的成本。
延长数据保留(最多 7 天):延长数据保留费用为每分区小时额外需要 0.020 USD。由于我们的数据流每月产生 2976 个分区小时(4 个分区*24 小时/天*31 天/月),因此每月的延长数据保留费用为 59.52 USD (0.020 USD*2976 )
将分区时间费用和 PUT Payload Unit 费用相加,得出 Amazon Kinesis Data Streams 的总费用为每天 1.68 USD,或每月 52.14 USD。每天花费 1.68 USD,我们可以使用完全托管的流处理数据基础设施,从而以灵活可靠的方式每秒持续提取 4 MB 数据或每月 337 GB 数据。此外,您可以将保留期从 24 小时最多延长至 7 天,这样每月需要额外支付 59.52 USD。
您还可以选择保留数据超过 7 天,并使用增强型扇出功能。
长期数据保留(超过 7 天的数据):让我们假设您想要将您的数据流保留 30 天。您将需要支付从 24 小时到长达 7 天的延长数据保留分区小时定价(参见上述计算方法)和超过 7 天到 30 天(23 天期限)的长期数据保留定价所产生的费用。对于 23 天的长期保留定价,如果您使用原定设置使用者 (GetRecords API),则须额外支付 0.023 USD/每月每 GB 的存储费用和 0.021 USD/每 GB 的数据检索费用。基于 3.4MB/秒 的数据输入速率计算,一小时内您将累积 3.4(输入速率)*1024 *1024*3600 = 12,902,400,000 字节。
在月底,您的使用量如下:
3,565,158 x 23天 x 24 小时/天 = 7,122,124,800,000 字节-小时
转换为 GB 月使用量:
7,122,124,800,000 字节-小时/ 1,073,741,824 字节/GB = 6,633 GB /月因此 23 天保留期的总存储成本 = 6633*0.023 USD = 152.56 USD 每月。
长期数据检索(超过 7 天的数据):如果您使用利用 GetRecords API 来获取记录的单个使用者来检索所有长期数据,那么只有存储超过首 7 天的数据才会产生检索费用。由于您正在检索 6623 GB 的数据,因此在月底将向您收取6623 x 0.021=139.08 USD 的费用。使用增强型扇出使用者检索的长期数据检索,将按照下列方式产生增强型扇出功能数据检索费率:
增强型扇出使用者分区小时:增强型扇出的每个分区需要额外支付 0.015 USD,每个数据使用者产生的该费用需要相加。由于我们的数据流每月产生 2976 个分区小时(4 个分区 x 24 小时/天 x 31 天/月),因此在此期间使用增强型扇出的每个使用者将产生 44.64 USD (2976 x 0.015 USD) 的费用。同一期间内的两名使用者将产生 89.28 USD 的费用。
增强型扇出数据检索:使用者使用增强型扇出从数据流中检索的数据将产生 0.013 USD/GB 的费用。如果超过一个月,两个分区流提取 50000 MB 数据,2 个数据使用者使用增强型扇出功能并在该月内检索了所有这些数据,检索的数据总量为 100000 MB(50000 MB x 2 个数据使用者)或 97.6 GB。由于每个 GB 的费用为 0.013 美元,因此增强型扇出成本总计为1.26美元(97.6 x 0.013 USD)。
* 对于原定设置存储 24 小时或依延长数据保留存储长达 7 天的数据,从 Amazon Kinesis 数据流获取记录为免费。对于依长期保留存储超过 7 天直至 365 天限制的数据检索,将按照每 GB 费率收费。
* 如果您选择使用增强型扇出功能,则每个使用者分片小时和检索的每 GB 数据会按小时产生费用。
* 在预置模式下,从其他 AWS 区域的数据流读取数据不会产生额外费用。
服务水平协议
访问我们的常见问题,了解 Amazon Kinesis Data Streams 服务水平协议。