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. 完美解决JavaIO流报错 java.io.FileNotFoundException: F:\ (系统找不到指定的路径。)

    完美解决JavaIO流报错 java.io.FileNotFoundException: F:\ (系统找不到指定的路径.) 错误原因 读出文件的路径需要有被拷贝的文件名,否则无法解析地址 源代码(用 ...

  2. 项目部署(ubuntu+uwsgi+nginx+supervisor+django)

    一.在开发机上的准备工作 1. 确认项目没有bug. 2.设置`ALLOW_HOST`为你的域名,以及ip地址. 4.设置`DEBUG=False`,避免如果你的网站产生错误,而将错误信息暴漏给用户. ...

  3. P5074-Eat the Trees【插头dp】

    正题 题目链接:https://www.luogu.com.cn/problem/P5074 题目大意 给出一个\(n\times m\)的网格,有的必须铺线有的不能,铺成若干条闭合回路,求方案数. ...

  4. Django整理(一) - 项目和应用创建及运行

    一.项目组织结构     · 一个Project包含有多个App     · 一个App就是一个Python包,就代表一个功能模块,比如: 用户模块,商品模块等 .各个功能模块间可以保持相对的独立 . ...

  5. 【原创】xenomai 在X86平台下中断响应时间测试

    1.中断响应时间 实时操作系统的意义就在于能够在确定的时间内处理各种突发的事件,而中断这些事件.系统抢占调度的触发点,因而衡量嵌入式实时操作系统的最主要.最具有代表性的性能指标参数无疑是中断响应时间. ...

  6. 深入理解Java虚拟机之JVM内存布局篇

    内存布局**** ​ JVM内存布局规定了Java在运行过程中内存申请.分配.管理的策略,保证了JVM的稳定高效运行.不同的JVM对于内存的划分方式和管理机制存在部分差异.结合JVM虚拟机规范,一起来 ...

  7. 独家对话阿里云函数计算负责人不瞋:你所不知道的 Serverless

    作者 | 杨丽 出品 | 雷锋网产业组 "Serverless 其实离我们并没有那么遥远". 如果你是一名互联网研发人员,那么极有可能了解并应用过 Serverless 这套技术体 ...

  8. k8s 关于Job与Cronjob

    在Kubernetes 中通过创建工作负载资源 Job 可完成大型计算以及一些批处理任务.比如 Job 转码文件.获取部分文件和目录,机器学习中的训练任务等.这篇小作文我们一起来了解 k8s 中关于 ...

  9. 81. 搜索旋转排序数组 II

    题目 已知存在一个按非降序排列的整数数组 nums ,数组中的值不必互不相同. 在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.length)上进行了 旋 ...

  10. Codeforces1575D

    思路分析 此题采用dfs,注意X选中了之后所有的X值相同,所以需要一个flag来存储X的值. 注意前导0要单独讨论,然后就是当'X'或者'_'在第一位时不能选0,其它位可以选0 - 9 任意一个数. ...