草庐IT

pig-without

全部标签

hadoop - 如何避免Hadoop PIG和Hive中的坏记录?

您好,我是Hadoop的新手,我发现可以使用SkipBadRecord类在Javamapreduce中跳过任何输入格式的坏记录,所以我只想知道这在Pig和Hive中如何实现? 最佳答案 Hive中的错误记录处理要在hive中过滤坏记录,可以在query中开启skip模式。跳过模式的Hive配置是:SETmapred.skip.mode.enabled=true;您需要在配置单元查询之前设置上述命令。您还可以通过提供以下参数来限制配置:SETmapred.map.max.attempts=100;SETmapred.reduce.ma

hadoop - PL/SQL 能否可靠地转换为 Pig Lating 或带有 Pig Latin 和 Hive 的 Oozie 管道

我很好奇用Hadoop替换我的Oracle数据库,并且正在学习Hadoop生态系统。如果我要走这条路,我有很多PL/SQL脚本需要替换。我的印象是,通过一些努力,我能够将任何PL/SQL脚本转换/翻译成类似的PigLatin脚本。如果不仅仅是PigLatin,那么通过Oozie结合Hive和Pig。这是正确的吗? 最佳答案 虽然大多数SQL语句都可以翻译成等效的Pig和/或Hive语句,但hadoop文件系统固有的一些限制会传递给语言。主要限制是HDFS是一个一次写入,多次读取的系统。这意味着包含UPDATESQL命令或DELETE

hadoop - 从 pig 身上连续获得最大值

从pig身上获得最大值(value):学生(rollno,标记)rollno.marks124226350430535输出要求:最大分数卷号。输出:350假设A包含student表的值如何获取rollno。满分我试过这个:B=GROUPABYrollnoC=foreachBgenerategroup,max(A.marks);但是它导致所有记录都可以在pig中帮助我 最佳答案 最易读的方法是ORDER您的数据,然后选择带有LIMIT1的顶部记录:A=LOAD'input'AS(rollno,marks);B=ORDERABYmark

Hadoop Pig 关联使用

我有一个向量列表,我想通过输入向量(数字)运行相关性。我应该如何存储我的向量列表,以及如何传入我的输入向量并将其传递给Pig'sCOR()function?--SETcommand?whatisitusedfor?thisdoesn'tworkSETinput_nums{0,2,0,1,2,0,0,0,0}ASbag{}--storingvectorsinthisformatdoesn'tseemtowork--importvia:data=LOADmynumsAS(id:long,nums:bag{});1\t{1,3,3,4,5}2\t{3,4,5,6,6}--thisseemst

hadoop - 使用 Java 运行 EmbeddedPig 时,Pig 脚本中的 ORDER BY 作业失败

我有以下pig脚本,它使用gruntshell完美运行(将结果存储到HDFS没有任何问题);但是,如果我使用JavaEmbeddedPig运行相同的脚本,最后一个作业(ORDERBY)会失败。如果我将ORDERBY作业替换为其他作业,例如GROUP或FOREACHGENERATE,则整个脚本将在JavaEmbeddedPig中成功运行。所以我认为是ORDERBY导致了这个问题。有人有这方面的经验吗?任何帮助将不胜感激!Pig脚本:REGISTERpig-udf-0.0.1-SNAPSHOT.jar;user_similarity=LOAD'/tmp/sample-sim-score-r

mongodb - 如何将 _id 数据从 mongodb 加载到 Apache Pig

我是Hadoop和ApachePig的新手。我在mongodb中有一个名为用户的集合,具有以下结构。我想通过以下方式将_id加载到ApachePig中:B=LOAD'mongodb://localhost:27017/test.user'USINGcom.mongodb.hadoop.pig.MongoLoader('_id:chararray,firstName:chararray,email:chararray')AS(UID,NAME,EMAIL);但我无法加载它。名称和电子邮件已完美加载。我正在使用这些jar文件REGISTER//avro-1.7.5.jarREGISTER/

hadoop - Pig 程序无缘无故地卡在一个阶段

我正在处理大小为400MB的数据,该脚本有5个不同的部分和5个存储命令,如果我一次只切换一个存储命令评论所有其他命令,pig脚本会非常有效。但如果所有5个存储命令都打开,作业浏览器(hue)会卡在任何特定阶段,然后它只会继续重新尝试作业而没有任何进展。没有错误,日志也没有错误和警告。我认识到的问题可能是由于环境问题造成的,因为该脚本也曾与-M属性一起正常工作,但另一次却失败了。 最佳答案 如果每个STORE数据都依赖于之前的STORE,那么你可以在每个STORE之后使用exec命令。这将确保您的STORE命令在下一组命令/STORE

java - 带有 datafu : Cannot resolve UDF's 的 apache PIG

我正在尝试从这里开始快速入门:http://datafu.incubator.apache.org/docs/datafu/getting-started.html我几乎尝试了所有方法,但我确定这一定是我的错。我已经试过了:导出PIG_HOME、CLASSPATH、PIG_CLASSPATH使用-cpdatafu-pig-incubating-1.3.0.jar启动pig在本地和hdfs中注册datafu-pig-incubating-1.3.0.jar=>都成功(至少没有显示错误)没有任何帮助在pig身上试试这个:registerdatafu-pig-incubating-1.3.0

python - Pig//Spark 作业看不到 Python 模块

我的hadoop集群有一个反复出现的问题,偶尔功能代码会停止查看位于正确位置的python模块。我正在寻找可能遇到过相同问题的人的提示。当我第一次开始编程并且代码停止工作时,我在这里问了一个关于SO的问题,有人告诉我去sleep,早上它应该可以工作,或者其他一些“你是个傻瓜,你一定有改变了一些东西”之类的评论。我多次运行该代码,它有效,我去sleep了,早上我尝试再次运行它,但它失败了。有时我使用CTRL+C终止作业,有时我使用CTRL+Z。但这只会占用资源,除此之外不会引起任何其他问题——代码仍在运行。我还没有在代码运行后立即看到这个问题。这通常发生在第二天早上,当我在10小时前离开

hadoop - 如何读取 PIG UDF 中的静态文件

我是PIG和Hadoop的新手。我写了一个PIGUDF,它对String进行操作并返回一个字符串。我实际上使用了一个已经存在的jar中的类,它包含udf中的业务逻辑。类构造函数将2个文件名作为输入,用于构建一些用于处理输入的字典。如何让它在mapreduce模式下工作我尝试在pig本地模式下传递文件名它工作正常。但是我不知道如何让它在mapreduce模式下工作?分布式缓存能否解决问题?这是我的代码REGISTERtokenParser.jarREGISTERsampleudf.jar;DEFINETOKENPARSERcom.yahoo.sample.ParseToken('conf