京東數(shù)科高級DBA潘娟:Apache ShardingSphere的架構(gòu)、特性
三、功能介紹
仔細(xì)觀察ShardingSphere的框架,我們不難發(fā)現(xiàn)中間件左側(cè)的Sharding-Scaling,它是一個提供給用戶的通用的ShardingSphere數(shù)據(jù)接入遷移,及彈性伸縮的調(diào)度平臺。
JDBC的核心功能就是Orchestration,即編排治理,配置集中化與動態(tài)化、數(shù)據(jù)治理。ShardingSphere提供了界面治理模塊——Sharding-UI,可以快速維護(hù)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強(qiáng)一致性事務(wù)和BASE柔性事務(wù)。值得一提的是,ShardingSphere分為自研的分布式數(shù)據(jù)庫(DTX)、對接其他公司的解決方案兩部分。對于用戶來說,他無需過多了解ShardingSphere,就可以擁有多種分布式事務(wù)的選型,這其實是一種非常有意思的方式。
ShardingSphere不只是一個分布式數(shù)據(jù)庫的原因在于,它的Orchestration模塊提供了很多功能,比如在線變更、分片規(guī)則的在線推送,以及限流和熔斷等。用戶在了解分片的基礎(chǔ)上,可以慢慢去探索這個開放生態(tài),找到自己想要的功能。

最新活動更多
推薦專題
- 1 UALink規(guī)范發(fā)布:挑戰(zhàn)英偉達(dá)AI統(tǒng)治的開始
- 2 北電數(shù)智主辦酒仙橋論壇,探索AI產(chǎn)業(yè)發(fā)展新路徑
- 3 降薪、加班、裁員三重暴擊,“AI四小龍”已折戟兩家
- 4 “AI寒武紀(jì)”爆發(fā)至今,五類新物種登上歷史舞臺
- 5 國產(chǎn)智駕迎戰(zhàn)特斯拉FSD,AI含量差幾何?
- 6 光計算迎來商業(yè)化突破,但落地仍需時間
- 7 東陽光:2024年扭虧、一季度凈利大增,液冷疊加具身智能打開成長空間
- 8 地平線自動駕駛方案解讀
- 9 封殺AI“照騙”,“淘寶們”終于不忍了?
- 10 優(yōu)必選:營收大增主靠小件,虧損繼續(xù)又逢關(guān)稅,能否乘機(jī)器人東風(fēng)翻身?