我正在从事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请帮我找出问题所在!!!
大家好,我还有一个问题,我只是无法理解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
从命令行使用pig我可以使用b=过滤a(desc匹配'.XZY。');并得到我期望的结果......但是当我使用c=foreachaGENERATE(descmatches'.RFNC.'?'yes':'no');我得到所有的'不'我有语法问题还是这个语句在GENERATE内部不合法? 最佳答案 您的匹配代码应该如下所示:c=foreachaGENERATEdescmatches'.*RFNC.*'?'yes':'no'asmatch_result;更多信息请查看here 关于hadoo
我需要处理大量具有特定日期的文件。我只找到一个解决方案,即每次使用不同的数据集启动N次作业。使用的分区基于yyyy、mm、dd。我有一个java操作,它生成用于每个数据的良好分区。我的问题是,如何创建一个循环来启动我的脚本N次?我今天使用oozie工作流。谢谢 最佳答案 这听起来像是coordinators的用例.可以声明Datasets并让oozie在特定数据集实例可用时自动启动工作流。 关于hadoop-如何使用oozie启动N次脚本Pig?,我们在StackOverflow上找到一
我的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-如何设置中间结果的目录,
在学习PigLatin时,我对像Co_group这样的运算符的逻辑到物理计划的想法有点困惑,如下所示。我不太明白如何理解这个图。 最佳答案 要深入了解逻辑计划和物理计划,请引用此链接:http://chimera.labs.oreilly.com/books/1234000001811/ch07.html#explain 关于hadoop-养pig运算符(operator)的逻辑计划和物理计划,我们在StackOverflow上找到一个类似的问题: https
我正在尝试将字符串转换为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:
如何将时间戳与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==
我是hadoop的新手。我正在使用pig0.14.0和hadoop1.2.1。我已经在本地和mapreduce模式下成功地从gruntshell和pig批处理脚本运行pig。现在我正在尝试从Java中的嵌入式pig运行pig。当我在eclipse中编译我的代码时,出现以下错误:Exceptioninthread"main"java.lang.NoClassDefFoundError:org/apache/commons/logging/LogFactoryatorg.apache.pig.impl.util.PropertiesUtil.(PropertiesUtil.java:34)
如何在加载关系时为以下元组数据创建Pig模式?]$catdata(3,8,9)(4,5,6)(1,4,7)(3,7,5)(2,5,8)(9,5,8)我在本地模式下尝试了下面的语句A=LOAD'/home/cloudera/data'AS(t1:tuple(t1a:int,t1b:int,t1c:int),t2:tuple(t2a:int,t2b:int,t2c:int));如果我转储数据,我期望结果DUMPA;((3,8,9),(4,5,6))((1,4,7),(3,7,5))((2,5,8),(9,5,8))但我得到的是,((3,8,9),)((1,4,7),)((2,5,8),)我