假设我有一组目标词:abcd和一个输入文件:adfsge12399cadifa2那么我应该返回:a3b0c1d2我怎样才能在pig身上做到这一点?谢谢! 最佳答案 首先从每行中删除重复的单词,然后运行单词统计。pig步:REGISTER'udf-1.0-SNAPSHOT.jar'definetuple_setcom.ts.pig.UniqueRecords();data=load''usingPigStorage();removeduplicatewordsfromeachlineunique=foreachdatagenerate
我有一组包含许多不同字段的推文raw_tweets=LOAD'input.tsv'USINGPigStorage('\t')AS(tweet_id,text,in_reply_to_status_id,favorite_count,source,coordinates,entities,in_reply_to_screen_name,in_reply_to_user_id,retweet_count,is_retweet,retweet_of_id,user_id_id,lang,created_at,event_id_id,is_news);我想找出每个日期最常用的词。我设法按日期对
我想在pig中使用UDF相对于另一列对一列进行分类。我有数据Id,name,age1,jhon,312,adi,153,sam,254,lina,28预期输出1,jhon,31,30-352,adi,15,10-153,sam,25,20-254,lina,28,25-30请推荐 最佳答案 您可以在没有UDF的情况下执行此操作。假设您已将数据加载到关系A。B=FOREACHAGENERATEA.Id,A.name,A.age,(A.age%5==0?A.age-5:(A.age/5)*5)aslower_age,(A.age%5==
我在运行pig流媒体时遇到问题。当我启动一个交互式pig实例时(仅供引用,我正在通过SSH/Putty在交互式pigAWSEMR实例的主节点上执行此操作)只有一台机器我的pig流媒体工作完美(它也适用于我的WindowsClouderaVM镜像).但是,当我切换到使用多台计算机时,它只是停止工作并出现各种错误。注意:我能够在多计算机实例上毫无问题地运行没有任何流命令的Pig脚本。我所有的pig工作都是在pigMapReduce模式下完成的,而不是–x本地模式。我的python脚本(stream1.py)在上面有这个#!/usr/bin/envpython下面是我到目前为止尝试过的选项的
我写了一个简单的程序来测试java中的嵌入式pig在mapreduce模式下运行。我运行的服务器hadoop版本是0.20.2-cdh3u4a,pig版本是0.10.0-cdh3u4a。当我尝试在本地模式下运行时,它运行成功。但是当我尝试以mapreduce模式运行时,它给了我错误。我使用以下命令运行我的程序,如http://pig.apache.org/docs/r0.9.1/cont.html#embed-java中所示javac-cppig.jarEmbedPigTest.javajavac-cppig.jar:.:/etc/hadoop/confEmbedPigTest.jav
我正在使用PIG处理HBase表中的行。HBase表中的值存储为字节数组。我不知道我是否必须编写一个将字节数组转换为各种类型的UDF,或者pig是否会自动执行此操作。我有以下脚本:raw=LOAD'hbase://TABLE'USINGorg.apache.pig.backend.hadoop.hbase.HBaseStorage('CF:I')AS(product_id:bytearray);ids=FOREACHrawGENERATE(int)product_id;dumpids;我得到一个括号'()'的列表。根据docs,它应该工作。我检查了hbaseshell中的值它们都是va
Hive可以配置为hive.exec.scratchdir=/user/${user.name}/tmp/hive我可以用Pig做类似的事情吗?我已尝试修改pig.properties文件,但似乎没有任何效果。pig.temp.dir=/user/${user.name}/tmp/pig我可以用别名替换pig命令,但我希望将更改写入配置文件。pig-Dpig.temp.dir=/user/`whoami`/tmp/pig谢谢!更新:我们决定将/tmp/用于生产系统。这是一个问题的原因是因为我们正在运行MapR,它似乎试图将临时目录放入用户目录,并在Hive上成功,但在Pig上却没有。
这就是我想要做的: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
我是pig新手,一直在尝试让它在我的Windows7机器上运行。我的hadoop(2.4.0)在我的本地机器上运行良好,但每当我尝试运行一个简单的Pig脚本时,每当我尝试转储文件内容时它都会抛出错误。离开类似问题的解决方案,发现here,我曾尝试使用Ant重建我的Pig(0.12.1)。每当我运行时antcleanjar-withouthadoop-Dhadoopversion=23我收到以下错误:Buildfile:C:\pig-0.12.1-src\build.xml......[org.apache.ftpserver#ftpserver-core;1.0.0]in[hadoop
我已经在同一台机器上安装了Hadoop2.6.5和Pig0.16。我跑了pig然后我加载了一个文件使用a=load'/user/hduser/input/palabras.txt';我得到了这个信息INFOorg.apache.hadoop.conf.Configuration.deprecation-fs.default.nameis已弃用。相反,使用fs.defaultFS但我想知道如果我已经在core-site.xml文件中更改了该属性,为什么会出现此消息?我希望清楚,如果需要其他信息,请告诉我。谢谢! 最佳答案 它与您的co