jjzjj

hadoop - 在 Pig 中按两列聚合数据分组

我有这些数据,需要按两列分组,然后对其他两个字段求和。假设这四列的名称是:OS,device,view,click。我基本上想知道每个操作系统和设备的计数,它们有多少次查看以及有多少次点击。(2,3346,1,)(3,3953,1,1)(25,4840,1,1)(2,94840,1,1)(14,0526,1,1)(37,4864,1,)(2,7353,1,)这是我目前的情况Aisdata:OS,device,view,clickB=GROUPABY(OS,device);Result=FOREACHB{GENERATEgroupASOS,device,SUM(view)ASvisits

hadoop - pig 是否支持 NOT IN 子句?

我在PIG中使用了In子句作为emp=FILTERemployee_tableBYemployee_idIN('873','809','819','829');现在我需要使用NOTIN子句no_emp=FILTERemployee_tableBYemployee_idNOTIN('873','809','819','829');产生错误为2016-08-2913:22:46,165[main]ERRORorg.apache.pig.tools.grunt.Grunt-ERROR1200:Syntaxerror,unexpectedsymbolatornear'NOT'有没有其他方法可以

hadoop - pig : CONCAT A relation OUTPUT to another RELATION

对于问题的错误措辞,我们深表歉意。我是stackoverflow的新手,也是PIG的新手,正在尝试自己进行实验。我有一个处理words.t文件和data.txt文件的场景。文字.txtword1word2word3word4数据.txt{"created_at":"18:47:31,SunSep302012","text":"RT@Joey7Barton:..giveaword1aboutwhethertheamericanswinsaRydercup.Imeansurelyhehasslightlymoreimportantmatters.#fami...","user_id":45

hadoop - pig 错误 : while reading the Attribute from a Relation

嗨,我正在使用下面的代码来执行订单操作,但它抛出了InvalidfieldprojectionwhereAsTheRelationHasthecolumn的错误。grunt>byts=ORDERBBYJB_DLT::job_idDESC;错误2016-09-2007:32:56,815[main]ERRORorg.apache.pig.tools.grunt.Grunt-ERROR1025:Invalidfieldprojection.Projectedfield[JB_DLT::job_id]doesnotexistinschema:group:tuple(JB_ASGNMNT::J

hadoop - 如何读取 pig 中的json数据?

我有以下类型的json文件:{"employees":[{"firstName":"John","lastName":"Doe"},{"firstName":"Anna","lastName":"Smith"},{"firstName":"Peter","lastName":"Jones"}]}我正在尝试执行以下pig脚本来加载json数据A=load'pigdemo/employeejson.json'usingJsonLoader('employees:{(firstName:chararray)},{(lastName:chararray)}');出现错误!!Unabletore

hadoop - 如何执行 pig 文件

我有一个简单的csv文件1234当我尝试以这种方式在其上运行一些代码时。grunt>SETjob.name'this_and_that';grunt>SETmapreduce.job.queuenameadhoc;grunt>SETdefault_parallel50;grunt>index_row=load'nmbr.csv'as(number:int);grunt>dumpindex_row;我得到了正确的结果。(1)(2)(3)(4)但是当我将代码保存在文件test.pig中时SETjob.name'this_and_that';SETmapreduce.job.queuenam

hadoop - 如何比较 PIG 中的两列并删除任何相同的值,无论大写/小写

我有3列,一个id列和2个名称列。有时2个名称列的值相同,但其中一个在一列中为大写,而在另一列中为小写。如何删除值相同(或具有相似字符)但大小写不同的值?例如:a=加载txt文件a=foreacha生成id,name1,name2当前输出:id1,james,JAMESid2,tom,Tomid3,Jim,Bobid4,Bill,billy预期输出:下面只有这1个结果a=比较name1和name2,如果name1中有任何相似的字符也在name2中,则将其过滤掉id3,吉姆,鲍勃感谢您的帮助! 最佳答案 假设您已经将数据加载到关系A中

hadoop - 在 PIG 中如何删除相似值

在我的pig脚本中,我有一个country1和country2的列以及一个id。在我的国家/地区字段中,一些值类似于以下内容。如何过滤掉至少有2个连续相同字符的相似值?例如:a=loadfilea=generateid,country1,country2输出:id1,us,usaid2,gb,gbaid3,in,indid4,in,usaexpectedoutput:id4,in,usa 最佳答案 使用SUBSTRING获取第3列的前两个字符并将其与第2列的值进行比较。B=FILTERABY(LOWER(A.$1)!=SUBSTRI

hadoop - Apache pig : Calculate number of days between a date and current date

我有一个格式为(#,title,year,rating,duration)的电影列表:1,TheNightmareBeforeChristmas,1993,3.9,45682,TheMummy,1932,3.5,43883,OrphansoftheStorm,1921,3.2,90624,TheObjectofBeauty,1991,2.8,61505,NightTide,1963,2.8,51266,OneMagicChristmas,1985,3.8,53337,Muriel'sWedding,1994,3.5,63238,Mother'sBoys,1994,3.4,57339,N

hadoop - pig 第三高的薪水

如何在pig中获得第三高的薪水,即使它包含重复项。请帮我解决这个问题。输入:Sri30000Abhi15000SAS15000mansa18000asdf5262dnaj20000harda20000 最佳答案 您可以使用RANK来实现这一点,并在不同的薪资关系中获得排名第三的记录。我将使用LIMIT。A=LOAD'data.txt'USINGPigStorage('\t')AS(name:chararray,salary:int);B=FOREACHAGENERATEA.Salary;C=DISTINCTB;D=ORDERCBYC