什么是最适合云数据库的架构设计?

2023-06-03 0 578

分布式系统资料库控制技术产业发展多年,但是在应用、销售业务的驱动力下,分布式系统资料库的构架始终在急速产业发展和重构。

开放源码金融创新级分布式系统资料库SequoiaDB,经过6年的研发,秉持从零已经开始打造出资料库核心理念发动机。在控制技术探索中,选择了更适宜云资料库情景的构架和发动机结构设计。本文也将详细展开,介绍目前SequoiaDB的构架与结构设计理念。

SequoiaDB近日也完成由海富通投资B轮的C轮融资。此轮的B轮方为海富通投资,国兴股权投资与DCM做为早期投资人跟投。SequoiaDB松树资料库始终秉持控制技术驱动力商品,著眼打造出金融创新级分布式系统资料库,成为中国首次入围Gartner资料库报告的资料库厂商。目前,松树资料库订阅虚拟化客户与社区用户总数少于1000家,并已在少于50家500强级别的银行、保险、证券等大型金融创新机构核心理念生产销售业务上架。

Multimodel单模资料库发动机

在云计算与分布式系统黄金时代,为单一形式化统计应用服务的传统亲密关系型资料库也已经开始了急速地产业发展。从2007年IBM DB2全力支持XML以来,越来越多的亲密关系型资料库已经开始全力支持XML与JSON等半形式化统计数据。因此,Gartner认为未来资料库的产业发展方向是单模式的黄金时代,这款成熟的资料库商品需要借助分布式系统控制技术,全力支持除了亲密关系型以外的多种出访方式。

SequoiaDB则是这款典型的单模(Multi-Model)资料库,全面性覆盖了形式化、半形式化或非形式化统计数据,与此同时满足用户买卖、图像储存销售业务、和系统预测销售业务的市场需求。

SequoiaDB透过其计算储存分离构架,在NewSQL形式化统计数据领域有效借助MySQL、SparkSQL与PGSQL导出开伞器,在保持标准规范100%相容的与此同时,轻松同时实现了新浪网买卖与app预测的HTAP混和买卖预测阻抗的支撑力。与此同时SequoiaDB采用API满足用户企业对半形式化JSON统计数据的全力支持,和透过相容Posix磁盘和S3USB同时实现了非形式化统计数据的储存与出访。

SequoiaDB储存采用双引擎构架,将文件大第一类与统计数据记录分别以最优化的结构进行导出与放置,上层配以统一的卫生保健、软件产业控管、同步拷贝、会话管理工作等机制,全力支持统计数据参会话的逻辑与物理隔绝,使其最小化满足用户云黄金时代的分布式系统管理工作与混和销售业务阻抗市场需求。

2017月底SequoiaDB正式发布了其3.0版。在其产业发展路径中可以看到,SequoiaDB的每一个大版插值均在之前的版上进行了巨大的扩展与增强。其中,2013年正式正式发布的1.0版做为单纯的JSON资料库,提供更多了对半形式化统计数据的支撑力潜能。而到了2015年的2.0版,SequoiaDB已经开始完全全力支持了第一类储存。直到2017月底正式发布的3.0版更是提供更多了对MySQL、PGSQL与SparkSQL的轻松交会与100%相容,全面性全力支持NewSQL的分布式系统会话潜能。

什么是最适合云数据库的架构设计?
SequoiaDB商品 产业发展历程

计算-储存分离构架

当前业界中常见的分布式系统构架包括分库分表与计算储存分离两类。其中分库分表构架以应用中间件切分或MyCat等商品为代表。而如果说分库分表构架是基于传统资料库进行简单的上层封装,真正的计算储存分离构架则意味着在SQL导出与底层的统计数据储存均可进行自由的弹性扩展。

当前行业中最主流的云数据库同时实现(例如AWS的Aurora、阿里云的PolarDB等)即透过将MySQL服务器直接构建在底层的分布式系统高性能储存之上,透过定制化标准的SQL发动机与底层统计数据通讯USB,同时实现底层分布式系统储存与上层的SQL导出开伞器完全松耦合,两者均可自由动态伸缩。

什么是最适合云数据库的架构设计?
计算(SQL)-储存 分离构架示意

计算储存分离体系的结构设计思想是以松耦合的方式将计算与储存层分别部署,透过标准USB或插件对各个模块和组件进行无缝替换,在计算层与储存层均可同时实现自由的弹性伸缩。MySQL与MariaDB的构架可以说是亲密关系型资料库计算储存松耦合结构的代表。在MySQL 5.7及之前的版中,其SQL导出发动机与后台的统计数据储存内核透过几百个C++函数进行通讯。因此,在MySQL资料库中,DBA可以选择InnoDB、MyISAM、NDB、Memory、甚至自己同时实现一套资料库发动机来与前端的SQL导出开伞器进行交会。

什么是最适合云数据库的架构设计?
分布式系统资料库“计算-储存分离”架构详细示意

计算储存分离构架的优势之一在于,用户可以根据自身的销售业务特征自由选择面向买卖的SQL导出器(例如MySQL或PGSQL),或面向系统预测的执行发动机(例如SparkSQL)。众所周知,采用不同的SQL优化与执行方式,资料库的出访性能可能会存在上千上万倍的差距。计算储存分离的核心理念思想便是在统计数据储存层面进行一体化储存,而计算层面则有效借助每种执行发动机的特点,针对不同的销售业务情景进行选择和优化。

什么是最适合云数据库的架构设计?
SequoiaDB构架示意

与此同时,由于统计数据储存层与计算层完全分离,用户完全可以在储存层进行逻辑与物理的隔绝,将面向高频买卖的前端销售业务,与面向高吞吐量的系统预测采用不同的硬件进行储存,确保在多类型统计数据出访时互不干扰,以真正达到生产环境可用的多租户与HTAP潜能。

得益于SequoiaDB 3.0的分离构架,整个资料库可以透过自由交会不同的执行发动机,对同一份统计数据以不同的USB进行出访。与此同时,SequoiaDB可以透过配置,指定新浪网销售业务出访三副本中的两份,而另一份则专门供SparkSQL进行系统预测,从而做到对同一份统计数据的出访,新浪网应用与统计销售业务在物理硬件层面完全隔绝。

什么是最适合云数据库的架构设计?
计算-储存分离构架下的销售业务灵活隔绝划分

对于新浪网买卖销售业务来说,由于所有的分布式系统事务、锁、索引等机制都是直接在底层的分布式系统发动机完成,上层采用任何SQL导出器都可以做到完全的ACID。

弹性伸缩

在云计算的黄金时代,任何应用程序与中间件早已经透过微服务架构同时实现了动态扩容缩容。例如,企业可以在双十一高峰前大规模租赁AWS或阿里云的服务器,将应用程序的计算与处理潜能几十倍地扩张。

但是,不同于应用程序,统计数据层面的弹性伸缩潜能往往是应用程序扩展性最大的制约。例如,应用程序可以在一天内不停机地从3个Tomcat服务器扩展到30个,但底层的统计数据分库分表机制几乎不可能轻松自如地增减资料库的服务节点。

什么是最适合云数据库的架构设计?
SequoiaDB储存发动机原生分布式系统构架

SequoiaDB透过一致性散列等机制,对底层资料库扩容缩容做到完全新浪网且对应用透明无感知。对于需要放置大量统计数据的流水类销售业务,SequoiaDB甚至能够提供更多“零统计数据迁移”策略,确保增加节点后系统不会产生任何需要产生大量I/O的后台重平衡操作。

SequoiaDB可以透过增加统计数据分区与统计数据节点数量,对整个软件产业的储存容量与计算潜能进行弹性水平横向扩张。

MySQL全相容

SequoiaDB透过“计算-储存分离”构架,提供更多了应用程序层面的MySQL全相容潜能。SequoiaDB直接借助在MySQL官网下载的MySQL Server,透过其储存发动机插件的潜能,提供更多了平行于InnoDB的SequoiaDB分布式系统储存发动机插件。

SequoiaDB完全借助了大家多年来所习惯采用的MySQL资料库服务,对于应用程序开发人员与DBA来说并不需要学习任何新的知识与语法,便可以无缝地将其应用程序从传统的单点构架迁移到分布式系统资料库。在从InnoDB储存发动机向SequoiaDB分布式系统发动机切换时,所有的统计数据分区机制对上层应用程序完全透明零感知。与此同时SequoiaDB也提供更多了包括app、新浪网、实时等多种迁移工具,供用户在不同情景下进行选择。

如今MySQL已经被大量互联网与虚拟化用户所采用。相比起需要重新构建SQL导出器与开伞器的分库分表策略,SequoiaDB的计算-储存分离构架能够最小化重用开发人员与DBA的原有技能,与此同时与MySQL社区保持紧密结合互动,透过其分布式系统储存潜能参与到MySQL的生态建设。

什么是最适合云数据库的架构设计?
SequoiaDB对MySQL完整相容示意

小结

以Multimodel单模统计数据储存发动机为基础,透过业界主流的计算-储存分离构架,同时实现发动机的分布式系统和SQL层对于MySQL、PostgreSQL和SparkSQL的完整相容。这一整体构架结构设计相信是云统计数据产业发展的主流构架结构设计。

SequoiaDB正是应用了这一构架结构设计,同时实现了弹性扩张、多租户、HTAP全力支持、与MySQL全相容等潜能,这也使开放源码的SequoiaDB能够更加紧密地参与到社区建设中,为我国的资料库基础软件产业发展与MySQL社区的壮大贡献自己的力量!透过此次融资,松树资料库将持续投入核心理念研发与控制技术创新,立足于金融创新行业覆盖其他垂直领域市场,拓展更多虚拟化应用情景,加速国际化步伐,将松树资料库打造出成为世界级的分布式系统资料库商品!

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务