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. 关于URL encode和parse

    from urllib import parses = 'https://www.baidu.com/s?ie=utf-8&f=3&rsv_bp=1&tn=baidu& ...

  2. Loj#143-[模板]质数判定【Miller-Rabin】

    正题 题目链接:https://loj.ac/p/143 题目大意 给出一个数\(p\),让你判定是否为质数. 解题思路 \(Miller-Rabin\)是一种基于费马小定理和二次探测定理的具有较高正 ...

  3. (目录)Fortran学习笔记:开坑!!!

    前言:因为某些原因,需要使用Fortran编写程序,记录下Fortran语法学习过程中的部分笔记.在此开坑记录,立下Flag,"希望年末能够更新完" Fortran 学习笔记 陈橙 ...

  4. Sentry 监控 - Snuba 数据中台架构(Data Model 简介)

    系列 1 分钟快速使用 Docker 上手最新版 Sentry-CLI - 创建版本 快速使用 Docker 上手 Sentry-CLI - 30 秒上手 Source Maps Sentry For ...

  5. 关于SSTI的坑

    SSTI注入 进过几天的CSDN和博客园以及个人博客的查询,我大概讲一下我对SSTI模板注入的理解. SSTI注入指的是模板注入(应该翻译就是模板注入) 就站在我所了解的知识水平(大概就是大一随便水了 ...

  6. 模拟赛T2 交换 解题报告

    模拟赛T2 交换 解题报告 题目大意: 给定一个序列和若干个区间,每次从区间中选择两个数修改使字典序最小. \(n,m\) 同阶 \(10^6\) 2.1 算法 1 按照题意模拟,枚举交换位置并比较. ...

  7. torch.nn.Sequential()详解

    参考:官方文档    源码 官方文档 nn.Sequential A sequential container. Modules will be added to it in the order th ...

  8. c语言中for循环 和嵌套for循环

    for循环:for( ; ; )里面是bai3个语句,两个分号.第一个语句是开始前执行,第二个语句是判断真假,如果真,就执行后面(大括号内)的代码.第三个语句是每次执行完毕后执行的东西,通常第三个语句 ...

  9. 巧用 CSS3 filter(滤镜) 属性

    原文链接:CSS3 filter(滤镜) 属性 效果预览 filter: grayscale(100%); 定义和使用 filter 属性定义了元素(通常是<img>)的可视效果(例如:模 ...

  10. Kettle的安装及简单使用

    Kettle的安装及简单使用 目录 Kettle的安装及简单使用 一.kettle概述 二.kettle安装部署和使用 Windows下安装 案例1:MySQL to MySQL 案例2:使用作业执行 ...