技术开发 频道

SQL on Hadoop 和 SQL off Hadoop 介绍

  【IT168 资讯】最初,Apache Hadoop被视为是批处理非结构化数据的平台。从本质上讲,Hadoop是一种存储和处理大量数据的廉价又可靠的方式,吸引了更多的客户。

  随着时间的推移,Data Gravity的影响增加了对SQL on Hadoop的需求。最初的目标是找到使用SQL来支持Hadoop数据的方法,但现在越来越多的要求是用像Tableau这样的工具,将业务用户与数据连接起来。

  开源方法

  有许多开源的SQL on Hadoop解决方案,包括Hive(LLAP),Impala,SparkSQL和Presto。这些产品大都比较年轻,仍然有很大的改进。这些解决方案最大的优势在于它们是从头开始编写的,用于分析Hadoop中的数据。

  人们经常说好的软件需要10年时间来研发,SQL产品也不列外,特别是在查询优化方面,虽然Hadoop本身已经有10年的历史了,但是Hadoop产品上的大部分SQL都太年轻。这也是为什么许多专有的数据库产品都建立在巨人肩膀上的原因。例如,PostgreSQL派生的产品列表中包括的Greenplum、Netezza、ParAccel、Redshift和Vertica。

  专有解决方案

  在Hadoop中有专门使用SQL来查询数据的方法。

  其中的一些允许用户运行TDWI调用“SQL off Hadoop”,这需要Hadoop集群和一个单独的SQL引擎平台。在不同平台之间移动数据需要额外的费用,但有些人可能会认为将SQL工作负载从Hadoop集群中分离出来会带来好处,因此额外的费用也是值得的。

  基准测试

  基准测试可以作为来判断Hadoop选项上的替代SQL功能和性能的基本点。包括以下几点:

  1. AtScale:这是AtScale第二次SQL on Hadoop测试,明显看得出来,他们测试的开源产品有了大幅改进,更符合用户对新产品的期望,另一个发现是,产品对不同的查询都有优势和弱点,表明这还不是一个适合所有市场的产品。另外,基准使用了相对较小的TPC-H查询集,而这里列出的其他基准使用更新和更全面的TPC-DS查询集。

  2. Comcast对TPC-DS查询进行了基准测试,比较了不同的SQL on Hadoop产品。这也是比较不同文件格式性能的唯一基准。

  3. Kognitio TPC-DS查询设置了一个基准,包括所有的TPC-DS查询和并发测试。关于基准运行方式以及每个查询结果。

SQL on Hadoop 和 SQL off Hadoop 介绍

  基准测试过程中呈现出了一些共性:

  1. 开源产品在功能和性能方面正在得到显着改善。

  2. 许多开源产品不成熟,意味着它们无法运行所有的TPC-DS查询集,因为它们不支持所需的语法,或者会产生运行时错误。

  3. 某些产品(特别是SparkSQL和Presto)需要对并发性能进行调优。

  4. Hive本身非常缓慢(Comcast特别强调)。 Hive LLAP是一个重大的改进,尽管AtScale仍然把它排在Presto和Impala的后面。

  不再是“一刀切”

  只要在Hadoop集群上使用SQL on Hadoop解决方法,就可以找到适合的工具来工作。如果您已经有了Hive for ELT和其他批处理功能,但是无法满足将Hadoop中的数据连接到业务用户社区的需求,那么您可以使用不同的SQL on Hadoop解决方案来完成该任务,并保持当前 Hive工作负载到位。

0
相关文章