什麼是無服務器 PostgreSQL?
無服務器 PostgreSQL 是一種完全託管的雲數據庫模型,將計算和存儲分離,實現獨立自動伸縮。它適用於突發性或不可預測的工作負載,但不太適合始終在線、對延遲敏感的應用程序。文章還介紹了基於無服務器 Postgres 的 Lakebase 架構,該架構統一了事務和分析工作負載,減少數據重複,簡化了對 AI 和實時應用程序的訪問。
無服務器 PostgreSQL(Postgres)是一種完全託管的雲數據庫模型,它將計算和存儲分離,允許兩者根據需求獨立自動伸縮。與傳統數據庫需要手動規劃容量、持續運行固定計算資源不同,無服務器模型自動按需提供計算資源,並在空閒時縮減至零,從而消除了過度配置和閒置成本。
“無服務器”這個術語可能會產生誤導,因為應用程序並非在沒有服務器的情況下運行。底層基礎設施依然存在,但完全由雲提供商抽象和管理,用户無需直接配置或維護服務器設置、擴展和維護等任務。
傳統與無服務器 PostgreSQL 的對比
傳統 Postgres 部署需要手動設置基礎設施、預先規劃容量,並持續運行固定計算資源,無論工作負載如何。擴展需要手動干預或預設閾值,且即使數據庫空閒也會產生持續費用。
無服務器 Postgres 則採用不同的模式:計算資源根據工作負載按需提供,自動伸縮,並在不使用時縮減至零。計費基於實際消耗,而非預留容量。
Lakebase 架構:下一步演進
Lakebase 架構構建在無服務器 Postgres 之上,同時解決其侷限性。它將事務數據庫與湖倉一體化基礎相結合,創建一個單一平台,使操作和分析工作負載能夠共同運行。這意味着不再需要為不同任務設置獨立系統,從而減少數據重複,簡化數據訪問。
Lakebase 架構的關鍵組件包括:解耦的計算和存儲、臨時計算(按需啓停)、基於日誌的存儲系統以及對象存儲基礎。它還包含一個控制平面,用於管理伸縮、路由和生命週期事件。
主要無服務器 PostgreSQL 提供商
- Databricks Lakebase:基於 Lakebase 架構的操作數據庫,專為 AI 代理和實時應用設計,統一事務和分析工作負載。
- Amazon Aurora Serverless v2:AWS 提供的 Postgres 兼容託管服務,支持細粒度自動伸縮,適合企業工作負載。
- Neon:完全解耦計算和存儲的 Lakebase 架構,支持縮減至零和數據庫分支功能。
定價與性能權衡
無服務器 Postgres 通常按計算、存儲和數據傳輸三個方面計費。對於可變或不可預測的流量,這種定價模式效率很高,但對於高流量或始終在線的工作負載,總成本可能超過預配實例。
冷啓動延遲是主要性能問題之一:當無查詢時,系統會掛起計算資源,新查詢需要重新激活,延遲從毫秒到幾秒不等。因此,無服務器 Postgres 最適合突發性或不可預測的工作負載,而不適合始終在線、對延遲敏感的應用程序。
總之,無服務器 PostgreSQL 通過自動伸縮和按使用付費簡化了數據庫管理,但需要權衡冷啓動延遲和成本。而 Lakebase 架構則進一步推動了統一數據平台的發展。