京東數(shù)科高級DBA潘娟:Apache ShardingSphere的架構(gòu)、特性
三、功能介紹
仔細觀察ShardingSphere的框架,我們不難發(fā)現(xiàn)中間件左側(cè)的Sharding-Scaling,它是一個提供給用戶的通用的ShardingSphere數(shù)據(jù)接入遷移,及彈性伸縮的調(diào)度平臺。
JDBC的核心功能就是Orchestration,即編排治理,配置集中化與動態(tài)化、數(shù)據(jù)治理。ShardingSphere提供了界面治理模塊——Sharding-UI,可以快速維護Sharding-Proxy集群,方便用戶一鍵式的操作。
如上圖所示,從研發(fā)的角度來看Apache ShardingSphere的框架,最上面的接入端有JDBC和Proxy,中間層的核心功能是數(shù)據(jù)分片、分布式事務(wù)、數(shù)據(jù)庫治理,最下層是數(shù)據(jù)庫集群。
其實,Sharding是Apache ShardingSphere的立足之本。除了分庫分表,它還還支持Encrypt(脫敏)和Shadow(影子庫),所有壓測的數(shù)據(jù)都會分配的影子庫中。Sharding最核心的還是底層四個模塊來做支撐。
我們必須要解析SQL,才能理解用戶需要什么。Parser(解析器)已經(jīng)重構(gòu)過很多遍,為了實現(xiàn)自主可控,保證高效性和正確性。除此之外,Router代表著路由,Rewriter改寫一些SQL,Executor做并行的控制,提高整體效率。
分布式事務(wù)主要有兩個方面,ACID強一致性事務(wù)和BASE柔性事務(wù)。值得一提的是,ShardingSphere分為自研的分布式數(shù)據(jù)庫(DTX)、對接其他公司的解決方案兩部分。對于用戶來說,他無需過多了解ShardingSphere,就可以擁有多種分布式事務(wù)的選型,這其實是一種非常有意思的方式。
ShardingSphere不只是一個分布式數(shù)據(jù)庫的原因在于,它的Orchestration模塊提供了很多功能,比如在線變更、分片規(guī)則的在線推送,以及限流和熔斷等。用戶在了解分片的基礎(chǔ)上,可以慢慢去探索這個開放生態(tài),找到自己想要的功能。

請輸入評論內(nèi)容...
請輸入評論/評論長度6~500個字
最新活動更多
-
7月8日立即報名>> 【在線會議】英飛凌新一代智能照明方案賦能綠色建筑與工業(yè)互聯(lián)
-
7月22-29日立即報名>> 【線下論壇】第三屆安富利汽車生態(tài)圈峰會
-
7.30-8.1火熱報名中>> 全數(shù)會2025(第六屆)機器人及智能工廠展
-
7月31日免費預(yù)約>> OFweek 2025具身智能機器人產(chǎn)業(yè)技術(shù)創(chuàng)新應(yīng)用論壇
-
免費參會立即報名>> 7月30日- 8月1日 2025全數(shù)會工業(yè)芯片與傳感儀表展
-
即日-2025.8.1立即下載>> 《2024智能制造產(chǎn)業(yè)高端化、智能化、綠色化發(fā)展藍皮書》
推薦專題