`
weitao1026
  • 浏览: 994998 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
阅读更多

记录一个Pig字符串截取的实战小例子:
需求如下,从下面的字符串里提取出第2列(冒号后面)的值:

Java代码 复制代码 收藏代码
  1. 1 2  3 4  
  2. a:ab#c#d  
  3. a:c#c#d  
  4. a:dd#c#d  
  5. a:zz#c#d  
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内置函数来完成,但散仙推荐使用下面的方式,这种方式比较灵活,适合大部分场景的数据提取,需要用到的2个函数如下:

(1)REGEX_EXTRACT('原始字符串','正则式',int类型的返回索引)

(2)STRSPLIT('原始字符串', '正则式', 限制返回的个数)


pig脚本写法:

Java代码 复制代码 收藏代码
  1. a = laod '/tmp/data' as (data:chararray)  
  2. //注意逻辑是,先获取冒号后面的数据,然后split成tuple,再通过$1(下标访问元素)获取我们需要的数据即可。  
  3. b = foreach a generate STRSPLIT (REGEX_EXTRACT (data, '(.*):(.*)'2) ,'#',5).$0;  
  4.   
  5. dump b;  
分享到:
评论

相关推荐

    Pig 编程 实现使用某个符号分割

    Pig 编程实现按某个符号分割,并AS 存储

    PIG微服务前后端源码

    PIG(国内微服务热度最高的一个社区)

    Beginning Apache Pig(Apress,2016)

    Learn to use Apache Pig to develop lightweight big data applications easily and quickly. This book shows you many optimization techniques and covers every context where Pig is used in big data ...

    Pig编程指南

    《Pig编程指南》不仅为初学者讲解ApachePig的基础知识,同时也向有一定使用经验的高级用户介绍更加综合全面的Pig重要特性,如PigLatin脚本语言、控制台shell交互命令以及用于对Pig进行拓展的用户自定义函数(UDF)等。...

    pig-0.7.0.tar.gz

    Hadoop系统的pig工具包,很好用的

    pig源码0.15版

    pig0.15源码,适合小白学习大数据参考和使用

    apache pig 基础及应用

    apache pig 基础及应用,urldecode row_number web日志分析 根据 用户行为 做出 简易的 相似度 判断。

    Pig安装与Pig Latin语言,应用案例.

    来试试Pig安装,与学学Pig Latin语言,玩玩应用案例

    PIGO搜索 v2.3

    PIGO是一个采集引擎,开始的时候是按照采集各大搜索引擎而设计的。随着需求的增加,现在PIGO不单单能采集搜索引擎,而且能聚合结果,甚至,加载不同的核心,PIGO就变成不同的网站。所以PIGO不是任何类型的网站,但又...

    Beginning Apache Pig: Big Data Processing Made Easy [2016]

    Beginning Apache Pig: Big Data Processing Made Easy English | 29 Dec. 2016 | ISBN: 1484223365 | 300 Pages | PDF | 4.9 MB Learn to use Apache Pig to develop lightweight big data applications easily ...

    Pig-Toolbox_v1.0.7.6

    Pig-Toolbox_v1.0.7.6 谷歌浏览器插件,CRX可解压,用开发者模式安装

    大数据pig实战

    大数据pig实战,大数据pig实战,大数据pig实战大数据pig实战大数据pig实战

    大数据之pig 命令

    pig将就的命令

    pig的源码包

    pig源码包,最好的学习资料还是源码包。里边包括核心包,以及其他贡献的包,pigunit,还有源码

    翻转字符串

    如果把chas看作字符串为”dog loves pig”,调整成”pig loves dog”。 如果把chas看作字符串为”I’m a student.”,调整成”student. a I’m”。 【要求】 如果chas长度为N,两道题都要求时间复杂度为O(N)O(N)O(N)...

    pig官方udf教程

    pig官方的udf教程,介绍了 Writing Java UDFs Writing Python UDFs Writing JavaScript UDFs Writing Ruby UDFs Piggy Bank,一个开源pig的udf包,主要是java

    Pig编程指南.pdf

    Pig编程指南.pdf Pig编程指南英文版pdf文档

    Pig编程指南中文版

    Pig编程指南中文完整版,深入讲解了PIg的各方面

Global site tag (gtag.js) - Google Analytics