開發生態
Perplexity 棄用 DynamoDB 自研 CobbleDB,兩工程師與 AI 耗時兩月以 Rust 打造,讀取延遲降五倍
AI 前線單一來源
核實資料不足
目前依單一來源整理,這是來源數量描述,不是對消息真假的判定。
本次未取得足夠原文證據
據報導,Perplexity 已將核心搜尋服務層從 Amazon DynamoDB 遷移至內部自研的分散式鍵值儲存系統 CobbleDB。傳統搜尋引擎僅回傳簡短元資料,但面向語言模型的檢索需提取完整分塊段落與稠密向量,平均記錄載荷達 50KB;在每秒逾 20 萬次請求下,DynamoDB 按位元組計費的模式成本過高,且黑箱機制易產生尾延遲峰值。
為此,工程團隊將架構拆分為三部分:負責持久化狀態管理、基於 YTsaurus 運行於傳統硬碟的 Pillar;負責將資料打包至 Amazon S3 的無狀態佇列 Lorry;以及專注於低延遲服務的 CobbleDB。CobbleDB 核心使用 RocksDB 作為嵌入式儲存引擎,結合記憶體映射快取與本地 NVMe 固態硬碟,並捨棄標準分散式事務協議,改採非同步更新以承受最終一致性。
實測顯示,CobbleDB 將批量讀取延遲中位數從 31.4 毫秒降至 5.60 毫秒,p99 尾延遲從 123 毫秒降至 24.2 毫秒,整體儲存費用下降至少 20%。執行長 Aravind Srinivas 表示,該系統包含約 4 萬行 Rust 程式碼,由兩名工程師與自主 AI 代理叢集在兩個月內共同完成,AI 負責整合測試與建構監控,未來計畫開源程式碼庫。
讀原始報導背景
Perplexity 的新架構底層依賴了多項開源技術,其中負責持久化狀態管理的 YTsaurus 是一個支援 MapReduce 模型與 NoSQL 鍵值資料庫的分散式大數據平台。而 CobbleDB 核心使用的 RocksDB 則是分支自 Google LevelDB 的高效能嵌入式資料庫,採用日誌結構合併樹(LSM tree)資料結構,專為多核心處理器與固態硬碟(SSD)的最佳化 I/O 負載而設計。
來源
本期分類