觀點 · 資訊分享
AWS Kinesis 資料流可以直接存進 S3 了:不用自己寫搬運程式,官方說最多省 6 成
Amazon Kinesis Data Streams 新增資料送達功能,串流資料能直接存進一般 S3 儲存桶,或轉成 Iceberg 資料表。AWS 說跟自建搬運流程比,送達成本最多省 6 成。
- 發布
- 2026-08-30
- 篇幅
- 約 5 分鐘 · 2,403 字
- 結構
- 7 節 + 4 題常見問題
- 標籤

一句話看懂:AWS 讓 Kinesis 資料流可以直接存進 S3,不用再自己寫程式搬資料;官方說送達費用比自建方案最多省 6 成。

先用白話講:Kinesis 與 S3 是什麼關係?
想像一條永遠不停的輸送帶,網站點擊紀錄、機器感測數據、應用程式日誌,一筆一筆放上去。這條輸送帶就是 Kinesis Data Streams。輸送帶上的東西如果沒人取走,過一陣子就掉了,所以通常會有人把資料搬到倉庫存起來,這個倉庫就是 Amazon S3。
以前「搬運工」要自己雇:寫一支消費程式,或串多個服務,還得顧擴充、重試、掛掉重啟。這次 AWS 把搬運工內建了,你只要在設定裡指定「送到哪個倉庫」。
發生什麼事
AWS 在兩天內宣布兩個相關功能:
- 8 月 28 日:streaming tables:把串流資料持續送進 S3 Tables,格式是 Apache Iceberg(一種方便分析查詢的資料表格式)。官方說比自建方案最多省 50% 的送達成本,下游查詢成本最多再省 30%
- 8 月 29 日:送達一般 S3 儲存桶:資料維持原本格式,不做轉換。官方說比自建方案最多省 60%
兩者都是全託管,採用量計價,沒有開通費、沒有最低消費,只有成功送達的資料才計費。所有提供 Kinesis Data Streams 的區域都能用,包括 GovCloud 與中國區域。
該選哪一種?
| 情境 | 建議 |
|---|---|
| 原始日誌封存、事件重播、批次處理 | 一般 S3 儲存桶 |
| 想用 Athena、Redshift、Spark 直接查 | streaming tables(Iceberg) |
| 資料要先經過自訂的轉換或清洗 | 這兩種送達不做自訂轉換,需要自己處理 |
給開發者的技術細節
依據官方開發人員指南:
- 呼叫
CreateChannel建立送達,指定目的地類型即可,也可從主控台設定 - 串流必須是 On-Demand Standard 或 On-Demand Advantage 容量模式
- 資料新鮮度可設定 300 到 900 秒(5 到 15 分鐘),預設 300 秒
- 只送達建立設定之後產生的紀錄,不回補舊資料
- Iceberg 送達:要用 AWS Glue Schema Registry 的結構定義、必須設定死信佇列、只能新增資料(append-only)、不支援欄位變更,也不能送進既有資料表,每個送達會建立新表
- 一般 S3 送達:支援 JSON、字串與二進位格式,不需要結構定義,S3 路徑結構可用輸出 key 範本自訂;目的地儲存桶可以跨帳號,Iceberg 則不行
- 目的地加密可使用客戶自管的 KMS 金鑰,不支援 AWS 受管的
aws/kinesis金鑰
後續(8 月 31 日):官方部落格公布 us-east-1 的價格:Iceberg 送達每 TB 14 美元、一般 S3 送達每 TB 11 美元,並說自建方案依內部分析最高約每 TB 28 美元。
我的看法
常見的日誌封存做法,是在 Kinesis 後面接一支 Lambda 寫進 S3。小流量時沒什麼感覺,流量一大,帳單和維護工作就會一起長大。把搬運工內建、只收成功送達的資料量,對這種情境是明確的簡化。
但別忘了兩件事:一是 5 到 15 分鐘的延遲,要求「幾秒內就要看到」的場景不適用;二是來源串流必須是 On-Demand 模式,如果原本不是,得先評估整體計費變化,不是開了就一定省。官方的「最多省 6 成」是跟自建方案比,條件寫在「最多」兩個字裡,自己的帳單要自己算。
名詞小辭典
- 串流(Stream):不斷產生、持續流動的資料,例如網站每一次點擊。
- Apache Iceberg:一種資料表格式,讓存在 S3 的檔案可以像資料庫一樣被查詢。
- 全託管(Fully managed):擴充、重試、維護都由 AWS 處理,使用者只需設定。
- 死信佇列(Dead-letter queue):專門放「送不過去的資料」紀錄的地方,方便事後排查。
資料來源
- AWS What’s New:Amazon Kinesis Data Streams announces data delivery to general purpose Amazon S3 buckets(2026-08-29)
- AWS What’s New:Amazon Kinesis Data Streams announces streaming tables, delivering data to Apache Iceberg tables on Amazon S3 Tables(2026-08-28)
- Kinesis Data Streams 開發人員指南:Streaming tables and S3 delivery
- Kinesis Data Streams 開發人員指南:Data delivery concepts
- AWS Big Data 部落格:Deliver real-time data to streaming tables for Apache Iceberg(2026-08-31,後續)