hawq的简介
https://cloud.tencent.com/developer/article/1433137
HAWQ,全称Hadoop With Query(带查询Hadoop)。HAWQ使企业能够获益于经过锤炼的基于MPP的分析功能及其查询性能,同时利用Hadoop堆栈。HAWQ是一个Hadoop原生大规模并行SQL分析引擎,针对的是分析性应用。和其他关系型数据库类似,接受SQL,返回结果集。但它具有大规模并行处理很多传统数据库以及其他数据库没有的特性及功能。
hawq的语法兼容性
HAWQ是100%符合ANSI SQL规范并且支持SQL 92、99、2003 OLAP以及基于Hadoop的PostgreSQL。它包含关联子查询、窗口函数、汇总与数据库、广泛的标量函数与聚合函数的功能。用户可通过ODBC和JDBC连接HAWQ。
hawq是否支持复杂查询
TPC-DS针对具有各种操作要求和复杂性的查询定义了99个模板(例如,点对点、报告、迭代、OLAP、数据挖掘等)。
基准测试是通过TPC-DS中的99个模板生成的111个查询来执行的。依据符合两个要求受支持的查询个数,以下条形图显示了一些基于SQL on Hadoop常见系统的合规等级:1. 每个系统可以优化的查询个数(如,返回查询计划)以及 2. 可以完成执行并返回查询结果的查询个数。
HAWQ的扩展性的SQL支持能力是基于数据仓库的代码库,HAWQ成功完成了全部111个查询。
hawq具有高效的查询优化器
HAWQ吸收了最先进的基于代价的SQL查询优化器,在SQL on Hadoop领域是行业先锋。该查询优化器以针对大数据模块化查询优化器架构中的研究结果为基础而设计。
HAWQ已经过验证,能够快速为涉及超过50个关联表的高要求查询找到理想查询计划,从而成为业内最佳的SQL on Hadoop数据发现与查询引擎。
hawq利用了线性可扩展性,加速Hadoop查询
SQL on Hadoop的主要设计目标是在Hadoop上执行SQL连接时最大程度地降低数据传输的开销。HAWQ采用Dynamic pipelining来解决这一关键要求,使基于HDFS的数据适用于交互式查询。
大数据模块化查询优化器架构中突出的性能分析显示,对于基于Hadoop的分析与数据仓储工作负载,HAWQ要比现有Hadoop查询引擎快一或两个数量级。这些性能改进主要归功于Dynamic pipelining和HAWQ内基于成本