本月博客排行
-
第1名
龙儿筝 -
第2名
johnsmith9th -
第3名
wy_19921005 - zysnba
- sgqt
- lemonhandsome
年度博客排行
-
第1名
宏天软件 -
第2名
青否云后端云 -
第3名
龙儿筝 - gashero
- wallimn
- vipbooks
- benladeng5225
- wy_19921005
- fantaxy025025
- qepwqnp
- e_e
- 解宜然
- zysnba
- ssydxa219
- sam123456gz
- javashop
- arpenker
- tanling8334
- kaizi1992
- xpenxpen
- gaojingsong
- wiseboyloves
- xiangjie88
- ranbuijj
- ganxueyun
- sichunli_030
- xyuma
- wangchen.ily
- jh108020
- lemonhandsome
- zxq_2017
- jbosscn
- Xeden
- luxurioust
- lzyfn123
- zhanjia
- johnsmith9th
- forestqqqq
- ajinn
- nychen2000
- wjianwei666
- hanbaohong
- daizj
- 喧嚣求静
- silverend
- mwhgJava
- kingwell.leng
- lchb139128
- lich0079
- kristy_yy
最新文章列表
Apache Pig的UDF返回值问题
今天写了关于Pig的EvalFunc UDF函数,结果一执行,发现返回值,总是bag类型,我就纳闷了,我明明指定了返回是String类型,怎么会变成Bag类型呢?经查找,发现拷贝的问题,由于先前写的UDF函数,返回值是多个,而现在的这个是一个,所以导致,我在pig脚本里面,进行强转string类型出错,发现问题后,设置返回类型为DataType.CHARARRAY问题得以解决。
案例(一),输 ...
Pig0.15集成Tez,让猪飞起来
1,Tez是什么?
Tez是Hortonworks公司开源的一种新型基于DAG有向无环图开源计算框架,它可以将多个有依赖的作业转换为一个作业从而大幅提升DAG作业的性能,看下面一张图,就能说明问题:
2,Tez能干什么?
上图已经说明问题了,如果将我们的Hive,或者Pig运行在Tez之上,那么速度会有几倍的提升,当然这仅仅是相对MapReduce来讲的,因为Spark这种分布式内存计 ...
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的环境变量如下:
#Pig
export PIG_HOME= ...
pig on tez测试
pig on tez测试
pig tez hadoop hdfs
测试环境
pig-0.14.0
hadoop-2.5.2 ()1+2)
hive on tez 测试后,很好奇,pig是否可以在tez上运行呢?从官网上可以看到pig on tez的描述,就想应该是可以pig on tez的.
pig安装过程略过…
Pig配置vim高亮
(1)
下载文末上传的压缩包,上到对应的linux机器上,并解压
(2)
执行mkdir -p ~/.vim/syntax/创建目录
执行mkdir -p ~/.vim/ftdetect/创建目录
(3)
执行cp -a pig.vim-master/syntax/pig.vim ~/.vim/syntax/
执行 cp -a pig.vim-master/ftdetect/pig.v ...
Hadoop2.2如何集成Apache Pig0.12.1?
散仙假设你的Hadoop环境已经安装完毕
(1)到https://archive.apache.org/dist/pig/下载对应的tar包,如果是hadoop0.20.x之前的版本,则直接可以用,如果Hadoop2.x之后的,则需要重新编译,在pig的根目录下执行如下命令:
ant clean jar-withouthadoop -Dhadoopversion=23
否则执行M ...
Apache Pig和Solr问题笔记(一)
记录下最近两天散仙在工作中遇到的有关Pig0.12.0和Solr4.10.2一些问题,总共有3个,如下:
(1)问题一: 如何在Pig中使用ASCII和十六进制(hexadecimal)的分隔符进行加载,和切分数据?
注意关于这个问题,在Pig中,会反应到2个场景中,
第一: 在Pig加载(load)数据时候 。
第二: 在Pig处理split,或则正则截取数据的时候。
先稍微说下,为啥使用十 ...
Pig使用问题总结
1,如果是a::tags#'pic'作为参数,传递给另一个函数方法,需要转义多次,
二次调用函数,就是这个方法里,又调用了其他方方法,参数也是层层传递,需要转义两次,尤其是map里的函数,
C1 = two_use_cart_filter_by_clkloc_distinct_vid_and_ic(C,0,2,'vid','cvid','tags#\\\'pic\\\'','cpic') ;
...
玩转大数据系列之Apache Pig高级技能之函数编程(六)
原创不易,转载请务必注明,原创地址,谢谢配合!
http://qindongliang.iteye.com/
Pig系列的学习文档,希望对大家有用,感谢关注散仙!
Apache Pig的前世今生
Apache Pig如何自定义UDF函数?
Apache Pig5行代码怎么实现Hadoop的WordCount?
Apache Pig入门学习文档(一)
Apache Pig学习笔记(二) ...
Apache Pig字符串截取实战小例子
记录一个Pig字符串截取的实战小例子:
需求如下,从下面的字符串里提取出第2列(冒号后面)的值:
1 2 3 4
a:ab#c#d
a:c#c#d
a:dd#c#d
a:zz#c#d
如果是在java里,方法可能有很多种,比如substring,或者split多次等,在pig也大致如此,可以使用SUBSTRING内置函数来完成,但散仙推荐使用下面的方式,这种方式比较灵活,适合 ...
玩转大数据系列之如何给Apache Pig自定义存储形式(四)
Pig里面内置大量的工具函数,也开放了大量的接口,来给我们开发者使用,通过UDF,我们可以非常方便的完成某些Pig不直接支持或没有的的功能,比如散仙前面几篇文章写的将pig分析完的结果,存储到各种各样的介质里面,而不仅仅局限于HDFS,当然,我们也可以在都存。
那么如何实现自己的存储UDF呢? 提到这里,我们不得不说下pig里面的load和store函数,load函数是从某个数据源,加载数据, ...
玩转大数据系列之Apache Pig如何与Apache Solr集成(二)
散仙,在上篇文章中介绍了,如何使用Apache Pig与Lucene集成,还不知道的道友们,可以先看下上篇,熟悉下具体的流程。
在与Lucene集成过程中,我们发现最终还要把生成的Lucene索引,拷贝至本地磁盘,才能提供检索服务,这样以来,比较繁琐,而且有以下几个缺点:
(一)在生成索引以及最终能提供正常的服务之前,索引经过多次落地操作,这无疑会给磁盘和网络IO,带来巨大影响
(二)Lucen ...
Pig入门-环境搭建
Pig入门-环境搭建
本文介绍在Linux RedHat + Hadoop2.2.0+JDK1.7的环境下安装pig-0.14.0.
一、pig安装包下载
下载地址: http://mirrors.hust.edu.cn/apache/pig/pig-0.14.0/
二、安装及配置
...
Apache Pig入门学习文档(一)
1,Pig的安装
(一)软件要求
(二)下载Pig
(三)编译Pig
2,运行Pig
(一)Pig的所有执行模式
(二)pig的交互式模式
(三)使用pig脚本执行模式
3,Pig Latin语句的声明
(一)加载数据
(二)使用和处理数据
(三)存储中间数据
(四)存储最终数据
(五)调试Pig Latin语言
4,Pig的 ...
如何使用Pig集成分词器来统计新闻词频?
散仙在上篇文章中,介绍过如何使用Pig来进行词频统计,整个流程呢,也是非常简单,只有短短5行代码搞定,这是由于Pig的内置函数TOKENIZE这个UDF封装了单词分割的核心流程,当然,我们的需求是各种各样的,Pig的内置函数,仅仅解决了80%我们常用的功能,如果稍微我有一些特殊的需求,就会发现内置函数解决不了,不过也无需担忧,Pig开放了各个UDF的接口和抽象类,从加载,转换,过滤,存储等等,都 ...
Apache Pig5行代码怎么实现Hadoop的WordCount?
初学编程的人,都知道hello world的含义,当你第一次从控制台里打印出了hello world,就意味着,你已经开始步入了编程的大千世界,这和第一个吃螃蟹的人的意义有点类似,虽然这样比喻并不恰当。
如果说学会了使用hello world就代表着你踏入了单机编程的大门,那么学会在分布式环境下使用wordcount,则意味着你踏入了分布式编程的大门。试想一下,你的程序能够成百上千台机器的集群 ...