PolarDB-X 是一款面向超高并發、海量存儲、復雜查詢場景設計的云原生分布式數據庫系統。其采用 Shared-nothing 與存儲計算分離架構,支持水平擴展、分布式事務、混合負載等能力,具備企業級、云原生、高可用、高度兼容 MySQL 系統及生態等特點。
PolarDB-X 最初為解決阿里巴巴天貓“雙十一”核心交易系統數據庫擴展性瓶頸而生,之后伴隨阿里云一路成長,是一款經過多種核心業務場景驗證的、成熟穩定的數據庫系統。 PolarDB-X 的核心特性如下:
水平擴展
PolarDB-X 采用 Shared-nothing 架構進行設計,支持多種 Hash 和 Range 數據拆分算法,通過隱式主鍵拆分和數據分片動態調度,實現系統的透明水平擴展。
分布式事務
PolarDB-X 采用 MVCC + TSO 方案及 2PC 協議實現分布式事務。事務滿足 ACID 特性,支持 RC/RR 隔離級別,并通過一階段提交、只讀事務、異步提交等優化實現事務的高性能。
混合負載
PolarDB-X 通過原生 MPP 能力實現對分析型查詢的支持,通過 CPU quota 約束、內存池化、存儲資源分離等實現了 OLTP 與 OLAP 流量的強隔離。
企業級
PolarDB-X 為企業場景設計了諸多內核能力,例如 SQL 限流、SQL Advisor、TDE、三權分立、Flashback Query 等。
云原生
PolarDB-X 在阿里云上有多年的云原生實踐,支持通過 K8S Operator 管理集群資源,支持公有云、混合云、專有云等多種形態進行部署,并支持國產化操作系統和芯片。
高可用
通過多數派 Paxos 協議實現數據強一致,支持兩地三中心、三地五副本等多種容災方式,同時通過 Table Group、Geo-locality 等提高系統可用性。
兼容 MySQL 系統及生態
PolarDB-X 的目標是完全兼容 MySQL ,目前兼容的內容包括 MySQL 協議、MySQL 大部分語法、Collation、事務隔離級別、Binlog 等。