面向算力網絡的數據庫,不僅是對現有云數據庫的一種超越,更是在架構、技術上的一次全面升級、深度演進與大膽創新。
一、云原生統一平臺底座
對數據庫進行統一抽象和封裝,打造通用管控能力,形成統一的算力網絡數據庫管控底座,支持各類云形態以及算力網絡基礎設施,包括多云和混合云場景,高效且低成本地管理數據庫集群。數據庫平臺底座是算力網絡數據庫基礎,以數據庫統一管控、算網大腦統一調度為目標,融入算力網絡整體架構中。
1. 容器技術 云原生數據庫的統一平臺底座基于容器化和Kubernetes(簡稱K8s)構建。容器化技術將應用程序及其依賴打包到一個獨立的容器中,包括應用程序代碼、運行時環境、系統工具和庫等。運行容器不需要啟動一套完整的操作系統,是更加輕量級的應用間隔離方案,啟動速度更快,額外資源占用更少。容器中包含了應用程序運行所需的所有依賴,因此可以確保應用程序在不同環境下的一致性和可移植性。Kubernetes(簡稱 K8s)是一個開源的容器編排平臺,用于自動化部署、擴展和管理容器化應用程序。經過多年的發展,和業界大規模的部署實踐,K8s 已經成為事實上的容器編排平臺標準,并支持多種容器運行時。K8s 集群由一個或多個主節點和工作節點組成。主節點負責管理集群的狀態,包括調度、API 服務等。工作節點運行容器化的應用程序,并與主節點通信。
2. 算網數據庫統一管控 部署模式遵循 Service on Service 理念,統一基于通用POD的裸金屬、云主機的 Serverless K8s 構建云數據庫產品,實現云數據庫的資源供給和疊加部署模式。部署形態上覆蓋公有云、全棧專屬云、邊緣云等各種算力網絡資源,功能上涵蓋各個數據庫系統的通用管控能力,包括生命周期管理、高可用、備份恢復、參數管理、監控告警、日志管理、賬號管理、庫表管理等。支持跨云調度和管理,可在多云或混合云環境中靈活部署,實現跨多個云平臺的統一管理和監控,簡化多云環境下的運維復雜度,避免對單一云服務提供商的依賴,提升系統靈活性和可靠性。 此處提出一種結合算力網絡的分布式數據庫集群管理模型,不同的分布式數據庫可以基于標準化的模型進行適配和實現,暴露一致的、能力對齊的管理和操作接口。通過標準體系的集成和適配,不同的分布式數據庫廠商和工具廠商可以形成一個互通的生態系統。這種生態 17 系統的建立有助于知識共享、技術創新和用戶體驗的提升,算力網絡的引入進一步增強了這個生態系統的智能化和高效性。
該模型分為四個層次:Cluster、Component、InstanceSet和Instance。每個層次都有明確的功能和職責邊界,形成了一種清晰的分層設計。這種設計在引入算力網絡的基礎上,進一步優化了分布式數據庫的管理和資源調度能力。 ? Cluster 層:代表整個數據庫集群,負責集群的整體管理與協調。通過算力網絡,Cluster 層可以實時感知各節點的算力狀態,動態調整計算任務的分配和資源調度。 ? Component 層:代表集群中的一個功能組件,如主數據庫、從數據庫、代理節點等,負責組件級別的管理。算力網絡使得Component層能夠依據算力狀態進行智能化的資源配置和負載均衡。? InstanceSet 層:代表某個組件的多個副本實例,支持副本角色管理、配置和資源差異化管理、健康檢測、升級控制等功能。算力網絡的引入使 InstanceSet 層能夠感知各副本的算力狀況,并根據實際需求動態調整角色和資源分配。 ? Instance 層:代表單個數據庫副本實例,與Kubernetes資源(如 Pod、PVC、Service、ConfigMap)進行映射,支持資源動態調整和多網絡地址配置。通過算力網絡,Instance 層能夠實時調整資源配置,確保每個實例在最佳算力狀態下運行。
二、跨域分布式編排
隨著業務的發展和集群規模的增長, 單一地域基礎設內的數據庫實例調度無法滿足海量數據處理、超大規模數據庫集群管理、業務及時響應和成本控制等多方面的需求。 算力網絡構建跨地域(Regionless)一體化編排能力,全面接入數據庫內核引擎,綜合各節點的計算能力、負載情況、網絡帶寬等多要素進行數據庫實例分布式云資源管理與調度,支持多種抽象算力接入,如邊緣算力、異構算力、多云算力;實現低成本的跨地域容災,支持地理位置無感的算力與網絡調度,同時提升資源利用率和服務性能。
跨域分布式編排調度需要處理的關鍵挑戰包括網絡延遲、分區容錯、任務依賴和優先級管理、資源分配和負載均衡以及故障檢測和恢復,包括以下核心能力: 1. 資源管理器(Resource Manager):資源管理器負責監控和管理集群中的資源,包括計算資源、存儲資源和網絡資源等。它需要與調度器緊密協作,確保任務能夠獲得所需的資源。算力網絡提供的地域無感知能力,可以讓資源管理器低延時感知全網資源使用和資源的變更。在大規模集群的情況下,集群資源的狀態信息和更新需要一個分布式的去中心化的方案配樂觀并發鎖來協調沖突,提高并發度。2. 調度器(Scheduler):調度器是分布式調度系統的核心,負責接收任務請求并根據預設的調度策略或者智能決策算法,將數據庫實例分配到合適的節點。它需要考慮任務的優先級、依賴關系、執行節點的負載情況,資源可用性,負載之間的干擾,以及對業務的響 19 應延遲等因素。
3. 執行器(Executor):執行器是任務的實際運行環境,它接收來自調度器的任務指令并執行具體的任務邏輯。執行器需要能夠處理任務執行過程中的各種異常,并能夠將任務狀態和結果反饋給調度器。 4. 任務隊列(Task Queue):任務隊列用于存儲待執行的任務,調度器從任務隊列中取出任務進行調度。任務隊列需要能夠處理高并發的任務請求,并保證任務的順序和一致性。5. 容錯和故障恢復機制:在分布式環境中,節點故障是常態,因此調度系統需要具備容錯能力,能夠在節點故障時自動將任務重新分配給其他節點執行,保證任務的可靠性和高可用性。6. 智能決策算法:利用機器學習、深度學習等算法,系統能夠對收集到的數據,例如節點的資源利用率,調度的約束(例如親和性反親和性、對其他負載的依賴),歷史負載信息都能進行智能分析,生成最優的調度方案。
7. 持續優化算法:系統根據智能決策算法生成的方案,自動將任務分配給最合適的資源,并持續優化以提高效率。隨著資源的變更和業務的調整,需要根據優化目標,對現有調度結果進行優化。8. 自動擴展: 根據調度算法的結果,按需對基礎設施發起水平方向和垂直方向兩個維度的自動擴展。橫向擴展主要是自動添加節點,垂直擴展是指擴展節點資源。 9. 確保通信安全: 編排調度系統涉及多云混合云的信息交互, 20 需要確保服務之間的通信安全。算力感知網絡可以通過跨基礎設施的資源情況,同時也提供了跨基礎設施的網絡層信息安全。基于算力感知網絡的分布式編排調度系統,使其能在大規模、高并發的分布式環境中高效、穩定地運行,能在復雜的多云混合云環境中提供高效、可靠的服務管理。
三、數據庫內核云原生化
在算力網絡數據庫的架構中,數據庫內核云原生化是一個關鍵特征,它通過存算分離,實現“四元解耦”和資源池化,極大地提升了數據庫的可擴展性、高可用性和靈活性。這一創新設計將傳統數據庫架構中的核心元素——計算、內存、日志、存儲(外存)——進行了深度解耦,使得各個組件能夠獨立擴展和管理,從而更好地適應云環境的動態變化。 1. 計算層 計算層負責處理用戶請求(即執行 SQL、事務處理等)核心計算任務。計算層與下層資源解耦,可根據業務需求動態調整計算資源,支持秒級擴展與回收。 2. 內存層 內存層負責存儲數據庫操作中的臨時數據和緩存數據,提升數據處理速度。內存層實現內存池化,通過分布式內存服務(DMS)支持主備節點間的實時內存頁面交換,確保數據一致性和高可用性。
3. 日志層 日志層負責記錄數據庫操作的日志信息,用于恢復、復制等目的。日志層獨立于計算和存儲層,確保日志數據的可靠性和完整性,支持高效的事務處理和恢復機制。 4. 存儲層 存儲層也即外存層,持久化存儲數據庫數據,包括用戶數據、系統數據等。可通過分布式存儲服務(DSS)實現存儲池化,支持主備節點共享同一份存儲資源,減少存儲容量需求,同時提高數據讀取效率和一致性。 存算分離架構可以實現更高的資源利用率和靈活性,但用戶原有存算一體架構在遷移時需要進行數據庫改造。為了減少用戶在云原生化過程中的數據遷移和改造工作,設計一種在存算分離基礎上的融合架構,自適應用戶負載,進一步實現數據共享與非共享訪問模式的無感切換,無縫兼容存算一體架構,實現一套代碼同時支持中小微客戶需求。

四、智能融合數據處理
實現一種多數據處理引擎融合方案,一套架構應對大中小微不同數據負載需求的用戶場景,是算力網絡數據庫“無需關注業務負載”理念的核心和基礎。從集中式分布式融合、事務型分析型融合,以及AI 的能力融合,逐步打造超融合數據庫形態,并通過統一的接口實現數據的整合、查詢、分析和優化。 集中式與分布式融合,兼顧了高性能和高可用性、可擴展性能更好地適應不同工作負載場景的需求。采用shared-storage/sharedeverything 架構與 shared-nothing 相結合,支持跨分區的數據分片的分布式處理能力,引入彈性并行計算技術,滿足復雜查詢的線性擴展性要求,實現資源的最優利用和系統的穩定運行,提升整體能效。事務處理和計算分析融合,一套引擎同時支持OLTP 和OLAP負載,省去離線數倉從業務系統采集數據的時間,實現近T+0 的數據分析能力,無需單獨建設實時數倉,降低系統復雜性和維護成本。T+0的分布式 HTAP 技術提供一站式事務處理和數據分析能力,進一步實現用戶層面實現統一入口,HTAP 數據庫融合。
隨著近年 AI 技術迅猛發展,對數據庫架構的靈活性和可操作性能提出了更高的要求。一方面需要支持數據來源多樣、數據量大、格式不一的結構化、非結構化及半結構化數據的多模態數據。另一方面,不同業務需求催生不同的數據模型數據庫。存儲引擎需要支持關系、鍵值、文檔、向量、時序、圖模型等統一存儲,僅存一份數據,結合不同索引類型實現不同模型數據混合存儲的目標,有效避免存儲冗余、兼容性、數據一致性、數據同步延遲問題等,同時降低用戶的學習、 23 開發、移植、運維成本。計算引擎中采用混合查詢優化技術,在單一命令訪問多模數據庫,生成最優執行計劃,提高訪問性能;采用多級自適應并行計算技術,充分利用系統資源提升性能,避免單一復雜任務占據全部資源影響其他任務的執行;采用多級數據緩存技術,降低數據庫服務器負載,提升業務綜合性能。針對計算密集型業務,可采用 GPU 融合計算技術,提升包括圖計算、向量計算和分析型業務的性能。基于分布式原生多模存儲-計算引擎的算力網絡數據庫為包括AI應用在內的各種主流業務系統提供多引擎融合數據處理。