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 版将带来以下内容的升级和优化。
潘娟|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 可插拔核心架构基本完成
  • 基础层:提供多种接入端及接入形态,灵活满足用户不同场景的需求;
  • 插拔层:作为可插拔核心架构,提供面向基础架构的支撑能力;
  • 功能层:提供多种贴合用户需求的功能插件,方便用户选择和自由组合;
  • 产品层:面向最终用户,提供面向行业和特定场景的标品方案。
多接入端混合模式生产可用
 
ShardingSphere JDBC 及 ShardingSphere Proxy 在经过一年的打磨和测试验证后,通过大型社区用户提供相关生产案例,已验证生产可行性。此外,SphereEx 将基于 ShardingSphere 生态,计划在 2022 年初推出面向 CloudNative 的 ShardingSphere Sidecar 接入端 POC 开源版。这三种模式在真实生产环境中既可实现单独部署,也可以使用多接入端混合部署的形式,均面向核心架构共享,进而能够接入形态多样的 ShardingSphere 生态,形式如下图所示。
分布式 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 变更、存储节点及计算节点的运行时上下线、熔断与禁用、高可用能力都在这个版本基本完善,此外分布式锁功能也在规划当中。
APM 及监控展示能力全面升级
 
优化并增加更多 ShardingSphere 运行时状态指标,通过 agent 动态加载机制,为用户提供各种 Metrics 及 Tracing 的监控指标,方便对接 APM 系统及 Grafana dashboard。

2 功能层面

ShardingSphere 社区将继续打磨产品,并不断融入行业新想法和新场景,持续发声和反馈。同时,社区的核心 Team 也非常愿意为想要参与开源的同学带来相关指导和提供更多的实战 Issue,方便新同学、老朋友能在 ShardingSphere 社区找到发光点、学习新知、结交来自全球各地的开发者。希望能与大家在 ShardingSphere 社区相遇!
 
作为本次的 Release Manager,Apache ShardingSphere 社区 PMC 孟浩然将为大家带来关于此次新特性的全面解读,扫描下方二维码即可观看。

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 的社区建设中。
 

重磅|Apache ShardingSphere 5.0.0 即将正式发布的更多相关文章

  1. .NET Core 1.0.0 RC2

    .NET Core 1.0.0 RC2 在.NET Core 1.0.0 RC2即将正式发布之际,我也应应景,针对RC2 Preview版本编写一个史上最简单的MVC应用.由于VS 2015目前尚不支 ...

  2. Apache ShardingSphere 5.0.0 内核优化及升级指南

    经过近两年时间的优化和打磨,Apache ShardingSphere 5.0.0 GA 版终于在本月正式发布,相比于 4.1.1 GA 版,5.0.0 GA 版在内核层面进行了大量的优化.首先,基于 ...

  3. Apache Spark 2.2.0 正式发布

    本章内容: 待整理 参考文献: Apache Spark 2.2.0正式发布 Spark Release 2.2.0

  4. Apache Kafka 1.0.0正式发布!

    千呼万唤始出来,经过7年的发展与完善,Apache Kafka 1.0.0正式发布!在笔者看来,比起1.0.0引入的新功能,此版本最大的意义在于标识Kafka各种组件功能的稳定性.不过我们还是来看下1 ...

  5. Apache Pulsar 2.6.1 版本正式发布:2.6.0 功能增强版,新增 OAuth2 支持

    在 Apache Pulsar 2.6.0 版本发布后的 2 个月,2020 年 8 月 21 日,Apache Pulsar 2.6.1 版本正式发布! Apache Pulsar 2.6.1 修复 ...

  6. 官宣 | Apache Flink 1.12.0 正式发布,流批一体真正统一运行!

    官宣 | Apache Flink 1.12.0 正式发布,流批一体真正统一运行! 原创 Apache 博客 [Flink 中文社区](javascript:void(0) 翻译 | 付典 Revie ...

  7. Apache Flink 1.12.0 正式发布,DataSet API 将被弃用,真正的流批一体

    Apache Flink 1.12.0 正式发布 Apache Flink 社区很荣幸地宣布 Flink 1.12.0 版本正式发布!近 300 位贡献者参与了 Flink 1.12.0 的开发,提交 ...

  8. 重磅:Spring Boot 2.0 正式发布!

    Spring Boot 2.0 正式发布! 2018/03/01最新消息,传得沸沸扬扬的Spring Boot 2.0 正式发布了. 小编去看了下Spring Boot的官网,正式版本已经释放出来了! ...

  9. 官宣!ElasticJob 3.0.0 版本正式发布

    ElasticJob 是面向互联网生态和海量任务的分布式调度解决方案,由两个相互独立的子项目 ElasticJob-Lite 和 ElasticJob-Cloud 组成.它通过弹性调度.资源管控.以及 ...

随机推荐

  1. Python中Tk模块简单窗口设计

    Python中Tk和PyQt都可以设计小程序,区别在于:Tk界面美观度相对较差,但由于是Python的内置模块,最终生成的程序大小相比于PyQt较小. import tkinter # 导入TKint ...

  2. YbtOJ#631-次短路径【左偏树,最短路】

    正题 题目链接:https://www.ybtoj.com.cn/contest/114/problem/1 题目大意 给出\(n\)个点\(m\)条边的一张无向图,对于每个点\(i\)求不经过\(i ...

  3. 安装SpaCy出现报错:requests.exceptions.ConnectionError: HTTPSConnectionPool(host='raw.githubusercontent.com', port=443):

    内含安装步骤及报错解决:https://www.cnblogs.com/xiaolan-Lin/p/13286885.html

  4. CSharp委托与匿名函数

    CSharp委托与匿名函数 场景 面对事件处理,我们通常会通过定义某一个通用接口,在该接口中定义方法,然后在框架代码中,调用实现该接口的类实例的方法来实现函数的回调.可能这样来说有些抽象,那我们提供一 ...

  5. 一文学会Java事件机制

    本文同时发布于个人网站 https://ifuyao.com/blog/java-event/ 相信做 Java 开发的朋友,大多都是学习过或至少了解过 Java GUI 编程的,其中有大量的事件和控 ...

  6. VS2017离线安装QT插件出错:未能正确加载VSIX包

    问题现象: 问题已解决,忘记截图了 出现原因:可能是自己离线安装,安装版本与不符合当前VS吧.记得当时下载了一个最新的版本.重新卸载当前插件,再装一个合适版本即可 http://download.qt ...

  7. FastAPI 学习之路(六)查询参数,字符串的校验

    系列文章: FastAPI 学习之路(一)fastapi--高性能web开发框架 FastAPI 学习之路(二) FastAPI 学习之路(三) FastAPI 学习之路(四) FastAPI 学习之 ...

  8. CompleteFuture实现简单的任务编排实践

    CompleteFuture实现简单的任务编排实践 一:前言 ​ CompleteFuture是java8 新提供的API,是对函数式编程思想的体现,提供了很多的对于函数式编程支持.不止有同步处理功能 ...

  9. C 输入输出函数

    流 就C程序而言,所有的I/O操作只是简单地从程序移入或移出字节的事情.这种字节流便称为流( stream ). 绝大多数流是完全缓存的,这意味着"读取"和"写入&quo ...

  10. print spooler LPF 打印机漏洞

    打印机漏洞 该漏洞可以通过创建打印机驱动和端口,实现任意文件写入,用于提权或者写入后门. 打印机调用流程:client通过RPC调用server的spoolsv.exe,spoolsv.exe是sys ...