我想使用pig脚本将以下元组拆分为两个元组。(key=bb7bde5661923b947ce59958773e85c5\,\/css\/bootstrap.min.cssHTTP\/1.1\,\/con-us.php,\/con-us.phpHTTP\/1.1\)我想要的输出如下:(key=bb7bde5661923b947ce59958773e85c5\)(\/css\/bootstrap.min.cssHTTP\/1.1\,\/con-us.php,\/con-us.phpHTTP\/1.1\) 最佳答案 是的,您可以使用REG
我是PigLatin编程的新手,我有一个问题。假设我有以下两个关系(A和B):RelationA:http://i.stack.imgur.com/Aa5Rd.pngRelationB:http://i.stack.imgur.com/m467q.png现在,应该加入关系,但前提是A中存在键(id)。否则不会。所以结果应该是这样的:关系结果:i.stack.imgur.com/3elgh.png(我不能发布超过2个链接)我该如何解决?我的方法result=JOINABYid,BBYid;因为它创建了与所有id和文本的结果关系:/非常感谢您,斯特凡诺斯 最佳答
ApachePig中是否有任何东西可以根据值中止它的运行?例如y=foreachx生成column1为空?中止脚本:column1ascolumn1; 最佳答案 中止是不可能的可能的方法:生成数据并增加一些计数器。下一个操作将检查此计数器并将结果标记为_SUCCESS或删除目录。 关于hadoop-如何根据某些值中止pig脚本?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/29
我是ApachePig的新用户,我有以下数据order=0012,1,23order=0013,2,34,0015,1,45order=0011,1,456...我试图提取到以下记录0012,1,230013,2,340015,1,450011,1,456...下面是我试过的代码a=LOAD'a.txt'UsingTextLoader()AS(line:chararray);b=FOREACHaGENERATEFLATTEN(REGEX_EXTRACT_ALL(line,'order=((\\d+),(\\d+),(\\d+))+'))AS(order_item:chararray,o
我们如何在不退出gruntshell的情况下中断pigdump命令(编辑:当它完成MapReduce作业并且现在仅在gruntshell上显示结果时)?有时,如果我们错误地转储了一个巨大的文件,它会永远持续下去!我知道我们可以使用CTRL+C来停止它,但它也会退出gruntshell,然后我们必须重新编写所有命令。 最佳答案 我们可以在gruntshell中执行如下命令杀死作业编号我们可以通过查看Hadoop的JobTrackerGUI找到作业的ID,它列出了当前在集群上运行的所有作业。请注意,此命令会终止特定的MapReduce作
我有3个数据集,每个数据集有415GB的数据并且属于不同的域。我需要使用pig将它们全部联合起来,但我只能使用它的union子句,该子句在作业结束时启动reducer以删除不同的值。a=uniona1,a2data=uniona,a3有没有办法跳过reducer部分,因为数据已经不同了。 最佳答案 来自UNION上的文档:UsetheUNIONoperatortomergethecontentsoftwoormorerelations.TheUNIONoperator:Doesnotpreservetheorderoftuples.
我正在尝试使用Pig对一个简单的3X3矩阵执行矩阵乘法。我既不能根据行执行转置也不能分组。有人可以帮我解决这个问题吗例子矩阵A:222222222矩阵B:111111111提前致谢! 最佳答案 假设您的矩阵存储为“行、列、值”,您可以检查this此外,如果您有相同的txt文件,您可以通过以下方式加载它:E=LOAD'matrix1.txt'USINGPigStorage(',')AS(row:chararray,col:chararray,val:float);或E=LOAD'M-matrix-small.txt'USINGPigS
我正在尝试读取使用hadoop-xz压缩的.xz文件使用pig脚本的编解码器。我试过的示例代码是,REGISTERhadoop-xz-1.4.jarSEToutput.compression.enabledtrue;SEToutput.compression.codecio.sensesecure.hadoop.xz.XZCodec;msg=LOAD'pigtest/newXZ.xz'USINGPigStorage();STOREmsgINTO'pigtest/output'USINGPigStorage();DUMPmsg;结果仍然是压缩格式。我做错了吗,还是我必须在pig里面使用X
我正在尝试访问UDF中的文件(sample.txt)。我想将该文件放在分布式缓存中并从那里使用它。我正在使用亚马逊EMR来运行Pig作业。我在创建集群时使用EMRbootstrap-action将文件(sample.txt)复制到HDFS。bootstrap.sh(将文件从s3复制到hdfs)hadoopfs-copyToLocals3n://s3_path/sample.txt/mnt/sample.txtUsingSample.java(使用sample.txt的UDF)publicclassUsingSampleextendsEvalFunc{publicStringuseSam
我正在使用piggybank-0.12.0.jar,pig版本是0.12(CDH)pig--versionApachePigversion0.12.0-cdh5.3.2(rexported)我正在尝试使用piggybankjar的XMLLoader加载xml文件。在出现以下错误期间:REGISTERpiggybank-0.12.0.jar;DEFINEXMLLoaderorg.apache.pig.piggybank.storage.XMLLoader();DEFINERegexExtractAllorg.apache.pig.piggybank.evaluation.string.R