AWS Kinesis 实时数据流
AWS Kinesis Data Streams — 实时数据流服务,Provisioned $0.015/shard·小时,On-Demand $0.08/GB 写入,最长保留 365 天。通过 SevenColorYun 购买可享充值返赠 5% 起的代理优惠。
产品规格
- 两种模式
- Provisioned (按 shard) / On-Demand (按流量, 自动扩缩)
- 写入性能
- 每 shard 1MB/s 或 1000 条/秒
- 读取带宽
- 每 shard 2MB/s (共享) 或 EFO 2MB/s × N 消费者
- 最长保留
- 365 天 (长保留 $0.023/GB/月)
- Kinesis 家族
- Data Streams / Firehose / Analytics / Video Streams
$0.015/h
单 shard 成本
US East 区域
$0.08/GB
On-Demand 写入
按实际流量
365天
最长保留期
$0.023/GB/月
99.9%
SLA
Data Streams
AWS Kinesis 是什么?实时数据流服务——Provisioned 按 shard / On-Demand 按 GB / Firehose 投递——三兄弟分工
AWS Kinesis 是 AWS 的实时数据流服务族,包含四个产品:Data Streams(实时流——事件写入 → 多消费者拉取)、Firehose(自动投递——事件 → 自动转换格式并写入 S3/Redshift/Splunk/Elastic)、Analytics(SQL/流处理——对 Data Streams 中的事件做窗口聚合/过滤/Join)、Video Streams(视频流——这个和数据分析不直接相关)。通常说「Kinesis」指 Data Streams——它是核心流存储层。
Kinesis 的核心模型是 shard——每个 shard 提供 1MB/s 写入 + 2MB/s 读取带宽(最多 1000 条/秒写入 + 2000 条/秒读取)。多个消费者(Lambda/EC2/KCL 应用)通过每个消费者自己的 cursor/checkpoint 独立消费流——消费者之间不互影响。
通过 SevenColorYun 代理 AWS,Kinesis 的 shard 费、On-Demand 流量费和 Enhanced Fan-Out 费用享充值返赠 5% 起。
Kinesis 的核心机制:Shard → Partition Key → Consumer 模型
Shard 模型 — 每个 Stream 被分成多个 shard。每条消息的 Partition Key(MD5 → shard 决定)保证同一 key 的消息按序到达同一 shard——这是 Kinesis 实现有序性的核心。Provisioned 模式:你声明 shard 数(最少 1 个),按 shard·小时计费。可用 SplitShard(把 1 个 shard 拆成 2 个=翻倍写入容量)和 MergeShard(2 个 shard 合成 1 个=降低成本)动态调整。
On-Demand 模式 — 无需声明 shard 数——AWS 自动根据活跃流量分配足够容量(初始 4 MB/s 写入基准,可自动扩展到历史峰值的 2x)。按实际 GB 计费——适合不可预测流量(新服务、事件驱动、突发负载)。On-Demand Advantage(2025 年 11 月)加入「预热吞吐」——最多预热 10 GB/s。
Retention — 默认 24 小时(价格含在 shard 费中),最长可扩展到 365 天(额外 $0.023/GB/月 + $0.021/GB 检索费)。长保留实现数据「回放」——你可以重新消费 7 天/30 天/365 天前的历史事件。
Enhanced Fan-Out (EFO) — 默认模式每个 shard 只有 2MB/s 读取带宽——所有消费者共享。EFO 给每个消费者独立的 2MB/s 带宽(按 consumer-shard-hour 计费 $0.015/h)。适用:多个实时消费者(一个做告警、一个做分析、一个存 S3)且每个需要独立低延迟消费的场景。
Kinesis 在出海场景中的实际应用?
场景一:SaaS 实时事件管道(Kinesis + Lambda + S3 + Redshift)
面向海外的 SaaS 产品——用户点击流/应用事件(每秒 200-500 条)→ Kinesis Data Streams(1 shard, Provisioned, 24h 保留)→ Lambda 实时处理(过滤/聚合/富化)→ S3 存储(Parquet 格式分区)→ Redshift Spectrum 做历史分析。总月费 ~$38-68/月(代理价约 $33-59/月)。
场景二:游戏 Events 多消费者(Kinesis + EFO)
手游实时事件(对局结束/击杀/升级/内购)→ Data Streams(5 shards, Provisioned)→ 3 个消费者:(1) Lambda → 实时击杀排行榜(Redis)→ 00.5s 延迟;(2) EFO → EMR → 离线反外挂分析(30 天保留);(3) Firehose → S3 → 长保留归档(1 年 365d)。EFO 额外 0.015/consumer-shard-hour × 2 消费者 × 5 shards × 730h = ~$110/月——增加了多消费者的确定性延迟保障。
场景三:IoT 遥测数据(On-Demand + S3)
IoT 传感器遥测数据(不可预测周期性突发)→ On-Demand(自动扩缩——零配置)→ Firehose(Parquet 自动转换)→ S3 → Athena 查询。On-Demand 避免 Provisioned 的「不足/超额 shard」问题。
Kinesis vs SQS vs Kafka vs 阿里云 SLS:流与队列对比
| 维度 | AWS Kinesis | AWS SQS | Apache Kafka | 阿里云 SLS |
|---|---|---|---|---|
| 模型 | 事件流 (Pub/Sub) | 任务队列 (Pull) | 事件流 (Log) | 日志流 (写入+查询) |
| 消费模式 | 多消费者独立游标 | 一个消费者消费后删除 | Consumer Group offset | 查询式消费 |
| 保留 | 24h-365 天 | 1min-14 天 | 任意 (磁盘大小) | 1-365 天 |
| 有序保证 | Partition Key 级 | FIFO Queue 级 (300 TPS) | Partition Key 级 | 无(索引查询) |
| 运维模式 | 全托管 (shard/Ondemand) | 全托管 (Serverless) | 自建或 MSK (托管) | 全托管 (按量+资源包) |
| 代理优惠 | 充值返赠 5% 起 | 充值返赠 5% 起 | N/A | 充值返赠 10% 起 |
Kinesis + Lambda + S3 + DynamoDB:实时处理管道产品组合
| 组件 | 角色 | 月费估算 (中型场景) |
|---|---|---|
| Kinesis Data Streams | 事件流存储 (1 shard, 24h) | ~$11/月 |
| Lambda 函数 | 实时事件处理 (10M 次/月) | ~$20/月 |
| S3 标准存储 | 处理后数据归档 (Parquet, 500GB) | ~$11.50/月 |
| DynamoDB | 实时聚合结果存储 | ~$5/月 |
| 总计 | — | ~$47.50/月 (代理价约 $41/月) |
以上为参考架构。实际费用随事件量、消费者数、保留期变化。
相关资源
- AWS Kinesis Data Streams 开发者指南
- Kinesis 定价页
- Kinesis 最佳实践
- AWS SQS 消息队列 — Kinesis 的互补产品(队列 vs 流)
- AWS Lambda 函数计算 — Kinesis 事件处理器
- 阿里云 SLS 日志服务 — 日志流对比
5 步开通 AWS:从零到实例启动
联系客服
点击右下角 WhatsApp 或 Telegram,告知数据流速和消费者数量
提交信息
提供企业名称或个人信息用于 AWS 账号注册
选择充值金额
$1,000 起充,$5,000 送 $800、$10,000 送 $1,500
获取凭证
即刻收到 AWS 账号,在 Kinesis 控制台创建 Data Stream
开始使用
创建 Stream → 配置保留期 → 写入数据,享受充值返赠 5% 起
核心特性
- Provisioned 模式 — 固定容量 shard 数(1MB/s 写+2MB/s 读/shard),适合可预测负载
- On-Demand 模式 — 按 GB 计费自动扩缩,无容量管理,适合不可预测负载(新推出 On-Demand Advantage 省 60-77%)
- Enhanced Fan-Out — 每个消费者 2MB/s 独立带宽,不共享 shard 读取配额(适合多消费者场景)
- 与 Lambda/S3/Redshift/Splunk 原生集成 — Firehose 自动投递到目标(零代码 ETL 管道)