
pig
三劫散仙
唯有学习,可以解忧
展开
-
Apache Pig的前世今生
最近,散仙用了几周的Pig来处理分析我们网站搜索的日志数据,感觉用起来很不错,今天就写篇笔记介绍下Pig的由来,除了搞大数据的人,可能很少有人知道Pig是干啥的,包括一些是搞编程的,但不是搞大数据的,还包括一些既不是搞编程的,也不是搞大数据的,而是从事其他行业的朋友,所以很有可能望文生义,一看标题,就乐了,心里就开始默默的翻译了===》 Apache 猪的笔记,看起来Apache的猪,比较厉害原创 2015-01-07 21:30:50 · 763 阅读 · 0 评论 -
Apache Pig学习笔记之内置函数(三)
[img]http://dl2.iteye.com/upload/attachment/0105/3491/7c7b3bef-0dda-3ac6-8cdb-1ecc1dd9c194.jpg[/img]1 简介Pig附带了一些的内置函数,这些函数包括(转换函数,加载和存储函数,数学函数,字符串函数,以及包和元组函数),在Pig里面主要有二种函数分别是内置函数和自定义的UDF函数,他们区别...2015-03-03 19:53:25 · 331 阅读 · 0 评论 -
玩转大数据系列之Apache Pig如何与Apache Lucene集成(一)
[img]http://dl2.iteye.com/upload/attachment/0105/3491/7c7b3bef-0dda-3ac6-8cdb-1ecc1dd9c194.jpg[/img][b][color=green][size=large]在文章开始之前,我们还是简单来回顾下Pig的的前尘往事:1,Pig是什么?Pig最早是雅虎公司的一个基于Hadoop的并行处...2015-03-05 21:54:11 · 225 阅读 · 0 评论 -
玩转大数据系列之Apache Pig如何与Apache Solr集成(二)
[b][color=olive][size=large]散仙,在[url=http://qindongliang.iteye.com/blog/2189208]上篇文章[/url]中介绍了,如何使用Apache Pig与Lucene集成,还不知道的道友们,可以先看下上篇,熟悉下具体的流程。在与Lucene集成过程中,我们发现最终还要把生成的Lucene索引,拷贝至本地磁盘,才能提供检索服务,这...原创 2015-03-06 21:52:28 · 178 阅读 · 0 评论 -
玩转大数据系列之Apache Pig如何与MySQL集成(三)
[b][color=green][size=large]上篇介绍了如何把Pig的结果存储到Solr中,那么可能就会有朋友问了,为什么不存到数据库呢? 不支持还是? 其实只要我们愿意,我们可以存储它的结果集到任何地方,只需要重写我们自己的StoreFunc类即可。关于如何将Pig分析完的结果存储到数据库,在pig的piggy贡献组织里,已经有了对应的UDF了,piggybank是非apach...2015-03-07 19:43:33 · 221 阅读 · 0 评论 -
玩转大数据系列之如何给Apache Pig自定义存储形式(四)
Pig里面内置大量的工具函数,也开放了大量的接口,来给我们开发者使用,通过UDF,我们可以非常方便的完成某些Pig不直接支持或没有的的功能,比如散仙前面几篇文章写的将pig分析完的结果,存储到各种各样的介质里面,而不仅仅局限于HDFS,当然,我们也可以在都存。那么如何实现自己的存储UDF呢? 提到这里,我们不得不说下pig里面的load和store函数,load函数是从某个数据源,...2015-03-07 20:35:21 · 232 阅读 · 0 评论 -
玩转大数据系列之Apache Pig如何通过自定义UDF查询数据库(五)
[img]http://dl2.iteye.com/upload/attachment/0106/4064/e8d55c72-f37b-388e-b3b1-9b2e0c0eb326.jpg[/img]GMV(一定时间内的成交总额)是一个衡量电商网站营业收入的一项重要指标,例如淘宝,京东都有这样的衡量标准,感兴趣的朋友可以自己科普下这方面的概念知识。当然散仙今天,并不是来解释概念的,...2015-03-12 21:06:00 · 199 阅读 · 0 评论 -
Apache Pig字符串截取实战小例子
[b][color=olive][size=large]记录一个Pig字符串截取的实战小例子:需求如下,从下面的字符串里提取出第2列(冒号后面)的值:[/size][/color][/b][code="java"]1 2 3 4a:ab#c#da:c#c#da:dd#c#da:zz#c#d[/code][b][color=olive][size=l...2015-03-13 17:23:12 · 185 阅读 · 0 评论 -
玩转大数据系列之Apache Pig高级技能之函数编程(六)
[b][color=red][size=x-large]原创不易,转载请务必注明,原创地址,谢谢配合! [url]http://qindongliang.iteye.com/[/url][/size][/color][/b][b][color=green][size=large]Pig系列的学习文档,希望对大家有用,感谢关注散仙![url=http://qindonglia...2015-03-18 21:57:32 · 162 阅读 · 0 评论 -
Pig使用问题总结
[b][color=black][size=large]1,如果是a::tags#'pic'作为参数,传递给另一个函数方法,需要转义多次,二次调用函数,就是这个方法里,又调用了其他方方法,参数也是层层传递,需要转义两次,尤其是map里的函数,C1 = two_use_cart_filter_by_clkloc_distinct_vid_and_ic(C,0,2,'vid','cvi...2015-03-29 18:39:23 · 412 阅读 · 0 评论 -
Apache Pig和Solr问题笔记(一)
[b][color=green][size=large]记录下最近两天散仙在工作中遇到的有关Pig0.12.0和Solr4.10.2一些问题,总共有3个,如下:(1)问题一: 如何在Pig中使用ASCII和十六进制(hexadecimal)的分隔符进行加载,和切分数据?注意关于这个问题,在Pig中,会反应到2个场景中,第一: 在Pig加载(load)数据时候 。第二: 在P...2015-04-02 13:35:36 · 213 阅读 · 0 评论 -
Hadoop2.2如何集成Apache Pig0.12.1?
[b][color=green][size=large]散仙假设你的Hadoop环境已经安装完毕(1)到[url]https://archive.apache.org/dist/pig/[/url]下载对应的tar包,如果是hadoop0.20.x之前的版本,则直接可以用,如果Hadoop2.x之后的,则需要重新编译,在pig的根目录下执行如下命令:[/size][/c...2015-05-01 16:48:20 · 153 阅读 · 0 评论 -
Pig配置vim高亮
[b][color=green][size=large](1)下载文末上传的压缩包,上到对应的linux机器上,并解压(2)执行mkdir -p ~/.vim/syntax/创建目录执行mkdir -p ~/.vim/ftdetect/创建目录(3)执行cp -a pig.vim-master/syntax/pig.vim ~/.vim/syntax/ ...2015-05-01 17:14:55 · 160 阅读 · 0 评论 -
CDH-Hadoop2.6+ Apache Pig0.15安装记录
1,使用CDH的hadoop里面有对应的组件Pig,但版本较低,所以放弃使用了,直接下载Apache Pig0.15最新的版本(支持Tez,比Hive更容易集成)下载地址:http://archive.apache.org/dist/pig/pig-0.15.0/pig-0.15.0.tar.gz直接下载二进制包即可2,配置Pig的环境变量如下:#Pigexport...2015-06-26 20:06:27 · 194 阅读 · 0 评论 -
Pig0.15集成Tez,让猪飞起来
1,Tez是什么?Tez是Hortonworks公司开源的一种新型基于DAG有向无环图开源计算框架,它可以将多个有依赖的作业转换为一个作业从而大幅提升DAG作业的性能,看下面一张图,就能说明问题:[img]http://dl2.iteye.com/upload/attachment/0109/8291/deecec28-5948-3b2f-aaf7-b3218de915...2015-06-29 19:45:57 · 263 阅读 · 0 评论 -
Apache Pig的UDF返回值问题
[size=medium]今天写了关于Pig的EvalFunc UDF函数,结果一执行,发现返回值,总是bag类型,我就纳闷了,我明明指定了返回是String类型,怎么会变成Bag类型呢?经查找,发现拷贝的问题,由于先前写的UDF函数,返回值是多个,而现在的这个是一个,所以导致,我在pig脚本里面,进行强转string类型出错,发现问题后,设置返回类型为DataType.CHARARRAY...2015-11-11 16:34:01 · 371 阅读 · 0 评论 -
Apache Pig中如何使用Replace函数
[size=medium]今天分享一个小案例,介绍下需求,判断某个网站的前缀,并给其打上特定的标签值:一个java代码例子如下:[/size][code="java"] public String getTag(){ //url文本 String url="http://www.baidu.com.cn"; ...2015-11-17 18:48:47 · 361 阅读 · 0 评论 -
Bug死磕之hue集成的oozie+pig出现资源任务死锁问题
[size=medium]这两天,打算给现有的Apache Hadoop2.7.1的集群装个hue,方便业务人员使用hue的可视化界面,来做一些数据分析任务,这过程遇到不少问题,不过大部分最终都一一击破,收获经验若干,折腾的过程,其实也是一个学习的过程,一个历练的过程,我相信优秀的人,都是经历过无数磨难成就的,并且有着坚持不放弃的心态,迎接各种挑战,如果你总是遇到困难就放弃,那么你永远也不...2016-01-14 15:52:55 · 327 阅读 · 0 评论 -
Apache Pig学习笔记(二)
[img]http://dl2.iteye.com/upload/attachment/0105/3491/7c7b3bef-0dda-3ac6-8cdb-1ecc1dd9c194.jpg[/img]主要整理了一下,pig里面的一些关键词的含义和用法,pig虽然是一种以数据流处理为核心的框架,但数据库的大部分关键词和操作,在pig里面基本上都能找到对应的函数,非常灵活与简洁,春节前的最后一篇文...2015-02-13 19:23:06 · 184 阅读 · 0 评论 -
你有一个好的归档习惯吗?
[b][color=green][size=large]备忘和扯一扯最近散仙在工作用到的几个不错的小技术点:(1)使用shell写了一个根据年份能生成此年份下归档文件目录,精确到年-月-日-小时谈谈本意:由于散仙最近是在搞我们平台的搜索日志分析的工作,日志记录的数据是存在我们的Hadoop集群的HDFS上,日志记录的形式,自然也是按照年月日小时这样一个目录存储的,至于为啥这么设计,...2015-02-11 22:01:00 · 649 阅读 · 0 评论 -
Apache Pig入门学习文档(一)
1,Pig的安装 (一)软件要求 (二)下载Pig (三)编译Pig2,运行Pig (一)Pig的所有执行模式 (二)pig的交互式模式 (三)使用pig脚本执行模式3,Pig Latin语句的声明 (一)加载数据 (二)使用和处理数据 (三)存储中间数据 (四)存储最终数据 (五)调试Pig ...2015-01-20 20:28:10 · 237 阅读 · 0 评论 -
5行代码怎么实现Hadoop的WordCount?
初学编程的人,都知道hello world的含义,当你第一次从控制台里打印出了hello world,就意味着,你已经开始步入了编程的大千世界,这和第一个吃螃蟹的人的意义有点类似,虽然这样比喻并不恰当。 如果说学会了使用hello world就代表着你踏入了单机编程的大门,那么学会在分布式环境下使用wordcount,则意味着你踏入了分布式编程的大门。试想一下,你的程序能够成百上千台机器的原创 2015-01-12 21:48:14 · 667 阅读 · 0 评论 -
如何使用Pig集成分词器来统计新闻词频?
散仙在上篇文章中,介绍过如何使用Pig来进行词频统计,整个流程呢,也是非常简单,只有短短5行代码搞定,这是由于Pig的内置函数TOKENIZE这个UDF封装了单词分割的核心流程,当然,我们的需求是各种各样的,Pig的内置函数,仅仅解决了80%我们常用的功能,如果稍微我有一些特殊的需求,就会发现内置函数解决不了,不过也无需担忧,Pig开放了各个UDF的接口和抽象类,从加载,转换,过滤,存储等等,都有原创 2015-01-16 20:36:26 · 1202 阅读 · 0 评论 -
Apache Pig入门学习文档(一)
1,Pig的安装 (一)软件要求 (二)下载Pig (三)编译Pig 2,运行Pig (一)Pig的所有执行模式 (二)pig的交互式模式 (三)使用pig脚本执行模式 3,Pig Latin语句的声明 (一)加载数据 (二)使用和处理数据 (三)存储中间数据 (四)存储最终数据 (原创 2015-01-20 20:45:24 · 950 阅读 · 0 评论 -
如何给Apache Pig自定义UDF函数?
近日由于工作所需,需要使用到Pig来分析线上的搜索日志数据,散仙本打算使用hive来分析的,但由于种种原因,没有用成,而Pig(pig0.12-cdh)散仙一直没有接触过,所以只能临阵磨枪了,花了两天时间,大致看完了pig官网的文档,在看文档期间,也是边实战边学习,这样以来,对pig的学习,会更加容易,当然本篇不是介绍如何快速学好一门框架或语言的文章,正如标题所示,散仙打算介绍下如何在Pig中,使原创 2014-12-31 13:02:24 · 993 阅读 · 0 评论 -
Apache Pig学习笔记(二)
主要整理了一下,pig里面的一些关键词的含义和用法,pig虽然是一种以数据流处理为核心的框架,但数据库的大部分关键词和操作,在pig里面基本上都能找到对应的函数,非常灵活与简洁,春节前的最后一篇文章了,祝大家春节快乐! 1,保留关键字: -- A assert, and, any, all, arrange, as, asc, AVG -- B bag, BinStorage, by,原创 2015-02-13 19:43:38 · 929 阅读 · 0 评论 -
玩转大数据之Apache Pig如何与Apache Lucene集成
在文章开始之前,我们还是简单来回顾下Pig的的前尘往事: 1,Pig是什么? Pig最早是雅虎公司的一个基于Hadoop的并行处理架构,后来Yahoo将Pig捐献给Apache(一个开源软件的基金组织)的一个项目,由Apache来负责维护,Pig是一个基于 Hadoop的大规模数据分析平台,它提供的SQL-like语言叫Pig Latin,该语言的编译器会把类SQL的数据分析请求转原创 2015-03-06 00:45:02 · 752 阅读 · 0 评论 -
玩转大数据系列之Apache Pig如何与MySQL集成(三)
上篇介绍了如何把Pig的结果存储到Solr中,那么可能就会有朋友问了,为什么不存到数据库呢? 不支持还是? 其实只要我们愿意,我们可以存储它的结果集到任何地方,只需要重写我们自己的StoreFunc类即可。关于如何将Pig分析完的结果存储到数据库,在pig的piggy贡献组织里,已经有了对应的UDF了,piggybank是非apache官方提供的工具函数,里面的大部分的UDF都是,其他原创 2015-03-07 19:44:41 · 800 阅读 · 0 评论 -
玩转大数据系列之Apache Pig如何与Apache Solr集成(二)
散仙,在上篇文章中介绍了,如何使用Apache Pig与Lucene集成,还不知道的道友们,可以先看下上篇,熟悉下具体的流程。 在与Lucene集成过程中,我们发现最终还要把生成的Lucene索引,拷贝至本地磁盘,才能提供检索服务,这样以来,比较繁琐,而且有以下几个缺点: (一)在生成索引以及最终能提供正常的服务之前,索引经过多次落地操作,这无疑会给磁盘和网络IO,带来巨大影响原创 2015-03-06 21:55:58 · 808 阅读 · 0 评论 -
玩转大数据系列之Apache Pig如何通过自定义UDF查询数据库(五)
GMV(一定时间内的成交总额)是一个衡量电商网站营业收入的一项重要指标,例如淘宝,京东都有这样的衡量标准,感兴趣的朋友可以自己科普下这方面的概念知识。 当然散仙今天,并不是来解释概念的,而是记录下最近工作的一些东西,原来我们平台的GMV只有一个总的成交金额,并没有细分到各个系统的GMV的比重,比如搜索端,推荐端,移动端等等。通过细粒度的分析各个系统所占的比重,对于指导各个系统完原创 2015-03-12 21:12:33 · 1199 阅读 · 0 评论 -
Apache Pig字符串截取实战小例子
记录一个Pig字符串截取的实战小例子:需求如下,从下面的字符串里提取出第2列(冒号后面)的值: Java代码 1 2 3 4 a:ab#c#d a:c#c#d a:dd#c#d a:zz#c#d 1 2 3 4a:ab#c#da:c#c#da:dd#c#da:zz#c#d如果是在java里,方法可能有很多种原创 2015-03-13 17:32:06 · 2430 阅读 · 0 评论 -
玩转大数据系列之Apache Pig高级技能之函数编程(六)
原创不易,转载请务必注明,原创地址,谢谢配合! http://qindongliang.iteye.com/ Pig系列的学习文档,希望对大家有用,感谢关注散仙! Apache Pig的前世今生 Apache Pig如何自定义UDF函数? Apache Pig5行代码怎么实现Hadoop的WordCount? Apache Pig入门学习文档(一)原创 2015-03-18 23:45:30 · 694 阅读 · 0 评论 -
Apache Pig和Solr问题笔记(一)
记录下最近两天散仙在工作中遇到的有关Pig0.12.0和Solr4.10.2一些问题,总共有3个,如下:(1)问题一: 如何Pig中使用ASCII和十六进制(hexadecimal)的分隔符进行加载,和切分数据? 注意关于这个问题,在Pig中,会反应到2个场景中, 第一: 在Pig加载(load)数据时候 。 第二: 在Pig处理split,或则正则截取数据的时候。原创 2015-04-02 13:40:50 · 1020 阅读 · 0 评论 -
Hadoop进阶之输入路径如何正则通配?
在hadoop的编程中,如果你是手写MapReduce来处理一些数据,那么就避免不了输入输出参数路径的设定,hadoop里文件基类FileInputFormat提供了如下几种api来制定: 如上图,里面有 (1)addInputPath(),每次添加一个输入路径Path (2)addInputPaths, 将多个路径以逗号分割的字符串,作为入参,支持多个路径 (3原创 2015-04-21 19:58:11 · 1658 阅读 · 0 评论 -
Apache Pig如何自定义UDF函数?
[b][color=green][size=large]近日由于工作所需,需要使用到Pig来分析线上的搜索日志数据,散仙本打算使用hive来分析的,但由于种种原因,没有用成,而Pig(pig0.12-cdh)散仙一直没有接触过,所以只能临阵磨枪了,花了两天时间,大致看完了pig官网的[url=http://pig.apache.org/docs/r0.12.1/basic.html]文档[/url...2014-12-30 19:52:27 · 199 阅读 · 0 评论 -
Apache Pig的前世今生
[b][color=olive][size=large]最近,散仙用了几周的Pig来处理分析我们网站搜索的日志数据,感觉用起来很不错,今天就写篇笔记介绍下Pig的由来,除了搞大数据的人,可能很少有人知道Pig是干啥的,包括一些是搞编程的,但不是搞大数据的,还包括一些既不是搞编程的,也不是搞大数据的,而是从事其他行业的朋友,所以很有可能望文生义,一看标题,就乐了,心里就开始默默的翻译了===》 Ap...2015-01-07 20:25:19 · 433 阅读 · 0 评论 -
Apache Pig5行代码怎么实现Hadoop的WordCount?
[img]http://dl2.iteye.com/upload/attachment/0105/1908/1805d55c-2b7f-3246-b732-02121f8698ac.jpg[/img][b][color=green][size=large]初学编程的人,都知道hello world的含义,当你第一次从控制台里打印出了hello world,就意味着,你已经开始步入了编程的大...2015-01-12 21:37:14 · 257 阅读 · 0 评论 -
如何使用Pig集成分词器来统计新闻词频?
[img]http://dl2.iteye.com/upload/attachment/0105/3491/7c7b3bef-0dda-3ac6-8cdb-1ecc1dd9c194.jpg[/img][b][color=olive][size=large]散仙在上篇文章中,介绍过如何使用Pig来进行词频统计,整个流程呢,也是非常简单,只有短短5行代码搞定,这是由于Pig的内置函数TOKEN...2015-01-16 20:26:49 · 497 阅读 · 0 评论 -
Apache Tez0.7编译笔记
[img]http://dl2.iteye.com/upload/attachment/0114/5711/86f2acad-6ad7-3822-b59f-8c24335265f7.png[/img][size=medium]目前最新的Tez版本是0.8,但还不是稳定版,所以大家还是先下载0.7用吧下载地址: wget http://archive.apache.org/dis...2016-01-15 16:33:24 · 202 阅读 · 0 评论