9月7日、8日,2018 ODF 开源数据库论坛,在北京盛大开幕。在大会上,巨杉数据库正式发布了巨杉全新的MySQL/MariaDB兼容架构,并将项目正式开源。数据库
开源数据库论坛(ODF)是中国开源数据库垂直领域的顶级峰会,旨在创建一个平台,以促进开源数据库产品发展和技术交流,帮助愈来愈多的企业了解和使用开源数据库。架构
在大会主论坛中,巨杉数据库联合创始人 & CTO王涛,介绍了SequoiaDB 3.0 对于MySQL兼容的机构以及兼容工具SequoiaSQL,同时也正式宣布SequoiaSQL项目正式向社区开源。分布式
SequoiaSQL项目开源工具
SequoiaSQL此前是SequoiaDB数据库的SQL解析模块,在通过1.0~3.0的发展,SequoiaSQL组件也实现了PostgreSQL、MySQL的兼容。spa
MySQL的分布式改造目前也是包括互联网行业在内的多个行业的一个共性需求,所以巨杉也决定将SequoiaSQL组件开源,一方面是将这一个MySQL的分布式方案和工具提供给业界和社区,解决更多应用中实际的数据库痛点;另外一方面,也但愿项目的开源,可让社区参与到项目中,将来能够一同实现工具的通用化。.net
项目目前已经实现MySQL,PostgreSQL的支持,在将来,还会实现MairaDB的兼容支持,而且实现更多存储引擎的兼容对接。blog
SQL-存储分离架构排序
针对云数据库的需求和架构方向,一种新的数据库架构也在渐渐成为主流,也就是数据库的 “SQL-存储分离”架构。索引
SQL-存储分离架构,即指数据库的存储引擎和SQL引擎两部分互相松耦合独立工做的架构。一般这一架构,分为存储、SQL和元数据 三个部分。进程
典型的云数据库架构示意
如上图所示,MySQL 的存储引擎能够挂载多种不一样的产品,每一个引擎都能提供不一样的技术特性。其中包括InnoDB、MyISAM等架构。
存储与SQL分离的架构,目前在数据库业界十分流行,AWS的Aurora数据库在SQL访问上也采用了相似的架构。SequoiaDB 3.0 目前在MySQL兼容上,主要也是采起“SQL-存储分离“的架构。
SequoiaDB 3.0 MySQL 兼容架构
SequoiaDB 3.0使用了MySQL数据库原生的SQL解析器,自然支持MySQL协议并能够作到100%语法兼容。在该架构中,MySQL协议解析层做为SQL解析和分发的角色,直接面对应用程序,每个MySQL服务的接入节点都是一个独立支持读写操做的MySQL进程。而数据存储和管理层,则彻底由巨杉数据库的分布式数据库引擎实现。简单来讲,SequoiaDB 3.0做为MySQL的InnoDB替换引擎,在自然支持MySQL的所有语法和功能的同时,提供了数据库存储层弹性扩张的能力。