草庐IT

pig-without

全部标签

hadoop - pig java.lang.NoSuchFieldException : jobsInProgress exception

我将pig-0.11.0+28与CDH4一起使用,当我运行任何Pig作业时,我都会遇到此异常。我也发生在本地模式下。有什么想法吗?2013-07-0813:53:44,035[main]WARNorg.apache.pig.backend.hadoop23.PigJobControl-fallingbacktodefaultJobControl(notusinghadoop0.23?)java.lang.NoSuchFieldException:jobsInProgressatjava.lang.Class.getDeclaredField(Class.java:1938)atorg.

hadoop - 使用 Pig/Hive 进行数据处理而不是直接使用 java map reduce 代码?

(比DifferencebetweenPigandHive?Whyhaveboth?更基础)我有一个数据处理管道,用Hadoop上的多个Javamap-reduce任务编写(我自己的自定义代码,源自Hadoop的Mapper和Reducer)。它是一系列基本操作,例如连接、反转、排序和分组依据。我的代码涉及并且不是很通用。继续这种公认的开发密集型方法与使用多个UDF将所有内容迁移到Pig/Hive的优缺点是什么?哪些工作我不能执行?我会遭受性能下降(使用100sTB)吗?维护时我会失去调整和调试代码的能力吗?我能否将部分作业作为Javamap-reduce进行流水线处理,并将它们的输入

hadoop - 如何调试 pig 脚本

如果在pig中针对大量TB数据运行简单的脚本分组时,脚本卡在了70%左右,那么如何诊断问题? 最佳答案 调试pig脚本有几种方法。简单的方法是逐步执行一个关系,然后验证结果。这些命令对于调试pig脚本很有用。DUMP-使用DUMP运算符运行(执行)PigLatin语句并将结果显示到屏幕上。ILLUSTRATE-使用ILLUSTRATE运算符查看数据如何通过一系列PigLatin语句进行转换。ILLUSTRATE允许您在小型数据集上测试您的程序并获得更快的周转时间。EXPLAIN-使用EXPLAIN运算符查看用于计算指定关系的逻辑、物

java - 如何使用 Pig 将分组记录存储到多个文件中?

加载和分组记录后,如何将这些分组的记录存储到多个文件中,每组一个(=userid)?records=LOAD'input'AS(userid:int,...);grouped_records=GROUPrecordsBYuserid;我正在使用ApachePig版本0.8.1-cdh3u3(已导出) 最佳答案 确实有一个MultiStorage在Piggybank上课这正是我想要的-它按指定属性(在我的示例中的索引“0”处)拆分记录:STORErecordsINTO'output'USINGorg.apache.pig.piggyb

hadoop - 在 pig 中正确加载日期时间

我正在加载一个带有日期时间列和长列的tsv文件:A=LOAD'tweets-clean.txt'USINGPigStorage('\t')AS(date:datetime,userid:long);DUMPA;输入示例行:TueFeb1105:02:10+00002014205291417那一行输出:,205291417如何正确执行此操作? 最佳答案 您希望将日期加载为字符数组(date:chararray),然后可以使用FOREACHGENERATE和ToDate将其转换为日期时间。pig内置功能。格式字符串基于SimpleDat

pig 中的正则表达式匹配

使用apachepig和文本hahahah.mybrotherjustdidntdoanythingwrong.Hecheatedonatest?noway!我正在尝试匹配“我兄弟没有做错任何事。”理想情况下,我想匹配以“mybrotherjust”开头并以标点符号(句末)或EOL结尾的任何内容。查看pig文档,然后点击指向java.util.regex.Pattern的链接,我想我应该可以使用extrctd=FOREACHfltrGENERATEFLATTEN(EXTRACT(txt,'(mybrotherjust.*\\p{Punct})'))as(txt:chararray);但

hadoop - 如何让 Pig 使用 lzo 文件?

因此,我已经在网上看到了几个关于此的教程,但每个教程似乎都说要做一些不同的事情。此外,它们中的每一个似乎都没有具体说明您是要让事情在远程集群上运行,还是要在本地与远程集群交互,等等......就是说,我的目标只是让我的本地计算机(一台mac)让pig处理存在于Hadoop集群上的lzo压缩文件,该集群已经设置为可以处理lzo文件。我已经在本地安装了Hadoop,可以使用hadoopfs-[command]从集群中获取文件。我也已经在本地安装了pig,并在我运行脚本或通过grunt运行东西时与hadoop集群通信。我可以很好地加载和播放非lzo文件。我的问题只是找出一种加载lzo文件的方

hadoop - Pig 不断尝试连接到作业历史服务器(但失败)

我正在运行无法连接到Hadoop作业历史服务器的Pig作业。任务(通常是任何带有GROUPBY的任务)运行一段时间,然后以如下消息开始:2015-04-2119:05:22,825[main]INFOorg.apache.hadoop.mapred.ClientServiceDelegate-Applicationstateiscompleted.FinalApplicationStatus=SUCCEEDED.Redirectingtojobhistoryserver2015-04-2119:05:26,721[main]INFOorg.apache.hadoop.ipc.Clien

hadoop - 在 EvalFunc pig UDF 中抛出异常是跳过那一行,还是完全停止?

我有一个用Java编写的用户定义函数(UDF),用于解析日志文件中的行并将信息返回给pig,因此它可以完成所有处理。看起来像这样:publicabstractclassFooextendsEvalFunc{publicFoo(){super();}publicTupleexec(Tupleinput)throwsIOException{try{//dostuffwithinput}catch(Exceptione){throwWrappedIOException.wrap("Errorwithline",e);}}}我的问题是:如果它抛出IOException,它会完全停止,还是会为其

Hadoop PIG Max of Tuple

如何在Pig中找到元组的MAX?我的代码是这样的:A,20B,10C,40D,5data=LOAD'myData.txt'USINGPigStorage(',')ASkey,value;all=GROUPdataALL;maxKey=FOREACHallGENERATEMAX(data.value);DUMPmaxKey;返回40,但我想要完整的键值对:C,40。有什么想法吗? 最佳答案 这适用于Pig0.10.0:data=LOAD'myData.txt'USINGPigStorage(',')AS(key,value:long)