对于那些在大数据领域开始职业生涯或从传统RDBMS转型的人来说,SQL是一种必不可少的编程语言 。
文章插图
介绍
大数据系统的最新进展实现了数据湖和数据仓库进行更快的处理、高效的分发和数据存储 。因此导致了传统关系数据库领域的分析技术向大数据领域的巨大迁移 。
由于SQL是大数据系统中的查询语言,这种转变并不像预期的那么困难 。
另一方面,一些工程师和分析师也开始逐渐涉足大数据领域 。SQL是大数据系统中的高级语言,对于每个人来说都是必不可少的技能 。
这篇文章将帮助您理解为什么SQL对于在大数据领域开始职业生涯或从传统RDBMS转型的人来说是一种必不可少的编程语言 。本文还将回顾Hadoop引擎上广泛使用的,可以有效地用于数据转换和探索的SQL语言 。
为什么要学习SQL
结构化查询语言(SQL)是一种广泛采用的声明性语言,自关系数据库系统开始以来就已经存在 。
由于具有声明性,因此易于学习和理解,并且符合美国国家标准协会(ANSI)的标准 。这意味着,除每个数据库提供的附录功能外,SQL语句的基本结构也可以使用ANSI的数据库进行维护,同时有助于使用其他数据库 。
由于SQL使用率很高,因此诸如Hadoop之类的大数据范例技术使SQL-on-Hadoop引擎运行在分析引擎之上 。其中包括蜂巢、黑斑羚和其他处理引擎 。
从就业能力的角度来看,SQL被认为是数据专业人员最重要的语言,因此,SQL已成为数据专业人员的必然技能 。
SQL-On-Hadoop
开源SQL-On-Hadoop引擎在不同的Hadoop技术和大数据处理引擎上运行 。如果精通SQL的话,那么这些工具应该很容易就能从基于分布式文件系统构建的数据湖和数据仓库中查询数据 。
为特定问题选择正确的SQL-On-Hadoop引擎可能非常困难 。以下针对每个引擎的说明列表可以帮助您确定
Spark SQL
在Apache Spark之上运行的SQL引擎是Spark SQL 。Apache Spark 3.0.0以后的版本符合是ANSI的,因此用户可以利用Spark SQL的本机特性以及本机ANSI兼容的操作和功能 。更好的是,一些云服务提供商还提供spark分析引擎作为PAAS(平台即服务)模型,称为Databricks,具有灵活的自动伸缩功能、协作功能,并与云服务提供商(如AWS和Microsoft Azure)耦合 。
许可: 开源Apache许可(Spark),付费PAAS(Databricks)
数据格式:所有标准Hadoop文件格式-JDBC / ODBC、列格式(Parquet、ORC等)、配置单元表、对象存储格式(JSON)、平面文件(CSV、TSV等)
关键要点:
- 如果需要处理引擎来执行原始计算、执行机器学习以及对海量数据负载进行数字运算,那么它是最合适的选择 。
- 不建议使用低数据量 。
Apache Dril是一个完全符合ANSI的大型并行处理引擎 。Apache Drill的一个有趣的方面是它负责连接到多个数据源,存储为JSON数据模型,并在检索到的数据之上执行聚合 。还可以从Spark中运行Apache Drill来检索数据 。
许可:开源Apache许可
数据格式:所有标准Hadoop文件格式
关键要点:
- 由于符合ANSI SQL,因此具有很高的采用率 。
- 适合同时查询多个来源的数据 。
- 不适合机器学习和原始数据计算 。
- 无需定义架构 。
Hive是Hadoop 文件系统上的查询引擎,用户可以使用HQL(Hive Query Language)在Hive上进行查询 。它是一种类似SQL的查询语言,不完全符合ANSI 。Hive对数据进行批处理,这些数据只不过是在后台运行的Map Reduce作业 。
许可: 开源Apache许可
数据位置:仅结构化格式
关键要点:
- 批处理相对较慢 。
- 不适合JSON等非结构化格式 。
- 不适合运行交互式查询 。
Teradata支持由Facebook开发的开源并行处理Hadoop查询引擎 。该查询引擎能够跨越多个数据源并执行交互式查询,这与能够进行批处理的Apache Hive不同 。
许可: 开源Apache许可
数据位置:所有标准Hadoop文件格式
关键要点:
- 适用于交互式查询 。
- 如果是本地托管,则需要进行大量实验 。
Impala是又一个大规模并行处理查询引擎,可以在Hadoop和HBase上进行交互式查询 。Impala支持HQL,与Hive不同,它不使用Map-Reduce,因此与Hive相比,查询速度更快 。
推荐阅读
- SQL 子查询优化详解
- CentOS 如何用rpm安装Mysql
- 茶王龙井烟多少钱盒,新昌大佛龙井价格多少钱斤级龙井的价格最新详情
- 中国品牌十大菊花,中国十大名茶及关知识
- 大花飞燕草卫士,飞燕草和大花飞燕草区别
- 中国四大道教名山是哪四座?
- 全国儿童故事大王比赛一等奖视频?小学生故事大王比赛一等奖
- 萝卜炖排骨的做法大全 萝卜炖排骨怎么做好吃
- 十大江西美食排名
- 红烧大排的家常做法 红烧大排的做法