草庐IT

PIG_HOME

全部标签

hadoop - Pig UDF 计算两个数的幂

我有一个pig脚本。Script.pig:register/home/cloudera/Desktop/Pow.jar#registeringthejarfileA=LOAD'/input.txt'usingPigStorage(',')as(a1:int,a2:int,name:chararray);#loadingtherelationB=foreachAgenerateA.a1,A.a2,Pow(A.a1,A.a2);#justgeneratingfield1,field2dumpB;#dumpingtheresult用于计算幂函数的javaUDF。importjava.io.I

hadoop - 每年出版书籍频率的 Pig 脚本

我正尝试按照此链接上给出的步骤运行pig脚本-http://www.orzota.com/pig-tutorialfor-beginners/但我收到此错误。它无法读取加载到HDFS中的文件。你能帮忙吗?错误如下-FailedJobs:JobIdAliasFeatureMessageOutputsN/ABookXRecords,CountByYear,GroupByYearGROUP_BY,COMBINERMessage:UnexpectedSystemErrorOccured:java.lang.IncompatibleClassChangeError:Foundinterfaceo

hadoop - 错误 org.apache.pig.tools.grunt.Grunt - 错误 1000

我正在从事PIG编程,grunt>dividends=load'NYSE_dividends'as>>(exchange:chararray,symbol:chararray,date:chararray,dividend:float);grunt>LIMITdividends10;但我不确定为什么会出现此错误:[main]ERRORorg.apache.pig.tools.grunt.Grunt-ERROR1000:Errorduringparsing.Encountered""LIMIT""atline3,column1.我的数据链接是DataLink请帮我找出问题所在!!!

hadoop - pig 读取数据作为 databytearray

大家好,我还有一个问题,我只是无法理解pig的行为我正在将数据加载到pig中,并在经过一些转换后使用PigStorage()将其存储在hdfs(/user/sga/transformeddata)上。但是当我从/user/sga/transformeddata位置加载数据并执行temp=load'/user/sga/transformeddata'usingPigStorage();gen=foreachtempgeneratepage_type;dumpgen;出现以下错误:databytearray无法转换为java.lang.String但如果我这样做gen=foreachtem

hadoop - pig 比较运算符在 GENERATE 中不起作用

从命令行使用pig我可以使用b=过滤a(desc匹配'.XZY。');并得到我期望的结果......但是当我使用c=foreachaGENERATE(descmatches'.RFNC.'?'yes':'no');我得到所有的'不'我有语法问题还是这个语句在GENERATE内部不合法? 最佳答案 您的匹配代码应该如下所示:c=foreachaGENERATEdescmatches'.*RFNC.*'?'yes':'no'asmatch_result;更多信息请查看here 关于hadoo

hadoop - 如何使用 oozie 启动 N 次脚本 Pig?

我需要处理大量具有特定日期的文件。我只找到一个解决方案,即每次使用不同的数据集启动N次作业。使用的分区基于yyyy、mm、dd。我有一个java操作,它生成用于每个数据的良好分区。我的问题是,如何创建一个循环来启动我的脚本N次?我今天使用oozie工作流。谢谢 最佳答案 这听起来像是coordinators的用例.可以声明Datasets并让oozie在特定数据集实例可用时自动启动工作流。 关于hadoop-如何使用oozie启动N次脚本Pig?,我们在StackOverflow上找到一

Hadoop Pig - 如何设置中间结果的目录

我的Pig作业将中间结果存储在我的硬盘上,该硬盘很小。我希望Pig将这些中间结果存储在/data上。我必须更改哪个设置? 最佳答案 我必须在pigconf文件(/pig.-0.14.0/conf/pig-env.sh)中添加以下导出:exportPIG_OPTS="$PIG_OPTS-Dhadoop.tmp.dir=$path_to_big_hard_drive-Dpig.temp.dir=$path_to_big_hard_drive" 关于HadoopPig-如何设置中间结果的目录,

hadoop - 养 pig 运算符(operator)的逻辑计划和物理计划

在学习PigLatin时,我对像Co_group这样的运算符的逻辑到物理计划的想法有点困惑,如下所示。我不太明白如何理解这个图。 最佳答案 要深入了解逻辑计划和物理计划,请引用此链接:http://chimera.labs.oreilly.com/books/1234000001811/ch07.html#explain 关于hadoop-养pig运算符(operator)的逻辑计划和物理计划,我们在StackOverflow上找到一个类似的问题: https

hadoop - PIG - 匹配 toDate 函数

我正在尝试将字符串转换为hadooppig中的日期时间对象。但是Grunt给我一个奇怪的错误信息:就像它不能选择正确的“ToDate”函数。它要求“显式类型转换”,但我不知道该怎么做。任何的想法?=>错误1045:无法将org.apache.pig.builtin.ToDate的匹配函数推断为多个或都不匹配。请使用显式转换。grunt>describeinfos_by_nu_affa;infos_by_nu_affa:{NU_AFFA:bytearray,affaires:{(NU_AFFA:bytearray,NU_PCP:bytearray,debut:bytearray,fin:

hadoop - 在 PIG 中连接带有时间戳的文件

如何将时间戳与pig生成的输出连接起来。我需要将pig生成的输出保存到另一个带有时间戳的文件夹中,以便将来可以将其用作历史数据。我尝试使用CurrentTime()但它给了我这样的错误:2015-03-3119:29:58,249[main]ERRORorg.apache.pig.tools.grunt.Grunt-ERROR1200:Cannotexpandmacro'CurrentTime'.Reason:Macromustbedefinedbeforeexpansion.如何定义这个宏?代码如下:A=load'/user/root/b2.out';X=FILTERABY($2==