Forked from shardingsphere-workshop
- 项目结构:
execute-engine: 执行引擎,负责sql的执行计划
mysql-protocol: mysql通信协议api
mysql-proxy: mysql基于netty实现mysql代理,负责与mysql client交互
sharding-parser: sql语法解析
storage-engine-api: 存储引擎接口层
storage-engine-bplus: 基于B+树索引实现的存储引擎
storage-engine-lsm: 基于lsm原理实现的存储引擎
- 启动类:
mysql-proxy模块shardingsphere.workshop.mysql.proxy.Bootstrap
- 操作示例:
mysql -uroot -proot
CREATE TABLE IF NOT EXISTS t_order(id INT UNSIGNED AUTO_INCREMENT,name VARCHAR(100) NOT NULL, creator VARCHAR(40) NOT NULL, PRIMARY KEY ( id ));
INSERT INTO t_order ( id, name, creator ) VALUES ( 1, 'n1', 'c1' );
INSERT INTO t_order ( id, name, creator ) VALUES ( 2, 'n2’, 'c2’ );
INSERT INTO t_order ( id, name, creator ) VALUES ( 3, 'n3’, 'c3’ );
select * from t_order where id > 1
select * from t_order where id = 1
select * from t_order where id < 3
select id, name from t_order where id = 1
select id, name from t_order where id >1 and id <3;
- 基本dml、ddl sql解析
- 支持创建表、插入、查询等操作
- 支持B+树和LSM两种存储引擎
- 复杂sql支持(join、group by、order by)等
- sql执行优化
- 并发及事务支持
- 分布式数据库支持