重磅|Apache ShardingSphere 5.0.0 即將正式釋出

SphereEx發表於2021-11-10
Apache ShardingSphere 5.0.0 GA 版在經歷 5.0.0-alpha 及 5.0.0-beta 接近兩年時間的研發和打磨,終於將在 11 月份與大家正式見面!
11 月 10 日是 Apache ShardingSphere 進入 Apache 基金會的三週年紀念日。在這特殊的一天,ShardingSphere 的核心 Team 也響應社群的呼喚,將 5.0.0 GA 版作為三週年紀念日的禮物呈現給社群及整個分散式資料庫和安全生態領域。
 
自 5.0.0 系列研發伊始,ShardingSphere 就逐漸脫離簡單的分散式資料庫中介軟體解決方案的行業定位。取而代之的是,Database Plus 理念將成為 5.0.0 及今後版本的新定位及新航標。通過重新塑造分散式可插拔體系,連通使用者實際落地場景,為社群及整個資料庫行業帶來新風向及更有價值的解決方案。5.0.0 GA 版將成為這一理念的首個實踐版本,整合整個 Global 級別 ShardingSphere 社群的貢獻力量,更大價值地回報給整個 Apache 全球社群及行業領域。
 
Database Plus 是指在碎片化的資料庫基礎服務之上構建標準層和生態層,從而對上層應用提供統一標準化的資料庫使用規範,儘可能遮蔽底層資料庫差異化帶來的業務干擾。在連線上層應用與底層資料庫的鏈路上,通過流量及資料劫持與解析,為使用者提供分散式、資料庫脫敏安全、資料庫閘道器、資料路由壓測等核心能力的增強。在這一理念的支撐下,5.0.0 GA 版將帶來以下內容的升級和優化。
重磅|Apache ShardingSphere 5.0.0 即將正式釋出
潘娟|Trista
SphereEx 聯合創始人兼 CTO, Apache member, Apache ShardingSphere PMC, Apache brpc(Incubating) & Apache AGE(Incubating) mentor, 中國木蘭開源社群導師。 曾負責京東數科資料庫智慧平臺的設計與研發,現專注於分散式資料庫 & 中介軟體生態及開源領域。被評為《2020 中國開源先鋒人物》,OSCAR 2021 尖峰開源人物。
 
 
* 相關連結
Bio: https://tristazero.github.io
LinkedIn: https://www.linkedin.com/in/panjuan
GitHub: https://github.com/tristaZero
Twitter: https://twitter.com/tristaZero

1 架構層面

Database Plus 可插拔核心架構基本完成
  • 基礎層:提供多種接入端及接入形態,靈活滿足使用者不同場景的需求;
  • 插拔層:作為可插拔核心架構,提供面向基礎架構的支撐能力;
  • 功能層:提供多種貼合使用者需求的功能外掛,方便使用者選擇和自由組合;
  • 產品層:面向終端使用者,提供面向行業和特定場景的標品方案。
重磅|Apache ShardingSphere 5.0.0 即將正式釋出
多接入端混合模式生產可用
 
ShardingSphere JDBC 及 ShardingSphere Proxy 在經過一年的打磨和測試驗證後,通過大型社群使用者提供相關生產案例,已驗證生產可行性。此外,SphereEx 將基於 ShardingSphere 生態,計劃在 2022 年初推出面向 CloudNative 的 ShardingSphere Sidecar 接入端 POC 開源版。這三種模式在真實生產環境中既可實現單獨部署,也可以使用多接入端混合部署的形式,均面向核心架構共享,進而能夠接入形態多樣的 ShardingSphere 生態,形式如下圖所示。
重磅|Apache ShardingSphere 5.0.0 即將正式釋出
分散式 SQL 打造標準化叢集管理
 
Apache ShardingSphere 首創提出 DistSQL(分散式 SQL)的獨特 SQL 方言,用於與 ShardingSphere 整個生態打通,成為與 ShardingSphere 分散式資料庫生態的標準化互動語言,用於一條 SQL 建立、修改、刪除分散式資料庫表、脫敏/加密資料庫表及提供分散式排程管理能力。
CREATE SHARDING TABLE RULE t_order (
RESOURCES(resource_0,resource_1),
SHARDING_COLUMN=order_id,
TYPE(NAME=hash_mod,PROPERTIES("sharding-count"=4)),
GENERATED_KEY(COLUMN=another_id,TYPE(NAME=snowflake,PROPERTIES("worker-id"=123)))
),t_order_item (
DATANODES("resource_${0..1}.t_order${0..1}"),
DATABASE_STRATEGY(TYPE=standard,SHARDING_COLUMN=user_id,SHARDING_ALGORITHM=database_inline),
TABLE_STRATEGY(TYPE=standard,SHARDING_COLUMN=order_id,SHARDING_ALGORITHM=database_inline),
GENERATED_KEY(COLUMN=another_id,TYPE(NAME=snowflake,PROPERTIES("worker-id"=123)))
);

ALTER SHARDING TABLE RULE t_order (
RESOURCES(resource_0,resource_1),
SHARDING_COLUMN=order_id,
TYPE(NAME=hash_mod,PROPERTIES("sharding-count"=10)),
GENERATED_KEY(COLUMN=another_id,TYPE(NAME=snowflake,PROPERTIES("worker-id"=123)))
),t_order_item (
DATANODES("resource_0.t_order${0..1}"),
DATABASE_STRATEGY(TYPE=standard,SHARDING_COLUMN=user_id,SHARDING_ALGORITHM=database_inline),
TABLE_STRATEGY(TYPE=standard,SHARDING_COLUMN=order_id,SHARDING_ALGORITHM=database_inline),
GENERATED_KEY(COLUMN=another_id,TYPE(NAME=uuid,PROPERTIES("worker-id"=123)))
);

DROP SHARDING TABLE RULE t_order, t_order_item;
分散式治理能力大幅度提升
 
在存算分離的 ShardingSphere 生態裡,資料庫(儲存節點)與 Proxy 及 JDBC(計算節點)的分散式治理、線上使用者後設資料 DDL 變更、儲存節點及計算節點的執行時上下線、熔斷與禁用、高可用能力都在這個版本基本完善,此外分散式鎖功能也在規劃當中。
重磅|Apache ShardingSphere 5.0.0 即將正式釋出
APM 及監控展示能力全面升級
 
優化並增加更多 ShardingSphere 執行時狀態指標,通過 agent 動態載入機制,為使用者提供各種 Metrics 及 Tracing 的監控指標,方便對接 APM 系統及 Grafana dashboard。

2 功能層面

重磅|Apache ShardingSphere 5.0.0 即將正式釋出
ShardingSphere 社群將繼續打磨產品,並不斷融入行業新想法和新場景,持續發聲和反饋。同時,社群的核心 Team 也非常願意為想要參與開源的同學帶來相關指導和提供更多的實戰 Issue,方便新同學、老朋友能在 ShardingSphere 社群找到發光點、學習新知、結交來自全球各地的開發者。希望能與大家在 ShardingSphere 社群相遇!
 
作為本次的 Release Manager,Apache ShardingSphere 社群 PMC 孟浩然將為大家帶來關於此次新特性的全面解讀,掃描下方二維碼即可觀看。
重磅|Apache ShardingSphere 5.0.0 即將正式釋出

3 歡迎參與 Apache ShardingSphere Dev Meetup

11 月 13 日,由 Apache ShardingSphere 社群主辦的【Apache ShardingSphere Dev Meetup】將於北京市海淀區中關村大街 32 號智慧製造創新中心 1 樓多功能廳舉辦。本次活動以【開放原生,包容生態 | Apache ShardingSphere 新形態探索之旅】為主題,聚焦最近更新的 Apache ShardingSphere 5.0.0 正式版本的新特性,國內三大頂級開源社群共同攜手,從社群建設、技術合作、生態共建等多個角度,探索開源社群治理的新方式。
 
歡迎大家點選【這裡】報名參加。
 
接下來我們也將持續為大家帶來 Apache ShardingSphere 5.0.0 的正式釋出報導、功能特性解讀等技術文章,歡迎鎖定我們的系列更新!
 
?ShardingSphere GitHub 地址:
 
https://github.com/apache/shardingsphere
 
* 在使用 ShardingSphere 的過程中,如果您發現任何問題,有新的想法、建議,歡迎點選“連結“通過 Apache 郵件列表參與到 ShardingSphere 的社群建設中。
 

相關文章