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

發(fā)表評論
請輸入評論內(nèi)容...
請輸入評論/評論長度6~500個(gè)字
最新活動(dòng)更多
-
10月23日火熱報(bào)名中>> 2025是德科技創(chuàng)新技術(shù)峰會(huì)
-
10月23日立即報(bào)名>> Works With 開發(fā)者大會(huì)深圳站
-
10月24日立即參評>> 【評選】維科杯·OFweek 2025(第十屆)物聯(lián)網(wǎng)行業(yè)年度評選
-
11月27日立即報(bào)名>> 【工程師系列】汽車電子技術(shù)在線大會(huì)
-
12月18日立即報(bào)名>> 【線下會(huì)議】OFweek 2025(第十屆)物聯(lián)網(wǎng)產(chǎn)業(yè)大會(huì)
-
精彩回顧立即查看>> 【限時(shí)福利】TE 2025國際物聯(lián)網(wǎng)展·深圳站
推薦專題