首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Apache Pig

What is Pig Apache Pig是MapReduce的一个抽象,它是一个工具/平台(所以说它并不完全是一门语言),用于分析较大数据集,并将其表示为数据流; Pig通常与Hadoop一起使用,...使用Pig进行数据处理、分析时,需要使用其提供的Pig Latin脚本语言编写相应脚本,这些脚本执行时会被转换为Map和Reduce任务(类似Spark),Pig Engine组件接受Pig Latin...脚本为输入,并转换为作业; Why Pig 可以把Pig看作是SQL,相对于java等高级语言来说,它的功能更加简单直接,更容易上手,同时又不像直接写MapReduce程序那样考虑太多分布式相关内容,因此...Pig是一种较为适中的用于在分布式集群上进行作业编写的脚本语言; Component in Pig Parser:解析Pig脚本,检查其语法以及其他杂项,输出有向无环图DAG,其中运算符为节点,数据流为边...Grunt Shell:以交互式的方式运行Pig代码,类似python shell; Script:以脚本方式运行Pig代码,类似python脚本; UDF:嵌入java等语言使用; Grunt Shell

80920

Apache Pig如何与Apache Lucene集成

在文章开始之前,我们还是简单来回顾下Pig的的前尘往事: 1,Pig是什么?...Pig最早是雅虎公司的一个基于Hadoop的并行处理架构,后来Yahoo将Pig捐献给Apache(一个开源软件的基金组织)的一个项目,由Apache来负责维护,Pig是一个基于 Hadoop的大规模数据分析平台...,它提供的SQL-like语言叫Pig Latin,该语言的编译器会把类SQL的数据分析请求转换为一系列经过优化处理的MapReduce运算。...2,Pig用来干什么? 要回答这个问题,还得回归到雅虎当初使用Pig的目的: 1)吸收和分析用户的行为日志数据(点击流分析、搜索内容分析等),改进匹配和排名算法,以提高检索和广告业务的质量。...,Pig版本是否兼容?)。 (3)使用ant重新打包成jar (4)在pig里,注册相关依赖的jar包,并使用索引存储 下面给出,散仙的测试的脚本: 1.

1.1K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Apache Pig的前世今生

    最近,散仙用了几周的Pig来处理分析我们网站搜索的日志数据,感觉用起来很不错,今天就写篇笔记介绍下Pig的由来,除了搞大数据的人,可能很少有人知道Pig是干啥的,包括一些是搞编程的,但不是搞大数据的,还包括一些既不是搞编程的...,也不是搞大数据的,而是从事其他行业的朋友,所以很有可能望文生义,一看标题,就乐了,心里就开始默默的翻译了===》 Apache 猪的笔记,看起来Apache的猪,比较厉害啊,都能写笔记了。...Pig最早是雅虎公司的一个基于Hadoop的并行处理架构,后来Yahoo将Pig捐献给Apache(一个开源软件的基金组织)的一个项目,由Apache来负责维护,Pig是一个基于 Hadoop的大规模数据分析平台...最后告诉大家一个好消息,在最新的Pig(0.14)发行版里,有两个重要的特性: (1)支持Pig运行在Tez上 (2)支持Orc格式的存储 如果你已经迫不及待想了解Pig了,那么请不要客气,直接点击...Pig官网链接http://pig.apache.org/,里面有很全,很丰富的介绍和学习资料等着你的加入!

    1.7K60

    Apache Pig学习笔记(二)

    主要整理了一下,pig里面的一些关键词的含义和用法,pig虽然是一种以数据流处理为核心的框架,但数据库的大部分关键词和操作,在pig里面基本上都能找到对应的函数,非常灵活与简洁,春节前的最后一篇文章了,...1,pig里所有的保留关键字: -- A assert, and, any, all, arrange, as, asc, AVG -- B bag, BinStorage, by, bytearray...matches, MAX, MIN, mkdir, mv -- N not, null -- O onschema, or, order, outer, output -- P parallel, pig...里面的存储结果的函数,可以将一个集合以指定的存储方式,存储到指定的地方 26,stream,提供了以流的方式可以在pig脚本中,与其他的编程语言交互,比如将pig处理的中间结果,传给python,perl...脚本中,使用imprt关键词引入另外一个pig脚本

    1.1K90

    Apache Pig入门学习文档(一)

    4,Pig的属性值管理 5,Pig一些注意事项 1,Pig的安装 (一)软件安装 必须配置: (1)hadoop 下载地址: http://hadoop.apache.org/common...注意以下几点: 1,下载最近的而且是稳定版本的Apache Pig 2,然后解压下载Pig,注意下面二点: pig的主脚本文件,pig位于bin目录(/pig.n.n.n/bin/pig...help命令 (三):编译Pig 1,从svn导入pig的源代码 svn co http://svn.apache.org/repos/asf/pig/trunk 2,进入...分割查询字符串组成一个words 上面的这些UDF是一些比较典型的例子,散仙建议初学者可以先看一看,看不懂也无所谓,UDF使用的几率也不是特别大,最重要的还是基础语法的使用,关于配置环境的安装,如果你用的是原生的Apache...Hadoop,则按照上面的步骤来,是非常有效的,因为这个文档,就是参照apache官方的文档翻译的,英文好的,可以直接点击这个链接http://pig.apache.org/docs/r0.12.0/

    1.3K51

    Apache Pig和Solr问题笔记(一)

    记录下最近两天散仙在工作中遇到的有关Pig0.12.0和Solr4.10.2一些问题,总共有3个,如下: (1)问题一: 如何在Pig中使用ASCII和十六进制(hexadecimal)的分隔符进行加载...注意关于这个问题,在Pig中,会反应到2个场景中, 第一: 在Pig加载(load)数据时候 。 第二: 在Pig处理split,或则正则截取数据的时候。...by len; --统计各个长度下的数量 c = foreach b generate group, COUNT($1); --输出打印 dump c; (2)问题二:如何在Apache...INFO - 2015-04-01 21:08:36.101; org.apache.solr.core.SolrCore; SolrIndexSearcher has not changed - not...re-opening: org.apache.solr.search.SolrIndexSearcher INFO - 2015-04-01 21:08:36.102; org.apache.solr.update.DirectUpdateHandler2

    1.3K60

    Apache Pig学习笔记之内置函数(三)

    1 简介 Pig附带了一些的内置函数,这些函数包括(转换函数,加载和存储函数,数学函数,字符串函数,以及包和元组函数),在Pig里面主要有二种函数分别是内置函数和自定义的UDF函数,他们区别在于 第一...:内置函数不需要被注册,因为Pig本身知道他们在哪里 第二:内置函数不需要定义引用路径,因为Pig本身知道在哪里能找到他们 2 动态调用 Java里面已经存在大量的工具类库,那么在Pig里面,我们也可以通过反射来灵活的定义某一类你需要用到的函数...4 加载/存储函数 Load和store函数决定了数据怎样加载到pig里和怎么从pig里输出,pig提供了一系列load和store函数,当然你可以通过udf函数重写你自己定制的加载和存储函数。...4.1 处理压缩 压缩的支持是通过pig的加载和存储函数来决定的 PigStorage和TextLoader支持gzip和bzip压缩包括读和写,BinStorgae不支持压缩,为了处理gzip压缩的文件...Pig能够正确的读取和写入压缩文件,只要原始文件是正确的压缩方式,如果仅仅修改后缀或起个后缀名为.gz或.bz那么是不正确的方式,例子: 4.2 BinSotrage 能够加载和存储机器可读的格式

    1.8K40

    使用 Apache PIG 统计积累型数据的差值

    现在要求使用PIG来统计某个时间段(1 hour)内,多个进程此项数据的变化量汇总。可以看到数据形如以下形式。进程会通过GrpID分组,每个组内有多个进程,需要计算的是各组VALUE值的总的变化量。...但如果需要用PIG任务来写,第3个步骤就没有这么容易实现了。不过好在PIG脚本可以调用其他语言编写的UDF(User Define Function)来完成某些复杂的计算逻辑,我们就采用此种方案。...如何使用Jython实现PIG UDF请参考官方文档 https://pig.apache.org/docs/r0.9.1/udf.html 先来看PIG脚本代码: REGISTER 'pycalc.../pig-0.16.0/thirdparty/KVLoader-0.5.1.jar A = LOAD 'data.log' USING com.tencent.gdata.pig.KVLoader('...lost_pkg_cnt; H = FILTER G BY lost_pkg_cnt is not null; STORE H INTO '/pigtest/test.result.7' USING org.apache.pig.piggybank.storage.DBStorage

    89320

    Pig在风暴中飞驰——Pig On Storm

    2Pig On Storm的实现 2.1 Pig On Storm VS Hive On StormPig和Hive对开发人员分别提供Pig Latin和Hive SQL编程语言,Hive SQL跟标准的...2.3 Pig On Storm编译Pig代码流程 1) IDE编辑书写Pig脚本:用户在支持Pig语法高亮的IDE中,根据业务实际需求书写Pig脚本,每一个Pig语句独占一行。...包含Foreach、Window、Partition、Filter、Tap、Stream等运算符,兼容Apache Pig语法。...2.4Pig On Storm编码示例 以经典的Word Count为例,使用Apache开源的Pig Latin编写的程序为: a = load '/user/hue/word_count_text.txt...Pig On Storm在语法上兼容Pig Latin(Pig On Storm仅对Pig Latin进行了少量的扩展),因此对于有Pig开发经验的程序员几乎是零学习成本;由于Pig Latin语法简单

    835100

    玩转大数据系列之Apache Pig高级技能之函数编程(六)

    已总结Pig系列的学习文档,点击末尾处,阅读原文即可查看所有,希望对大家有用,感谢关注!...在Hadoop的生态系统中,如果我们要离线的分析海量的数据,大多数人都会选择Apache Hive或Apache Pig,在国内总体来说,Hive使用的人群占比比较高, 而Pig使用的人相对来说,则少的多...,这并不是因为Pig不成熟,不稳定,而是因为Hive提供了类数据库SQL的查询语句,使得大多人上手Hive非常容易,相反而Pig则提供了类Linux shell的脚本语法,这使得大多数人不喜欢使用。...Pig作为类shell的语言,也支持了函数的方式,封装某个功能,以便于我们重用,这一点相比Hive来说,是一个很好的优势。...下面先看下定义Pig函数(也叫宏命令)定义的语法: DEFINE (macros) : 支持的参数: alias pig的标量引用 整形(integer) 浮点型(float) 字符串(

    82930

    Apache Pig如何通过自定义UDF查询数据库(五)

    ok,业务上的分析大致如此,下面就看下,技术上如何实现,其实就是需要Pig的一个自定义UDF函数,在遍历每一行的recoder时,去查询oracle只读库,获取gmv的值,并将最终结果存储起来,以图形化方式展示...Pig里面对UDF函数非常丰富,比较常用的是转化函数和加载存储函数,这一点在Hive里,也是如此,之前的文章中,散仙介绍过,通过自定义UDF将pig分析的结果直接存储到数据库或索引中,便于检索和发挥不同框架之间的组合优势...核心代码如下: Java代码 package com.pig.dhgate.getgvmbyrfxno; import java.io.IOException; import...org.apache.pig.EvalFunc; import org.apache.pig.data.Tuple; import org.slf4j.Logger; import...最后来看下如下在pig脚本里,使用自定义的函数: (1)使用ant打包自定义的udf函数的jar (2)在pig脚本里,注册相关的jar包,注意如果有依赖关系,依赖的jar包,也需要注册,例如本例中的

    1.1K40
    领券