觀點 · 資訊分享
AWS ElastiCache for Valkey 加上 durability:記憶體資料庫也能存「不能掉」的資料
AWS 讓 ElastiCache for Valkey 可以把資料同步寫進跨機房的日誌,讀取仍是微秒等級。非同步模式寫入最快,但罕見故障時最多可能遺失 10 秒的資料。
- 發布
- 2026-06-02
- 篇幅
- 約 4 分鐘 · 1,603 字
- 結構
- 7 節 + 4 題常見問題
- 標籤

一句話看懂:AWS 讓 ElastiCache for Valkey 多了「durability(持久性)」功能,資料會同時記在多個機房,原本偏向當快取用的記憶體資料庫,現在也能存「不能掉」的資料。

先用白話講:durability 是什麼?
想像你在白板上記帳。白板寫字、擦字都很快,但如果有人不小心把白板擦掉,帳就沒了。快取(Cache)就像這塊白板:速度很快,通常放「掉了可以重算」的東西。
Durability(持久性),就是在白板旁邊再放一本帳本,每寫一筆就同時抄一份,而且抄在不同的地方。白板繼續負責快速讀取,帳本負責萬一出事時把資料救回來。
發生什麼事
AWS 在 2026 年 6 月 2 日宣布,Amazon ElastiCache for Valkey 支援 durability。Valkey 是一種把資料放在記憶體裡的資料庫,讀取速度可以到微秒(百萬分之一秒)等級。
做法是把資料記進一份跨多個可用區(AZ,可以想成同一個地區裡彼此獨立的機房)的交易日誌。節點重啟、故障轉移、資料庫復原的時候,都靠這份日誌把資料找回來。
你可以選兩種寫入方式:
| 同步寫入 | 非同步寫入 | |
|---|---|---|
| 什麼時候回覆程式 | 資料至少存進 2 個 AZ 之後 | 先回覆,之後再存進日誌 |
| 寫入延遲 | 個位數毫秒 | 微秒 |
| 掉資料的風險 | 設計目標是零資料遺失 | 罕見故障時,最多可能遺失 10 秒內還沒寫入的資料 |
| 額外費用 | 公告沒有寫數字,請看官方價格頁 | 官方寫明沒有額外費用 |
兩種方式的讀取速度都維持微秒等級。
哪些用途現在可以考慮?
官方列出的例子有:
- AI 代理(Agent)的長期記憶
- AI 代理的工作流程狀態
- RAG 應用的知識庫
- 支付代碼化(payment tokenization)
- 即時庫存管理
這些用途的共同點是:要很快,而且資料不能說掉就掉。公告的重點就是,ElastiCache 現在可以用在這類「不只是快取」的場景。
給開發者的技術細節
- 版本:從 Valkey 9.0 起支援。
- 地區:所有 AWS 商用區域、中國區域、GovCloud (US) 區域。
- 開啟方式:建立新的 ElastiCache 叢集時,在 AWS 主控台、SDK 或 CLI 選擇想要的 durability 選項。
- 既有叢集:公告只提到「建立新叢集時選擇」,既有叢集能不能轉換,請以官方文件為準。
- 兩種模式怎麼挑:同步寫入的延遲從微秒變成個位數毫秒。如果你的程式每筆寫入都要等回應,上線前最好用自己的流量量一次,再決定要不要用。
我的看法
接案或自己架服務時,常見的分工是:主要資料放在一般資料庫,記憶體資料庫只放暫存。這個功能會讓這條界線變得模糊,但我不會因此就把主要資料搬過去。
原因很單純:公告沒有提到價格細節、容量上限和復原要花多久,這些都是決定能不能當主資料庫的關鍵。比較合理的做法,是先拿它放那些「掉了很麻煩、但不是命脈」的資料,例如 AI 代理的對話狀態。
另外,非同步模式的「最多 10 秒」要先跟需求方講清楚。對庫存或付款相關的資料,10 秒可能一點都不短,這種情況就選同步寫入,把延遲當成保險費。
名詞小辭典
- Valkey:把資料放在記憶體裡的資料庫,讀寫速度很快,常用來當快取。
- 可用區(AZ):同一個雲端地區內彼此獨立的機房,一個出事不會連累其他的。
- 交易日誌(Transaction log):依序記下每一筆寫入的流水帳,出事時照著它就能把資料復原。
- RAG:讓 AI 回答前先去查資料庫的做法,查到的內容會一起交給 AI 參考。