大数据领域必备工具之SQL

大数据领域必备工具之SQL

大数据领域快速发展,系统的进步在数据湖和数据仓库中更快地处理,有效分配和存储数据。这使得传统的关系数据库中的分析技术需大量迁移到大数据领域。 

SQL作为一种查询语言在高度分布式和可伸缩的大数据系统中的存在,这种转变并不像预期的那么困难。 

另一方面,也有工程师和分析师直接进入大数据领域。通用语言是高级的,是每个人的基本技能。

下面将一起来了解为什么SQL对那些从大数据开始事业或从传统RDBMS转向职业的人来说是必不可少的编程语言。广泛使用的SQL-on- hadoop引擎,在这些引擎中,SQL可以有效地用于数据转换和探索。

为什么要学习SQL

结构化查询语言(SQL)是一种广泛采用的声明性语言,它从关系数据库系统开始就存在了。

由于具有声明性,因此易于学习和理解,并且符合美国国家标准协会(ANSI)的标准。这意味着,除每个数据库提供的附录功能外,还在与ANSI兼容的数据库中维护SQL语句的基本结构。这也有助于更轻松地采用其他数据库

由于采用率很高,因此诸如Hadoop之类的大数据范例技术使SQL-on-Hadoop引擎运行在分析引擎之上。这些包括Hive,Impala和其他处理引擎。 

从就业能力的角度来看,SQL被认为是数据专业人员最重要的语言,而雇主则考虑那些通过项目证明了自己的技能的候选人。因此,SQL已成为数据专业人员的必然技能。

SQL-On-Hadoop引擎

以下开源SQL-On-Hadoop引擎在不同的Hadoop技术和大数据处理引擎上运行。如果精通SQL,那么这些工具应该很容易就能从基于分布式文件系统构建的数据湖和数据仓库中查询数据。 

为特定问题选择正确的SQL-On-Hadoop引擎可能非常困难。下面列出的每个引擎的解释可以帮助您做出决定。

hadoop上的sql引擎与其他软件通信

在Apache Spark上使用Spark SQL

在Apache Spark之上运行的SQL引擎是Spark SQL。Apache Spark 3.0.0以后的版本符合ANSI,因此用户可以利用Spark SQL的本机功能以及本机ANSI兼容的操作和功能,两全其美。更好的是,某些云服务提供商还提供火花分析引擎作为称为Databricks的PAAS(平台即服务)模型,该模型具有灵活的自动扩展功能,协作功能,并与云服务提供商耦合(例如AWS和Microsoft Azure)。

授权许可:开源Apache License (Spark),付费PAAS (Databricks)

数据格式:所有标准Hadoop文件格式-JDBC / ODBC,列格式(Parquet,ORC等),Hive表,对象存储格式(JSON),平面文件(CSV,TSV等)

关键要点: 

  • 如果您需要处理引擎来执行原始计算,执行机器学习以及对海量数据负载进行数字运算,则是最适合的选择。
  • 不建议使用低数据量。

Apache Drill

完全符合ANSI的大型并行处理引擎。Apache Drill的一个有趣的方面是,它负责连接到多个数据源,存储为JSON数据模型,并在检索到的数据之上执行聚合。还可以从Spark内运行Apache Drill来检索数据。

许可:开源Apache许可

数据格式: 所有标准Hadoop文件格式

关键要点:  

  • 由于符合ANSI SQL,具有很高的采用率。 
  • 适合同时查询多个来源的数据。 
  • 不适合机器学习和原始数据计算。 
  • 模式不需要定义。

Apache Hive上的HQL

Hive是Hadoop FileSystem之上的查询引擎,用户可以使用HQL(Hive查询语言)在Hive上进行查询。它是一种不完全符合ANSI的类似SQL的查询语言。Hive在数据之上进行批处理,这些数据都是在后台运行的Map-Reduce作业。

许可:开源Apache许可

数据位置:仅结构化格式

关键要点:  

  • 批处理相对较慢。
  • 不适合JSON等非结构化格式。
  • 不适合运行交互式查询。

Presto

Teradata现在支持由Facebook开发的开源并行处理Hadoop查询引擎。该查询引擎能够跨越多个数据源并执行交互式查询,这与能够进行批处理的Apache Hive不同。

许可: 开源Apache许可

数据位置:所有标准Hadoop文件格式

关键要点:  

  • 适用于交互式查询。
  • 如果是本地托管,则需要进行大量实验。

Apache Impala

Impala是另一个在Hadoop和HBase上进行交互式查询的大型并行处理查询引擎。Impala支持HQL,不像Hive,它不使用Map-Reduce,因此查询比Hive更快。

许可:开源Apache许可

数据位置:除ORC以外的所有标准Hadoop文件格式。

关键要点:  

  • 适用于交互式查询。
  • 适用于同时查询HDFS和HBase。
  • ORC支持尚未投入生产,因此Parquets比ORC更受青睐。

作者:Johnathan Martinez

免责声明:凡未注明来源或者来源为网络的信息均转自其它平台,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。网站只负责对文章进行整理、排版、编辑,不承担任何法律责任。若有侵权或异议请联系我们删除,谢谢。

发表评论

您的电子邮箱地址不会被公开。