`
qindongliang1922
  • 浏览: 2184712 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
7265517b-f87e-3137-b62c-5c6e30e26109
证道Lucene4
浏览量:117556
097be4a0-491e-39c0-89ff-3456fadf8262
证道Hadoop
浏览量:125937
41c37529-f6d8-32e4-8563-3b42b2712a50
证道shell编程
浏览量:59942
43832365-bc15-3f5d-b3cd-c9161722a70c
ELK修真
浏览量:71310
社区版块
存档分类
最新评论

Apache Pig字符串截取实战小例子

    博客分类:
  • 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内置函数来完成,但散仙推荐使用下面的方式,这种方式比较灵活,适合大部分场景的数据提取,需要用到的2个函数如下:

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

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


pig脚本写法:

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

dump b;







想了解更多有关电商互联网公司的搜索技术和大数据技术的使用,请欢迎扫码关注微信公众号:我是攻城师(woshigcs)
本公众号的内容是有关搜索和大数据技术和互联网等方面内容的分享,也是一个温馨的技术互动交流的小家园,有什么问题随时都可以留言,欢迎大家来访!





0
0
分享到:
评论

相关推荐

    日期 字符串截取 格式化 标签

    在IT行业中,日期字符串的截取与格式化是常见的任务,尤其在处理日志、数据分析或者用户界面展示时。这个话题涉及到编程语言中的日期时间处理,通常与编程库或框架的功能紧密相关。在这个主题中,我们将深入探讨日期...

    apache pig 基础及应用

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

    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 ...

    TutorialsPoint Apache Pig 介绍.epub

    TutorialsPoint Apache Pig 介绍.epub

    Apache Pig的性能优化.pdf

    例如,使用更紧凑的数据类型(如整数而不是字符串表示数字)可以减少内存使用和磁盘I/O,从而加快处理速度。 #### 2. 减少shuffle阶段 shuffle是MapReduce中最耗时的阶段之一。通过合理设计数据流和使用内联...

    [原创]Apache_Pig的一些基础概念及用法总结

    元组内的每个字段都有特定的数据类型,如整数、字符串或浮点数。元组可以嵌套在其他数据结构中,如关系或包,从而形成复杂的数据结构。 ##### 4. 字段(Field) **字段**是元组内的最小单位,代表单个数据项。每个...

    Apache pig:基础及应用

    分享嘉宾:李尤(智联招聘 高级工程师) 分享内容:天讲的主要题目就是Hadoop的应用。我们有两块,一块是日志分析。还有一块是简单的应用。

    Apache Pig用法总结

    Apache Pig是一个开源的平台,它为用户提供了一种高级查询语言,即Pig Latin,用于处理大规模数据集。Pig Latin抽象了MapReduce编程模型,从而使得数据分析师能够轻松地编写数据转换脚本,而无需深入Java编程。Pig...

    字符串工具类

    字符串工具类,格式字符串、随机数生成、ip区间判断!

    Apache pig的性能优化

    Apache Pig是一种高级数据流语言和执行框架,用于处理和分析大数据,其运行在Hadoop上。Pig提供了一种名为Pig Latin的数据处理语言,它是一种类SQL语言,可以让用户编写更简洁的代码来处理数据,相对于传统的...

    Apache SkyWalking 实战-预览1

    Apache SkyWalking 是一个开源的应用性能监控(APM)和可观测性分析平台,专注于分布式系统的监控。它由中国开发者创立,并成为中国首个也是唯一的Apache顶级个人开源项目。SkyWalking 提供了多维度的性能分析工具,...

    Apache Kafka实战.pdf

    《Apache Kafka实战》这本书深入浅出地介绍了Apache Kafka这一分布式流处理平台的各个方面,旨在帮助读者掌握Kafka的实际应用和核心概念。Kafka是一个高吞吐量、低延迟的消息发布订阅系统,常用于构建实时数据管道和...

    关于字符串相等的比较

    - Apache Commons Lang 提供了一系列工具类来简化字符串操作,如 `StringUtils`。 - 示例:使用 `StringUtils.equals` 方法进行比较。 #### 示例分析 给定的代码示例展示了如何使用 `equals` 方法来比较用户输入...

    apache cxf 一个helloworld的例子

    这是一个简单的例子,仅定义了一个方法`sayHi`,该方法接受一个字符串参数并返回一个字符串。 ```java package org.yifeng.service; public interface HelloWorldService { String sayHi(String text); } ``` ##...

    apache和string字符串替换的比较

    Apache Commons Lang库提供了一系列方便的工具类,其中包括`StringUtils`,它包含了大量对字符串进行处理的高效方法。在这里,我们将重点关注`StringUtils`中的`replace`方法与Java内置`String`类中的`replace`方法...

    Apache Hadoop---Pig.docx

    Apache Hadoop 中的 Pig 是一个强大的分布式数据分析引擎,专门设计用于处理大规模数据集。Pig 构建在 Hadoop 平台上,通过提供一个名为 Pig Latin 的高级抽象语言,简化了在 Hadoop 上进行数据分析的过程。Pig ...

    pig-json:用于 Apache Pig 的 Mortar JSON 工具

    FromJsonInferSchema :包装 JsonLoader 以将字符数组(字符串)字段中的 JSON 转换为 Map 的 Pig UDF。 推断输出的模式。 FromJsonWithSchema :与 FromJsonInferSchema 类似,但您提供架构。 这些工具适用于 ...

    apache soap的hello例子

    在这个"apache soap的hello例子"中,我们将探讨如何使用Apache SOAP实现一个简单的“Hello World”服务。 首先,让我们理解SOAP的基本结构。SOAP消息通常包含三个主要部分:Header、Body和Envelope。Header用于传递...

    apache-pig-on-storm:使用Apache Pig的Pig Latin生成并运行Apache Storm拓扑

    Apache Pig和Apache Storm是两个在大数据处理领域广泛应用的开源项目。Apache Pig提供了一种高级的、声明性数据处理语言——Pig Latin,使得用户可以专注于数据处理逻辑,而不是底层实现。而Apache Storm则是一个...

Global site tag (gtag.js) - Google Analytics