Avride 自駕車資料基礎設施:以 ClickHouse Cloud 取代 Apache Iceberg,索引延遲從 20 秒降至 100ms
ClickHouse Blog · 2026-05-11
自駕車公司 Avride 將其乘車資料的索引與分析基礎設施從 Apache Iceberg 遷移至 ClickHouse Cloud,在生產環境達到索引查詢延遲從 10–20 秒降至 100ms(暖連線)、攝取延遲從數小時降至秒級的量測結果,並將 ClickHouse 擴展為公司橫跨多個工程場景的統一分析底層。
原本的問題
Avride 的原始架構以 Parquet 檔案儲存乘車資料於物件儲存,以 Apache Iceberg 作為元數據與索引層。這套設計在並行攝取場景下暴露出兩個根本問題:循序寫入模型(serial write model)與樂觀並行控制(optimistic concurrency)在高並行攝取下無法有效擴展,導致索引更新延遲落在 10–20 秒範圍,ML 訓練資料回放與車隊健康監控的即時查詢需求都無法滿足。
採用的架構
新架構以 ClickHouse 作為索引與查詢引擎,S3 作為底層物件儲存,並在 ClickHouse 之上建立自訂索引層追蹤所有乘車資料位置。Avride 選擇託管的 ClickHouse Cloud 而非自行部署,即便內部有數十年 ClickHouse 實務經驗,主因是計算與儲存分離架構的彈性以及 Web UI 的跨團隊可訪問性。
ClickHouse 在 Avride 承擔的查詢場景包括:
- 依車輛與時間戳的乘車資料索引查詢
- ML 訓練資料集與模擬重放(simulation replay)
- 車隊實時健康監控
- 從車輛執行 trace 萃取 C++ 效能剖析資料
- 訂單生命周期重建(透過排程資料)
- 「Aviz」內部工具——用於重放特定乘車片段的時間旅行除錯
實際效果
| 指標 | 遷移前(Iceberg) | 遷移後(ClickHouse) |
|---|---|---|
| 索引查詢延遲 | 10–20 秒 | <100ms(暖連線) |
| 攝取延遲 | 數小時至數天 | 秒級 |
從工程組織角度,將索引、分析與內部工具統一至同一資料庫消除了原本需要維護多套系統的協調成本,也讓非資料工程師的車輛軟體團隊可以直接用 SQL 介面訪問同一份資料。
原始來源:ClickHouse Blog — Powering self-driving vehicle analytics at Avride with ClickHouse Cloud