草庐IT

四元组

全部标签

hadoop - 在 pig 中分离元组的元组

我得到的结果是元组的元组形式。我需要将一个元组中的所有数据放入一列,将其他数据放入另一列。我不知道如何实现这一目标。以下是我的数据。示例:((completed,completed,completed,completed,completed,completed,completed,completed,completed,completed,completed,completed,completed,completed,completed,completed,completed,completed,completed),(10160-0),(20140403,20151207,20160

java - Apache Spark : In PairFlatMapFunction, 如何将元组添加回 Iterable<Tuple2<Integer, String>> 返回类型

我是新手。我一直在研究涉及两个数据集的代码。因此,我从PairFlatMapFunction开始,在其中我正在处理映射器。JavaPairRDDtrainingArray=trainingData.flatMapToPair(newPairFlatMapFunction(){publicIterable>call(Strings){//codetoformthetuplesoftypeTuple2//newTuples2}如何将元组添加回可迭代类以供缩减器(reduceByKey)处理。如有任何指点,我们将不胜感激。 最佳答案 谢谢

hadoop - 从 PIG 中的一个元组生成一组元组

我找不到任何解决方案如何根据规则在Pig中从一个元组生成一组元组:输入:((1,2,3),(a,b,c),(aaa,bbb,ccc))输出:(1,a,aaa)(2,b,bbb)(3,c,ccc)假设应该应用TOBAG和FLATTEN,但这似乎太棘手了。 最佳答案 使用zip内置函数和参数解包(“star”args):>>>x=((1,2,3),('a','b','c'),('aaa','bbb','ccc'))>>>tuple(zip(*x))((1,'a','aaa'),(2,'b','bbb'),(3,'c','ccc'))>>

hadoop - 读取带有换行符的文件作为 pig 中的元组

是否可以将记录分隔符从换行符更改为其他字符串,以便将带有换行符的文件读入pig中的单个元组。 最佳答案 是的。A=LOAD'...'USINGPigStorage(',')AS(...);//commaisthedelimeterforfieldsSETtextinputformat.record.delimiter'';//recorddelimeter,bydefaultitis`\n`.Youcanchangetoanydelimeter. 关于hadoop-读取带有换行符的文件作

hadoop - pig 中的动态元组?

我用pig的元组获取数据0,(0),(zero)1,(1,2),(first,second)我可以收到这个吗?0,0,zero1,1,first1,2,second 最佳答案 首先,我将纠正您的术语,您应该将(0)和(1,2)视为包,而不是元组。元组旨在成为表示某种实体的固定长度数据结构。例如说(姓名、地址、出生年份)。如果您有类似对象的列表,例如{(apple),(orange),(banana)},您需要一个包。不存在允许您“压缩”多个包/列表的行为。这样做的原因是从设计的角度来看,Pig将包视为无序列表,因此术语“包”而不是“

hadoop - 我如何在 Pig 中将许多 map 的元组分成不同的行

我在Pig中有一个如下所示的关系:([account_id#100,timestamp#1434,id#900],[account_id#100,timestamp#1434,id#901],[account_id#100,timestamp#1434,id#902])如您所见,我在一个元组中包含三个map对象。上面的所有数据都在关系中的第0个字段中。所以上面的数据与单个bytearray列有关。数据加载如下:data=load's3://data/data'usingcom.twitter.elephantbird.pig.load.JsonLoader('-nestedLoad')

hadoop - 如何规范化 apache pig 中的 map 元组?

我在pig脚本中有以下关系:my_relation:{entityId:chararray,attributeName:chararray,bytearray}(++JIYMIS2D,timeseries,([value#50.0,timestamp#1388675231000]))(++JRGOCZQD,timeseries,([value#50.0,timestamp#1388592317000],[value#25.0,timestamp#1388682237000]))(++GCYI1OO4,timeseries,())(++JYY0LOTU,timeseries,())byt

hadoop - PIG UDF 处理拆分成不同映射器的多行元组

我有一个文件,其中每个元组跨越多行,例如:STARTname:Jimphone:2128789283address:562ndstreet,NewYork,USAENDSTARTname:Tomphone:6308789283address:565thstreet,Chicago,13611,USAEND...以上是我文件中的2个元组。我编写了定义getNext()函数的UDF,该函数检查它是否开始,然后我将初始化我的元组;如果是END那么我将返回元组(来自字符串缓冲区);否则我只会将字符串添加到字符串缓冲区。它适用于小于HDFSblock大小64MB(在AmazonEMR上)的文件大

hadoop - 根据 pig 的字段比较元组

(ABC,****,tool1,12)(ABC,****,tool1,10)(ABC,****,tool1,13)(ABC,****,tool2,101)(ABC,****,tool3,11)以上是输入数据以下是我在pig中的数据集。Schemais:Username,ip,tool,duration我想添加相同工具的持续时间输出(ABC,****,tool1,35)(ABC,****,tool2,101)(ABC,****,tool3,11 最佳答案 对持续时间使用GROUPBY和SUM。A=LOAD'data.csv'USING

hadoop - Pig : How to send all Tuples to a UDF to be Processed without Grouping them? 或者如何在不分组的情况下将元组转换为包?

这就是我想要做的:A=LOAD'...'USINGPigStorage(',')AS(col1:int,col2:chararray);B=ORDERAbycol2;C=CUSTOM_UDF(A);CUSTOM_UDF遍历需要按顺序排列的元组。UDF会为每几个输入元组输出一个聚合元组;即,我不会以1:1的方式返回元组。本质上:publicclassCustomUdfextendsEvalFunc{publicTupleexec(Tupleinput)throwsIOException{AggregateaggregatedOutput=null;DataBagvalues=(DataB