巨杉数据库SequoiaDB
**简介:**国产分布式关系型数据库,自研的原生分布式存储引擎支持完整 ACID,具备弹性扩展、高并发和高可用特性,支持 MySQL、PostgreSQL 和 SparkSQL 等多种 SQL 访问形式
SequoiaDB 3.0实现了100%的MySQL协议级兼容:
- 全面兼容:全面支持MySQL协议与语法,用户可以直接使用MySQL客户端或任何管理、开发与监控工具对数据库进行操作;
- MySQL语法:由于使用了MySQL原生的解析器,SequoiaDB 3.0 能够实现100%的MySQL语法兼容,支持语法包括基础CRUD操作,多表关联,跨节点事务操作,创建视图,存储过程,索引和访问计划等。
- 无缝切换: 对于任何已有应用程序,SequoiaDB 3.0提供全面的MySQL兼容,几乎无需应用程序代码调整,即可无缝切换;
- 分布式弹性扩展:通过SequoiaDB存储引擎原生分布式架构,数据库在兼容MySQL同时,无需“分库分表”,分布式存储引擎直接提供弹性容量扩展能力,可以上百倍提升应用程序的存储空间与访问性能;
- 表多维分区:通过存储-SQL分离架构,用户访问MySQL也可以实现表的多维分区,提升应用的灵活性。
安装
在官网下载的安装压缩包,解压后发现有一下几个文件:
sequoiadb-3.2-linux_x86_64-installer.run
sequoiasql-mysql-3.2-linux_x86_64-installer.run
sequoiasql-postgresql-3.2-x86_64-installer.run
readme.txt
setup.sh
ReadME.txt中的内容
sequoiadb-3.2-linux_x86_64-installer.run
一.简介:SequoiaDB是一款金融级分布式数据库,SequoiaDB3.0 主要提供:
分布式NewSQL--- 支撑分布式架构的核心交易系统
分布式对象存储--- 海量结构化、非结构化和半结构化数据统一管理
分布式NoSQL--- 高性能、高并发数据访问
二.使用:
所有的主机都安装了 SequoiaDB 后,用户可以根据自身的情况(可参考规划数据库部署),选择部署单机模式或者集群模式的环境。
1.安装包常用参数:
mode: 安装模式,默认是gtk图形界面安装
prefix: 安装路径,默认是/opt/sequoiadb
SMS: 是否安装om,默认不安装,只支持true或者false
更多参数及取值参考--help,详细步骤可查看http://doc.sequoiadb.com/cn/sequoiadb-cat_id-1432191000-edition_id-302,安装完成后添加集群管理服务sdbcm
sequoiasql-postgresql-3.2-x86_64-installer.run
一.简介:SequoiaSQL 是 SequoiaDB 的 一种 SQL 引擎,支持标准 SQL 2003 语法,完全兼容 PostgreSQL 语法。用户可以使用 SQL 语句访问 SequoiaDB 数据库,完成对 SequoiaDB 数据库的增、删、查、改操作。用户可以通过 JDBC 驱动连接 SequoiaSQL 进行应用程序开发。
二.使用:
1.安装包常用参数:
mode: 安装模式,默认是gtk图形界面安装
prefix: 安装路径,默认是/opt/sequoiasql/postgresql
更多参数及取值参考--help,详细步骤可查看http://doc.sequoiadb.com/cn/sequoiadb-cat_id-1519628019-edition_id-302
安装完成后添加实例管理服务sequoiasql-postgresql
sequoiasql-mysql-3.2-linux_x86_64-installer.run
一.简介:MySQL 是一款开源的关系型数据库管理系统,也是目前最流行的关系型数据库管理系统之一,支持标准的 SQL 语言。SequoiaDB 以存储引擎的方式与 MySQL 对接,使得用户可以通过 MySQL 的 SQL 接口访问 SequoiaDB 中的数据,并进行增、删、改、查等操作。
二.使用:
1.安装包常用参数:
mode: 安装模式,默认是gtk图形界面安装
prefix: 安装路径,默认是/opt/sequoiasql/mysql
installInstance: 是否添加数据库实例,默认添加端口号为3306的数据库实例
更多参数及取值参考--help,详细步骤可查看http://doc.sequoiadb.com/cn/sequoiadb-cat_id-1521595270-edition_id-302
所以可以得知,兼容MySQL,实际上是SQL解析引擎+SequoiaDB存储引擎
的方式实现的
测试单节点sequoiasql-mysql性能
压测说明
测试软件
主机: 虚拟机2核4G 压测对比: "单MySQL"VS“单sequoiasql-mysql” 测试量: 10万写入+20万分页查询(count+limit)+20万通过主键查询
**线程数:**100
**数据库参数:**默认
测试结果
单MySQL
单sequoiasql-mysql
单机测试结果和MySQL差不多,有点失去兴趣,不想继续...
集群的性能如何? 那搭建个集群玩一玩, 加油...继续...
搭建sequoiasql-mysql + sequoiadb集群
机器准备及规划
机器名称 | IP | 用途 |
---|---|---|
sequoiadb1 | 192.168.1.86 | sequoiadb编目节点,数据节点,协调节点 |
sequoiadb2 | 192.168.1.87 | sequoiadb编目节点,数据节点,协调节点 |
sequoiadb3 | 192.168.1.89 | sequoiadb编目节点,数据节点,协调节点 |
sequoiasql-mysql | 192.168.1.90 | sequoiasql-mysql数据节点,协调节点 |
安装过程
- 配置所有机器的hosts
192.168.1.86 sequoiadb1 192.168.1.87 sequoiadb2 192.168.1.89 sequoiadb3 192.168.1.90 sequoiasql-mysql
-
在
sequoiadb1,sequoiadb2,sequoiadb3
三台机器上安装sequoiadb,教程:http://doc.sequoiadb.com/cn/sequoiadb-cat_id-1432191000-edition_id-0 -
将
sequoiadb1,sequoiadb2,sequoiadb3
三台组建集群(集群模式),教程:http://doc.sequoiadb.com/cn/sequoiadb-cat_id-1432191002-edition_id-302 -
在
sequoiasql-mysql
机器上安装sequoiasql-mysql
,教程:http://doc.sequoiadb.com/cn/sequoiadb-cat_id-1521595270-edition_id-0 -
在
sequoiasql-mysql
机器上创建MySQL实例,并连接至sequoiadb集群,教程:http://doc.sequoiadb.com/cn/sequoiadb-cat_id-1521595283-edition_id-0
# 创建实例 bin/sdb_sql_ctl addinst myinst -D database/3306/ # 配置 SequoiaDB 连接地址(也可通过配置文件/opt/sequoiasql/mysql/database/3306/auto.cnf) bin/sdb_sql_ctl chconf myinst --sdb-conn-addr=192.168.1.86:11810,192.168.64.1:11810,192.168.1.89:11810,192.168.1.90:11810
**失败!失败!**尴尬,整个过程无报错,但是在测试过程,发现只有sequoiasql-mysql
有负载和大流量,后面的集群没有应该是没有参与工作!!!
暂时放弃...