大数据主流工具,你知道几个?

导读:大数据时代,我们有很多的查询工具可以选择。虽然SQL占据着绝对优势,但是随着大数据的持续升温,也给了Apache Pig和Hive很大的发挥空间。工欲善其事必先利其器,如果选择了合适的平台和语言,会让数据的提取,处理和分析达到事半功倍的效果。未来,处理速度快和操作简单必定成为大数据分析的主流趋势。 来源:大数据观察

业内有这样一种说法,SQL虽然在大数据分析领域久经考验,但是无奈长江后浪推前浪,和炙手可热的Hadoop相比,SQL已经过时了。这个说法有点言过其实,现在很多的项目都是将Hadoop作为数据存储,然后利用SQL进行前端查询。这说明Hadoop需要一种高级查询语言的支持。 Hadoop MapReduce虽然能够进行数据分析,但是太复杂了。于是,开发人员开发出了类似SQL的Pig和Hive。

大数据时代,我们有很多的查询工具可以选择。虽然SQL占据着绝对优势,但是随着大数据的持续升温,也给了Apache Pig和Hive很大的发挥空间。工欲善其事必先利其器,如果选择了合适的平台和语言,会让数据的提取,处理和分析达到事半功倍的效果。未来,数据会越来越大,数据分析必须要更易操作。处理速度快和操作简单必定成为大数据分析的主流趋势。

Apache Pig,Apache Hive和SQL是当今主流的大数据工具。它们各有优势,下面我们就先来简单介绍Apache Pig、Apache Hive和SQL。 SQL

结构化查询语言(SQL)是程序员的最佳伴侣,主要用于处理和提取数据。大数据改变了数据处理和可视化的方式。但是SQL严格的关系数据库模式和声明特性依然是数据分析的标杆。尽管SQL市场广阔,但是大数据也对SQL的功能和性能提出了挑战。

Pig Apache Pig适合有SQL背景的程序员学习,其有以下两个特点: 1.放宽了对数据存储的要求 2.可以操作大型数据集 Apache Pig是雅虎在2006年开发,除了上述特点,它还有很好的可扩展性和性能优化。 Apache Pig允许开发人员跟踪多个查询方法,从而降低了数据的重复检索。它支持复合数据类型(Map、Tuple、Bag),支持常见的数据操作,例如筛选、排序和Join。Apache Pig的这些特性得到了世界各地用户的认可,就连雅虎和推特也采用了Apache Pig。 Hive 尽管Apache Pig性能优异,但是它要求程序员要掌握SQL之外的知识。Hive和SQL非常相似,虽然Hive查询语言(HQL)有一定的局限性,但它仍然是非常好用的。Hive为MapReduce提供了很好的开源实现。它在分布式处理数据方面表现很好,不像SQL需要严格遵守模式。 数据的提取、处理和分析没有一个万全之策,需要综合多种因素来选择,例如数据存储方法,编程语言结构以及预期的结果。下面我们就来对比一下Pig、Hive和SQL,看看它们各自都适合什么样的场景。

Pig VS SQL SQL在DBMS系统的运行速度要比MapReduce(Pig运行在PigLatin平台)快。然而,RDBMS的数据加载很具挑战,设置困难。 PigLatin在声明式执行计划、ETL流程和管道修改方面更有优势。 在很大程度上,SQL是声明式语言,而PigLatin是过程语言。SQL主要是指定完成的对象,即要完成“什么”,而Pig主要是制定完成的方式,即“如何”执行一个任务。在执行之前,Pig脚本要转化成MapReduce任务。不过,Pig脚本比相应的MapReduce任务要短,显著缩短了开发时间。 Hive VS SQL SQL是一个被广泛用于事务性和分析查询的通用数据库语言。而Hive是以数据分析为目标而设计的,这也决定了Hive会缺少更新和删除功能,但是读取和处理海量数据的能力会很强。Hive和SQL是非常相似的,最主要的区别就是Hive缺少更新和删除功能。

尽管Hive和SQL有所区别,但是如果你有SQL背景,就可以平稳过渡到Hive。另外,一定要注意两者在结构和语法上的差异。 相信大家通过上面对Pig、Hive和SQL的介绍,对它们都有了一定的了解,下面我们就来介绍一下它们的具体适用场景。

Apache Pig的适用场景 Apache Pig适用于非结构化的数据集,可以充分利用SQL。Pig无需构建MapReduce任务,如果你有SQL学习的背景,那么入门会非常快。 Apache Hive的应用场景 很多企业都需要对历史数据进行分析,Hive就是一款分析历史数据的利器。但是Hive只有在结构化数据的情况下才能大显神威。Hive的软肋是实时分析,如果想要进行实时分析,可以采用HBase。

SQL的应用场景 SQL是三者之中资历最老的数据分析工具,随着用户需求的不断变更,SQL也在不断的自我更新,现在仍然是一个与时俱进的工具。对专业的数据分析师来说,毫无疑问,SQL比Excel要强,但是,它在快速处理和分析数据方面仍然存在着短板。如果数据要求不是很苛刻,SQL是一个很好的选择,它的广泛性和灵活性得到了开发人员的认可。因为绝大数的开发人员都熟悉SQL,所以可以马上上手,同时SQL还提供了一些扩展和优化功能,可以根据需求来定制产品。 现在还没有任何一个工具可以适用所有的数据,SQL、Pig和Hive都有各自的适用场景,所以适合自己应用场景的工具就是最好的工具。

原文发布于微信公众号 - 钱塘大数据(qtbigdata)

原文发表时间:2016-08-08

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏挖掘大数据

Hadoop的正确打开方式

关于 Hadoop 所谓的消亡,以及它跌落神坛的报道数不胜数。有很多人放马后炮说,Hadoop 从一开始就没有意义。还有人说“Hadoop 对于小型,临时的工作...

24090
来自专栏ATYUN订阅号

Cloudera宣布更新一系列机器学习产品,为数据团队提速

软件公司Cloudera今天在Strata Data伦敦会议上宣布了一系列机器学习产品更新:Cloudera Data Science Workbench 1....

13230
来自专栏CSDN技术头条

对比Pig、Hive和SQL,浅看大数据工具之间的差异

【编者按】在笔者看来,语言和工具之争从来都没有太大的意义,所谓存在既有道理,如何在场景下做出最合适的选择才至关重要。本文,DeZyre公司专家Manisha N...

53680
来自专栏祝威廉

用机器学习流程去建模我们的平台架构

spark.ml 在一开始就提出了五个概念。这五个概念也完全可以对一个通用的service platform进行建模和抽象。我们来看看。

9210
来自专栏腾讯大数据的专栏

飞起来的大象-Hadoop从离线到在线

时代在变迁,市场在变化,周边的软硬件环境也突飞猛进般的发展,同时企业的业务需求也不断升级,从规模到成本都有较高的要求,这刺激Hadoop生态圈的变革。据AMR研...

29480
来自专栏恰童鞋骚年

Hadoop学习笔记系列文章导航

  这是一个信息爆炸的时代。经过数十年的积累,很多企业都聚集了大量的数据。这些数据也是企业的核心财富之一,怎样从累积的数据里寻找价值,变废为宝炼数成金成为当务之...

9120
来自专栏鸿的学习笔记

Shark,Spark SQL,Spark上的Hive以及Apache Spark上的SQL的未来

随着Spark SQL和Apache Spark effort(HIVE-7292)上新Hive的引入,我们被问到了很多关于我们在这两个项目中的地位以及它们与S...

12920
来自专栏腾讯大数据的专栏

一文教你看懂大数据的技术生态圈 Hadoop,hive,spark

大数据本身是个很宽泛的概念,Hadoop生态圈(或者泛生态圈)基本上都是为了处理超过单机尺度的数据处理而诞生的。你可以把它比作一个厨房所以需要的各种工具。锅碗...

29950
来自专栏钱塘大数据

【推荐阅读】系统性解读大数据处理框架

微信后台回复:“框架”,获取高清图片 前言 说起大数据处理,一切都起源于Google公司的经典论文:《MapReduce:Simplied Data Proce...

36880
来自专栏CDA数据分析师

嫌弃Hadoop?可能是你的打开方式有问题

原作者 Andrew Brust 编译 CDA 编译团队 本文为 CDA 数据分析师原创作品,转载需授权 关于 Hadoop 所谓的消亡,以及它跌落神坛的报...

21490

扫码关注云+社区

领取腾讯云代金券