QSQL是以SQL进行单一、混合查询的一款产品。QSQL支持标准SQL语言(SQL-2003);QSQL支持查询关系型数据库、NoSQL式数据库、原生不支持SQL查询的存储(如ES、Druid),及借助中间计算引擎实现混合查询。QSQL最大的特点是独立于计算引擎、存储引擎本身,如此用户只需要关注于QSQL语法以及数据本身,就可完成数据计算、统计以及分析。
架构设计
QSQL包含三层结构:
语法解析层:负责SQL语句的解析、校验、优化、混算SQL的切分以及最终生成Query Plan;
计算引擎层:负责Query Plan路由到具体的执行计划中,将Query Plan解释为具体的执行引擎可识别的语言;
数据存储层:负责数据的提取、存储;
编译&部署
1 编译环境依赖
java >= 1.8
scala >= 2.11
maven >= 3.3
2 编译步骤
在源码根目录下,执行:
mvn -DskipTests clean package
编译成功后执行:
ls ./target/
在./target/目录下,会生成发布包 qsql-0.5.tar.gz。
3 部署环境依赖
CentOS 6.2