gpt4 book ai didi

hadoop - pig 引用

转载 作者:可可西里 更新时间:2023-11-01 14:51:34 25 4
gpt4 key购买 nike

我正在学习 Hadoop pig,我总是坚持引用元素。请看下面的例子。

groupwordcount: {group: chararray,words: {(bag_of_tokenTuples_from_line::token: chararray)}}

如果我们有嵌套的元组和包,有人能解释一下如何引用元素吗?

任何有助于更好地理解嵌套引用的链接都会有很大帮助。

最佳答案

让我们做一个简单的演示来理解这个问题。

假设文件“a.txt”存储在 HDFS 的“/tmp/a.txt”文件夹中

A = LOAD '/tmp/a.txt' 使用 PigStorage(',') AS (name:chararray,term:chararray,gpa:float);

转储A;

(约翰,佛罗里达州,3.9)

(约翰,佛罗里达州,3.7)

(约翰,sp,4.0)

(约翰,sm,3.8)

(玛丽,佛罗里达州,3.8)

(玛丽,佛罗里达州,3.9)

(玛丽,sp,4.0)

(玛丽,sm,4.0)

现在让我们根据一些参数(例如名称和术语)按此别名“A”分组

B = GROUP A BY (name,term);

转储 B;

((约翰,佛罗里达州),{(约翰,佛罗里达州,3.7),(约翰,佛罗里达州,3.9)})

((约翰,sm),{(约翰,sm,3.8)})

((约翰,sp),{(约翰,sp,4.0)})

((玛丽,佛罗里达州),{(玛丽,佛罗里达州,3.9),(玛丽,佛罗里达州,3.8)})

((玛丽,sm),{(玛丽,sm,4.0)})

((玛丽,sp),{(玛丽,sp,4.0)})

描述B;

B: {group: (name: chararray,term: chararray),A: {(name: chararray,term: chararray,gpa: float)}}

现在它已成为您提出的问题陈述。让我向您演示如何访问组元组的元素或 A 元组的元素或两者兼而有之

C = foreach B generate group.name,group.term,A.name,A.term,A.gpa;

转储 C;

(约翰,佛罗里达州,{(约翰),(约翰)},{(佛罗里达州),(佛罗里达州)},{(3.7),(3.9)})

(约翰,sm,{(约翰)},{(sm)},{(3.8)})

(约翰,sp,{(约翰)},{(sp)},{(4.0)})

(玛丽,fl,{(玛丽),(玛丽)},{(fl),(fl)},{(3.9),(3.8)})

(玛丽,sm,{(玛丽)},{(sm)},{(4.0)})

(玛丽,sp,{(玛丽)},{(sp)},{(4.0)})

所以我们通过这种方式访问​​了所有元素。

希望对您有所帮助

关于hadoop - pig 引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44490831/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com