我们为什么要开发 DBPlusEngine #
伴随数字化转型步入“深水区”,企业的业务需求迭代迅速,数据量和并发访问量呈指数级增长,传统关系型数据库遇到捉襟见肘的扩展能力、大数据处理性能低等挑战。数据对于企业的重要性越来越高,一方面企业对于以数据库为核心的专业服务需求也愈发迫切。另一方面企业也翘首以待新型数据库来满足不同的数据场景应用需求。国内外数据库行业下的『绿林军』,正一步步通过市场上的表现被转化为『正规军』,数据库在传统关系型流派的基础上迅速裂变,进入百花齐放、百家争鸣的时代。但由于企业数据库技术体系庞杂,各个数据库之间间隙明显,管理困难,尤其是数据库在企业中的角色向来都是成本中心,控制成本、提高效能,是企业对底层数据库的长期不变的诉求。因此在多方位的作用下,企业需要服务提供商能够提供横向主流数据库产品和纵向多版本技术服务覆盖能力,以面对来自无感解决用户侧多元化需求以及抽离行业侧共性问题并形成解决方案的诉求。在此情况下,对于数据的利用和底层架构的转型,就显得尤为迫切。想办法提升数据库的灵活性与扩展性,打造组件化数据库,或许是一种可行的方式。
SphereEx-DBPlusEngine 基于 Apache ShardingSphere 提出的 Database Plus 理念,推动了 Apache ShardingSphere 的微内核和可插拔架构模型的设计和落地,为社区用户提供轻量级与灵活度并存的组件化开源产品的同时,也为企业级产品提供了增量功能的统一入口。
SphereEx-DBPlusEngine 不满足于自身数据库中间件工具型的定位,开始向着平台和生态去转型。 DatabasePlus 理念的践行,使 SphereEx-DBPlusEngine 不但屏蔽了各个数据库之间的底层细节,也弥补了分布式数据库各分片之间的差异。具体来看,通过对数据库协议、 SQL 方言以及数据库存储的灵活适配,快速连接应用与异构数据库,让开发者最终无需关注 SQL 方言的差异化,专注业务研发。
SphereEx-DBPlusEngine 在这层数据库的生态之上,通过将数据库作为最终的存储节点,在接入端满足各种各样的数据库协议、 SQL 方言以及数据库落盘对接等,进而在这层存储节点之上面向数据库应用架构提供各类增量能力。因此,用户可以将 SphereEx-DBPlusEngine 视作一个“数据库网关”,可获取数据库的访问流量,提供流量重定向(数据分片、读写分离、影子库)、流量变形(数据加密、数据脱敏)、流量鉴权(安全、审计、权限)、流量治理(熔断、限流)以及流量分析(服务质量分析、可观察性)等透明化功能,这些增强功能使得 SphereEx-DBPlusEngine 成了数据库产品的最强伴侣,用户无需为如何统一管理各个数据库而发愁,主流的鉴权、治理功能完成都可通过 DistSQL 这一 SQL 标准的扩展来完成。