数据应用的变与不变,ShardingSphere 正在影响未来数字体验的建设理念

恭喜 SphereEx 联合创始人潘娟成为亚马逊云科技新晋 Data Hero SphereEx 联合创始人 & CTO、Apache ShardingSphere PMC 潘娟,成功入选成为 Data Hero! 阅读详情

近年来关于底层数据库的开源产品越来越多,它们也受到了许多资本的青睐。

伴随着移动互联网催生的数字化场景爆发,云计算、大数据等技术逐渐有了更加广阔的应用场景。在云计算和大数据经过十年的追赶式发展后,不只是传统行业,各家平台自身也在面临转型升级。在这种转折中,数据的使用、应用、场景等都发生了变化。

随着大数据在各领域下的应用不断得到扩张,一个平台上的数据来源、价值、渠道、场景等都得到了分散和细化。以数据库应用为代表的新一代基础设施,在时下所要做的不是专注在某一个种类、场景下的数据收益,而是需要对这些『散乱』的数据进行重构。

从本地私有化到云端,从单点到分布式,数据库领域得到了前所未有的延伸。云上数据库和分布式数据库,也共同构成了当今数据库市场中最热的两条赛道。

而 SphereEx,正是要在这两条赛道上做出更多创新的能力。

SphereEx 联合创始人潘娟认为,数据的价值在于感知和应用,平台只是承载数据的形式。无论传统关系型数据库还是分布式数据库,其连接应用和数据的本质都不会变。关键在于是否能满足具有高并发、大规模数据存储、业务快速扩张等特征的用户业务对数据库的要求。

01 以可插拔架构为切口,探索多源数据的统一管理轨迹

毫无疑问,分布式数据库是当前最火的数据库领域,但传统关系型数据库仍然占据了市场的主流,且由于应用场景的细分,将在未来相当长一段时间保持现在的态势,难以出现数据库大一统的局面。

经过数十年的发展,数据库本身的生态和能力已经十分完善,已经存在很多性能强大的数据库,所分布的场景和领域也已经十分垂直。在数据库选型方面,围绕业务重心来选择最适配的数据库产品,已经成为技术团队中非常重要的一项工作。

不过,关系型数据库仍然是全球的主流。近日,DB-Engines 发布了 2021 年 8 月份的数据库排名,Oracle、MySQL、SQLServer 依然排在前三位,关系型数据库依然拥有庞大的用户生态和强大的话语权。不过关系型数据库在“可扩展性、高并发以及性能”方面,存在非常多的问题,比如:传统的关系型数据库以及二维关系模型,很难高效地扩展到多个存储节点上。

在这种背景下,传统关系型数据库难以支撑起高并发的数据体量,但业务场景又需要数据库具备这种能力,分布式数据库成为了热门的选择。

在潘娟看来,无论数据库市场如何风云变幻,其本质依然是通过对数据实现多类型文件的管理与存储,在本质不变的前提下,发生变化的也只是场景和效益。因此对于 ShardingSphere 和 SphereEx 来说,底层是怎样的数据库都无所谓,毕竟只是管理和存储的空间,ShardingSphere 将在数据库上层开辟一条统一的管理平台,在数据库上层生态发现更多可能。

因此面对技术选型和数据库应用层面的差异化,ShardingSphere 避免因数据库所产生的局限性,在数据库上层进行能力整合,将更多元的数据库包含进来,对数据库上层实现能力管控,将多款不同的数据库包含进同一种事务语义中。

仅仅提供对应用和数据的连接是远远不够的。

潘娟认为,对于未来数据库的发展,应该分为两个视角。一个是底层数据库的发展趋势,另一个则是数据库与应用之间的平台发展趋势。沿着这一发展趋势,就能发现 SphereEx 所做的事情,将其归纳为 Database Plus 产品。

目前,ShardingSphere 正在向着 Database Plus 产品形态去演进。作为一个完全面向广度的生态类项目,SphereEx 公司正在主导把 ShardingSphere 打造成为 Database Plus 的产品形态,致力于搭建数据库上层的标准化增量,而非重新做一个 n+1 的数据库。在 Database Plus 产品之上,开发了一套足够灵活的可插拔架构体系,基于可插拔平台的叠加机制,对分片、读写分离、加解密、加密+分片等功能进行排列组合,提供面向应用与数据的增强与拓展服务。

02 云上,构建新的数据库设计范式

随着同为互联网基础设施的云计算发展势头依然迅猛,企业在云上的业务比重也逐年升高,业务、数据、数据库上云已经是不可逆的趋势。作为数据库上层的服务平台,ShardingSphere 未来肯定也将从云下迁移到云上,为用户提供 SaaS 化服务,帮助企业更快速、更方便地上云。

但是 ShardingSphere 所提供的 SaaS 服务,是不同于传统意义上的模式,而是以数据网格的形式,遵循 Database Mesh 的理念来践行。潘娟认为 Database Mesh 理念可以在企业云原生数据库落地方面起到有效的辅助作用。作为 ShardingSphere 在云端的应用形态,未来 ShardingSphere 会通过提供 Sidecar 来管理云上的南北流量,让业务应用通过 Sidecar 导流到 Proxy 端,再导流到数据库,形成用户无感知的数据穿透能力。在这层能力之上,ShardingSphere 可提供如数据路由,读写分离,数据加解密等增量服务,并通过明确 Proxy 的数据标签,并能够根据当前的 SQL 特征来路由到合适的 Proxy 端,进而实现面向东西+南北流量的共同治理。

虽然服务形式类似于 Service Mesh 服务网格,但 Database Mesh 能够深度理解 SQL 的含义,从而进行更细粒度的掌控。

另一方面,云上的数据库往往会承担更多来自用户、流量侧的压力,加之业务会比以往更加频发地访问数据库,很多用户会担心 Sidecar 这种形式会影响到数据库的性能。由于 ShardingSphere 是运行在数据库之上的服务,或多或少会对数据库的性能产生影响,但终归是要用户来评估在『牺牲一部分性能后,能够得到什么』。

由于 Sidecar 对于应用而言不会产生跨网络节点,从 Sidecar 到数据库之间才会产生,因此从应用体验层面来看,通过 Sidecar 来访问数据库和直接访问数据库这两个方式之间不存在特别大的区别;但如果涉及到核心计算,就需要用户来衡量是否需要用资源来换取时间。在 ShardingSphere 中,用户可以选择将计算过程跳过 Sidecar,落在 Proxy 上进行统一计算,完成后将结果返回,避免单独计算每个应用所造成的大量时间的浪费,使应用更方便连接到相关的数据库。 作为新时代数字经济的基础设施之一,数据库承载着互联网过去以来发展的记忆。作为数据的底座,不论承载数据的形式是怎样的,应用数据最终的目的和导向性都是一致的,区别只在于如何应用。而应用数据的过程,也直接反映了当下互联网行业变迁的过程。在合适的时机选择恰当的数据使用方式,才能让企业始终保持在符合互联网行业变迁规律之上进行发展。

使用sharding-jdbc解决SaaS系统动态数据源问题 1. 需求背景2. 设计思路2.1 SaaS数据隔离的三种方案2.1.1 共享数据表(tenant_id)2.1.2 独立schema2.1.3 独立数据库2.2 创建租户思路2.2.1 创建租户时指定数据源2.2.2 创建租户流程3. 使用sharding-jdbc实现4. 总结 1. 需求背景 项目是toB系统,技术设计的时候需要考虑系统SaaS化,也就是实现多租户模式; 2. 设计思路 个人之前并未参过SaaS系统的设计和开发,也参考了网上的大量资料学习,SaaS系统的核心个人感觉主要有三点: . 阅读详情

相关推荐

ShardingSphere:下一代数据库中间件的革命

ShardingSphere作为一款创新的数据库中间件,以其灵活的分片策略、高效的读写分离、可靠的柔性事务和数据加密等核心功能,引领了下一代数据库中间件的发展趋势。通过本文的介绍,相信你已经对ShardingSphere有了深入的了解。在实际开发中,ShardingSphere可以帮助我们轻松应对海量数据存储和查询的挑战,为业务提供强大的支持。

u013558123的博客 630

潘娟:从女工程师转成开源商业化 Infra 公司创始人,痛并快乐着

「WeOpen Talk」是腾源会全新上线的“对话开源”内容专栏,每周为读者呈现一期尖峰开源人物的精彩对话内容。在「WeOpen Talk」栏目中,我们将深刻诠释开源先锋者们的开源精神、...

ShardingSphere官微 502

PostgresChina2018潘娟ApacheShardingSphere云架构演化.pdf

Postgres中国技术大会2018(大象汇,第8届)15日主会场PPT 主要章节:

分库分表,可能真的会退出历史舞台了?

框架层,驱动层,代理层,在过去很长一段时间里,有无数的互联网公司前赴后继的试水,从 TDDL、Cobar,到 MyCat、ShardingSphere,各种层面的中间件也是层出不穷。很长时间以来,国内互联网的做法普遍是采用加入一个中间件的方式来解决,但随着分布式数据库的技术越来越成熟,这些魔法逐渐下沉到它本应该解决的层面–数据库实现层。当你的业务有了常年累积的复杂数据,你可能会采用复杂的分库分表组件,但如果你的业务比较新,可预见的未来会有大量数据,那一个分布式数据库可能是最合适的。要工具有工具,要人有人。

LoveSummer 5万+

分库分表,可能真的要退出历史舞台了!

往期热门文章:1、SpringBoot + MDC 实现全链路调用日志跟踪 2、去TM的领导:发烧请病假,不意味着在家睡大觉 3、5年半老程序员被System.out.println() 考懵逼了... 4、妙用Java 8中的 Function接口,消灭if...else(非常新颖的写法) 5、Controller中的请求方法,private和public有什么区别?即使是不懂编程的玩家,在对比...

Java后端技术 217

潘娟:Keep open,Stay tuned 开源为我打开的全新世界 | TiDB Hackathon 2021 评委访谈...

距离 2022.1.8-9 比赛日,已不到两周时间,想必各位参赛选手已经摩拳擦掌,开始准备自己的项目了。在等待最终比赛日的这段时间,TiDB 社区采访了本届 Hackathon 中的一位女...

ShardingSphere官微 378

嘉宾介绍|2020 PostgreSQL亚洲大会中文分论坛:潘娟

作为全球最大、最知名的PG序列会议,从纽约到莫斯科,从里约热内卢到约翰内斯堡,全球各地区都有PGConf在运行。而亚洲规格最高的PG技术盛会—PGConf.Asia大会,将于今年11月首度在中国举行。中国开源软件联盟PG分会作为东道主承办本次会议,采用线上形式,通过墨天轮社区面向全球直播。本次大会将集中国PG力量和亚洲主要PG贡献者、应用企业共同打造亚洲范围内最大规模的PG生态会议。 本届PGConf.Asia大会将PostgresConf.CN中国大会联合举办。PostgresConf.CN中国大会同.

PostgreSQL China 899

41 位 Contributor 参,1574 个 PR,不容错过的版本更新!

Apache ShardingSphere 5.0.0-beta 版在经过长达半年的筹备后,终于将在近期正式 Release! 本文将带领大家一同预览新版本即将带来哪些重大亮点功能。 作者介绍 潘娟 | Trista SphereEx 联合创始人 SphereEx co-founder, Apache member, Apache ShardingSphere PMC, Apache brpc(Incubating) mentor, 本次 Release manager。 前京东科...

SphereEX的博客 407

MySQL数据技术嘉年华,带你深入MySQL的世界

点关注,不迷路众所周知,MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),可以使用最常用的-结构化查询语言(SQL)进行管理。MySQL在DB-Engine...

Enmotech的博客 1007

慧据价值 链接未来丨第八届数据技术嘉年华大会全议程精彩呈现

简介时光荏苒,岁月如梭,然而技术的进步同样日新月异,转眼又来到总结一年的时刻,第八届数据技术嘉年华大会将于2018年11月16日~17日在北京市东三环中路61号富力万丽酒...

Enmotech的博客 3198

中国唯一一位女性 Apache Member 潘娟:我们还是要走出自己众不同的 My Way

The Apache Way 是一种参照,但我们还是要走出自己的众不同的 My Way。———潘娟ApacheCon 是 Apache 软件基金会(ASF)的官方全球系列大会。作为久负盛...

dotNET跨平台 1352

分布式数据库中间件Apache ShardingSphere京东落地实战

本文根据dbaplus社群第183期线上分享整理而成。 面对互联网大数据如火如荼发展、云服务需求的急剧增加,对企业极其重要的数据要如何面对这些新的革? 作为Apache基金会的分布式数据库中间件项目-ShardingSphere将针对数据水平&垂直拆分、分布式事务、数据服务治理、数据安全等需求提供一套适用于互联网应用架构、云服务架构的多解决方案生态圈。 本次分享将介绍Apache Sh...

Dinosaur_1117的博客 4073

SpringBoot+Sharding-JDBC分库分表实战

<p><img src="https://10.idqqimg.com/qqke_course_info/ajNVdqHZLLDicQjFHRT60aN5OCgE4Jo181twdpHVox5TYTFUFibIiaIkk6PlwqgwD9icRAictlbLkOQw/" alt="" /></p>

ShardingSphere官网操作指南补充和重点整理-数据分片-核心概念(二)

数据分片的核心概念,主要包括: SQL核心概念 分片核心概念 配置核心概念 SQL 逻辑表 水平拆分的数据库(表)的相同逻辑和数据结构表的总称。例:订单数据根据主键尾数拆分为10张表,分别是t_order_0到t_order_9,他们的逻辑表名为t_order。 真实表 在分片的数据库中真实存在的物理表。即上个示例中的t_order_0到t_order_9。 数据节点 数据分片的...

astra_zhao的专栏 992

Apache ShardingSphere整合Seata AT分布式事务

背景知识Seata是阿里集团和蚂蚁金服联合打造的分布式事务框架,目前版本包含了AT事务和TCC事务。其中AT事务的目标是在微服务架构下,提供增量的事务ACID语意,让用户...

ShardingSphere官微 6641

使用sharding-jdbc解决SaaS系统动态数据源问题2——回答粉丝问题

在上篇文章:使用sharding-jdbc解决SaaS系统动态数据源问题 文章中有些细节没有罗列,给部分读者造成疑惑统一在这里解答: 1. 配置的动态数据源事务如何控制? 其实无论我们创建了多少个数据源,都是交到了shardingjdbc里面进行管理了,shardingjdbc内部管理一个dataSourceMap,然后shardingjdbc对其dataSourceMap进行封装出一个新的dataSourceNew,我们接下来只需要对新的dataSourceNew将其交给spring进行事务管理就可以了;

shixiaoling123的博客 1339
上一篇: Apache ShardingSphere:由开源驱动的分布式数据库中间件生态
下一篇: 趣说开源|学生如何参与开源社区?
潘娟 Trista
潘娟 Trista 业界专家认证 业界专家认证
博客等级 码龄5年 15粉丝 10原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值