PolarDB MySQL版是阿里巴巴自研的雲原生HTAP資料庫。PolarDB MySQL版100%相容原生MySQL的多個版本,包括MySQL 5.6、MySQL 5.7和MySQL 8.0。PolarDB MySQL版的企業版雲端式原生架構、計算儲存分離、軟硬體一體化設計,為使用者提供具備超高彈性和效能、高可用和高可靠保障、高性價比的資料庫服務。
產品架構
雲原生資料庫PolarDB基於Cloud Native設計理念,既融合了商務資料庫穩定可靠、高效能、可擴充的特徵,又具有開源雲資料庫簡單開放、快速迭代的優勢。產品架構如下:
圖 1. 產品架構圖
PolarDB MySQL版的產品架構具有如下特點:
一寫多讀
PolarDB採用分布式叢集架構,一個叢集版叢集包含一個主節點和最多15個唯讀節點(至少一個,用於保障高可用)。主節點處理讀寫請求,唯讀節點僅處理讀請求。主節點和唯讀節點之間採用Active-Active的Failover方式,提供資料庫的高可用服務。
計算與儲存分離
PolarDB採用計算與儲存分離的設計理念,滿足公用雲端運算環境下根據業務發展彈性擴充叢集的剛性需求。資料庫的計算節點(Database Engine Server)僅儲存中繼資料,而將資料檔案、Redo Log等儲存於遠端的儲存節點(Database Storage Server)。各計算節點之間僅需同步Redo Log相關的中繼資料資訊,極大地降低了主節點和唯讀節點間的複寫延遲,而且在主節點故障時,唯讀節點可以快速切換為主節點。
讀寫分離
讀寫分離是PolarDB叢集版預設免費提供的一個透明、高可用、自適應的負載平衡能力。通過叢集地址,SQL請求自動轉寄到PolarDB叢集版的各個節點,提供彙總、高吞吐的並發SQL處理能力。請參見什麼是讀寫分離。
高速鏈路互聯
資料庫的計算節點和儲存節點之間採用高速網路互聯,並通過RDMA協議進行資料轉送,使I/O效能不再成為瓶頸。
共用分布式儲存
多個計算節點共用一份資料,而不是每個計算節點都儲存一份資料,極大地降低了使用者的儲存成本。基於全新打造的分布式Block Storage(Distributed Storage)和檔案系統(Distributed Filesystem),儲存容量可以線上平滑擴充,不會受到單個資料庫伺服器的儲存容量限制,可應對上百TB層級的資料規模。
資料多副本、Parallel-Raft協議
資料庫儲存節點的資料採用多副本形式,確保資料的可靠性,並通過Parallel-Raft協議保證資料的一致性。
核心功能
超級MySQL
100%相容原生MySQL和阿里雲RDS MySQL,您可以在不修改應用程式任何代碼和配置的情況下,將MySQL資料庫遷移至PolarDB MySQL版。
持續提供高價值特性:一寫多讀或多寫多讀、共用儲存、60億行資料穩定運行、秒級DDL、主從切換無閃斷、閃回查詢等。
原生HTAP
一套系統同時支援交易和分析,降低開發和營運成本。
無需ETL,資料分析更即時更穩定。
多主多寫(多主叢集)
所有節點同時支援讀寫服務,寫負載可線性擴充。
節點之間切換5~10s,在途事務不中斷。
全球多活容災
跨地區容災,地區級故障可繼續提供服務。
高資源使用率,容災叢集可提供讀寫服務。
全球本地化訪問,提升業務效能。
為什麼選擇PolarDB MySQL企業版
您可以像使用MySQL一樣使用PolarDB MySQL版。此外,PolarDB MySQL版還有傳統資料庫不具備的優勢:
高性價比
硬體壓縮盤(Smart-SSD)在不降速的情況下實現高壓縮比,儲存成本降低40%。
多個計算節點共用儲存,新增唯讀節點時只需支付計算節點費用,大大降低擴容成本。
儲存空間無需手動設定,根據資料量自動調整,只需為實際使用的容量付費。
超高彈性
分鐘級增刪節點,支援臨時升降配;儲存容量自動線上擴容,無需中斷業務。
Serverless秒級動態彈降,輕鬆應對不確定的業務波峰波穀情境。
超高效能
深度最佳化資料庫核心,同時採用物理複製、RDMA高速網路和分布式共用儲存,大幅提高效能,相比開源MySQL效能最大提升6倍。
高可用和高可靠保障,資料安全可靠
共用分布式儲存的設計,徹底解決了主從非同步複製所帶來的備庫資料非強一致的缺陷,使得整個資料庫叢集在應對任何單點故障時,可以保證資料零丟失。
資料多副本跨可用性區域部署,主節點故障後RTO<10s。
GDN叢集間資料延遲小於2秒,分鐘級切換,支援異地多活容災。全方位、多維度確保系統高可用。
採用白名單、VPC網路、資料多副本儲存等全方位的手段,對資料庫資料訪問、儲存、管理等各個環節提供安全保障。
無鎖備份
利用底層分布式儲存的快照技術,只需分鐘層級即可完成對上TB資料量大小的資料庫的備份,且整個備份過程不需要加鎖,效率更高,影響更小。
PolarDB MySQL版目前支援叢集版和多主叢集(庫表)2種不同的產品系列。具體請參見企業版產品系列。
如何使用PolarDB MySQL版
您可以通過以下方式管理PolarDB MySQL版叢集,包括建立叢集、建立資料庫、建立帳號等。
建立PolarDB MySQL版叢集後,您可以通過以下方式串連PolarDB MySQL版叢集:
DMS:您可以通過DMS串連PolarDB叢集,在Web介面進行資料庫開發工作。
用戶端:您可以使用通用的資料庫用戶端工具串連PolarDB MySQL版叢集。例如MySQL-Front、HeidiSQL等。