Pig Latin:数据流编程语言
一个Pig Latin程序是相对于输入的一步步操作。其中每一步都是对数据的一个简单的变换。
用Pig Latin编程更像在RDBMS中“查询规划器”(query planner)这一层对数据进行操作,查询规划器决定了如何将描述型语句转化为一系列系统化执行的步骤。
Pig对它所处理的数据要求则宽松得多;可以在运行时定义模式,而且这是可选的。本质上,Pig可以在任何来源的元组上进行操作。(当然数据源必须支持并行的读操作,例如存放在多个文件中)。它使用UDF(User define feature)从原始格式中读取元组。最常用的输入格式使用制表符分隔的字段组成的文本文件。Pig为这种输入提供了内置加载函数。和传统的数据库不同,Pig并不提供专门的数据导入过程将数据加载到RDBMS。在第一步处理中,数据是从文件系统(通常是HDFS中加载的)。
Pig对复杂、嵌套数据结构的支持也使其不同于处理平面数据类型的SQL。Pig的语言能和UDF及流式操作紧密集成。它的这一能力及其嵌套数据结构,使Pig Latin比大多数SQL的变种具有更强的定制能力。
不支持在线和低时延查询,不支持事务和索引。
不支持随机读和随机写。
和MapReduce一样,所有的写都是批量的,流式的写操作。
Pig相比Hive相对轻量,它主要的优势是相比于直接使用Hadoop Java API可大幅减少开发量。
SQL:描述性编程语言
SQL是一个约束的集合,这些约束结合在一起,定义了输出。
RDBMS把数据存储在严格定义了模式的表内。
HIVE
HIVE介于Pig和传统的RDBMS之间,和Pig一样,Hive也被设计为HDFS作为存储,但是他们之间有着显著的区别。Hive的查询语言HiveQL,是基于SQL的。任何熟悉SQL的人都可以轻松使用HiveQL写查询。和RDBMS相同。Hive要求所有数据必须存储在表中,表必须有模式,而模式由Hive进行管理。但是Hive允许为预先存在于HDFS的数据关联一个模式。所以,数据的加载步骤是可选的。
和Pig一样,Hive也不支持低时延查询。
------------------------------------------------------------------------------------
以下转自http://book.douban.com/annotation/17153277
对于开发人员,直接使用Java APIs可能是乏味或容易出错的,同时也限制了Java程序员在Hadoop上编程的运用灵活性。于是Hadoop提供了两个解决方案,使得Hadoop编程变得更加容易。
也可以封装pig脚本
相关推荐
hadoop组件之一-mapreduce脚本编程--pig编程指南 hadoop组件之一-mapreduce脚本编程--hive编程指南
分享一下Hadoop、HBase、Hive、Pig、Zookeeper相关资料。
Pig Hive 对比分享, Pig HCatalog 元数据组合使用
Average_Flight_Delay_Per_Month :计算给定日期范围内(Plain Map Reduce vs Apache Pig)一对出发地和目的地之间所有两航段航班的平均延迟。 Airline_Monthly_Delay_Pattern :计算每个航空公司的每月延误模式...
经典大作 hadoop the definitve guide programming hive programming pig
计算机专业基础理论电子书合集12----hive,pig hive,pig 权威指南以及其他资料合集
mapreduce方式入库hbase hive hdfs,速度很快,里面详细讲述了代码的编写过程,值得下载
Pig、Hive 和 Hadoop,提供对通过它们运行 Map-Reduce 作业的基本了解。 除了我希望说明比较猪VERSUS Hadoop是相当浅,与每一个经过realease的方式既由合作越来越多。 但是,如果我们要提供一个浅薄的区别,它将遵循...
HIVE在腾讯分布式数据仓库实践分享 ...bigtable,hive,pig.pdf HIVE优化以及执行原理.pdf hive实现原理-weib.pdf 【Hive】Hap Data Warehusing with Hive Presentatin - Cnreillym.pdf 【Hive】Beekeeping Fr All.pdf
Hive中SQL详解 Hive是一个基于Hadoop构建的数据仓库分析系统,它提供了丰富的SQL查询方式来分析存储在Hadoop分布式文件系统中的数据...Hive是一个功能强大且灵活的数据仓库分析系统,广泛应用于大数据处理和分析领域。
此处根据一些参数对 hive 和 pig 进行了比较。 经过比较,发现蜂巢比猪表现更好。 Hadoop MapReduce 和 Spark 的主要区别在于处理方式。 Spark 能够在内存中执行此操作。 但是,Hadoop MapReduce 需要读取和写入...
大数据系列-Hive入门与实战 Hive 是什么? ---------------- ...同时,Hive 的安装、开发和使用都需要了解 Hive 的基本概念和语法,需要掌握 Hive 的设计特征、体系结构、用户接口、应用场景等知识。
hadoop,hive,pig,zookeeper,hbase,hdfs
Hive和Pig都可以与HBase组合使用,Hive和Pig还为HBase提供了高层语言支持,使得在HBase上进行数据统计处理变的非常简单Hive VS HB
胶水适用于Hadoop,Hbase,Netezza,Pig,Hive的BigData工作流引擎...介绍有关详细的介绍,请参见 Glue是大数据的工作流引擎,支持多种语言,例如: Groovy Clojure 吉顿RubyScala例子 ; clojure( def lines ( ctx-...
NULL 博文链接:https://ainn2006.iteye.com/blog/1733917
Hadoop大数据处理讲义-C10. Hive_Pig.pdf
Google Cloud Dataproc系统还包括许多基于Hadoop构建的应用程序,例如Hive,Mahout,Pig,Spark和Hue。 任务1 –从Stack Exchange获取数据访问网站 我们希望根据观看次数获得前200,000个帖子。 Stack Exchange SQL...
Pig运行在Hadoop上,是对大型数据集进行分析和评估的平台。它简化了使用Hadoop进行数据分析的要求,提供了一个高层次的、面向领域的抽象语言:PigLatin。...和Hive一样,Pig降低了对大型数据集进行分析和评估的门槛。