草庐IT

pig-without

全部标签

hadoop - 使用 Hadoop Pig 从文本文件加载数据,每条记录在多行上?

我的数据文件格式如下:U:johnT:2011-03-0312:12:12L:sandiego,CAU:johnT:2011-03-0312:12:12L:sandiego,CA使用Hadoop/pig/whatever阅读此文件以进行分析的最佳方法是什么? 最佳答案 有什么方法可以控制数据的写入方式吗?编写一个将其移动到制表符分隔的过程将帮助您开箱即用。否则,编写自定义记录阅读器(使用Pig或JavaMapReduce)可能是您唯一的选择。两者都不是很难。 关于hadoop-使用Had

hadoop - EMR : how to include semicolon in regex argument of EXTRACT function 上的 pig

我正在处理Pig中的一些数据,其中包括感兴趣的字符串,可以选择用分号分隔并以随机顺序排列,例如test=12345;foo=bartest=12345foo=bar;test=12345以下代码应提取测试“键”的字符串值:blah=FOREACHdataGENERATEFLATTEN(EXTRACT(str_of_interest,'test=(\\S+);?'))AS(test:chararray);但是,在运行代码时,我遇到了以下错误:mismatchedcharacter''expecting'''2013-04-1604:46:05,245[main]ERRORorg.apac

java - Pig - 未处理的内部错误 NoClassDefFoundException

我有一个特定的过滤问题(此处描述:Pig-Howtomanipulateandcomparedates?),所以正如我们告诉我的那样,我决定编写自己的过滤UDF。这是代码:importjava.io.IOException;importorg.apache.pig.FilterFunc;importorg.apache.pig.data.Tuple;importorg.joda.time.*;importorg.joda.time.format.*;publicclassDateCloseEnoughextendsFilterFunc{intnbmois;/**@paramnbMois

hadoop - Pig Latin(在 foreach 循环中过滤第二个数据源)

我有2个数据源。一个包含API调用列表,另一个包含所有相关的身份验证事件。每个Api调用可以有多个身份验证事件,我想找到以下身份验证事件:a)包含与Api调用相同的“标识符”b)在Api调用后一秒内发生c)经过上述过滤后最接近的ApiCall。我曾计划在foreach循环中遍历每个ApiCall事件,然后在authevents上使用过滤器语句来找到正确的事件-然而,这似乎不可能(USINGFilterinaNestedFOREACHinPIG)谁能建议其他方法来实现这一目标。如果有帮助,这是我尝试使用的Pig脚本:apiRequests=LOAD'/Documents/ApiReque

java - Pig - 如何在静默模式下运行脚本?

我有这个java程序,它在MapReduce模式下执行一个pig脚本。这是代码:importjava.io.IOException;importjava.util.Properties;importorg.apache.pig.ExecType;importorg.apache.pig.PigServer;importorg.apache.pig.backend.executionengine.ExecException;publicclasspigCV{publicstaticvoidmain(Stringargs[]){PigServerpigServer;try{Properti

hadoop - Apache Pig 本地处理 bz2 文件?

我可以看到pig可以本地读取.bz2文件,但我不确定它是否运行明确的作业将bz2拆分为多个输入拆分?谁能证实这一点?如果pig正在运行一个创建输入拆分的作业,有没有办法避免这种情况?我的意思是让MapReduce框架在框架级别将bz2文件拆分为多个输入片段的方法? 最佳答案 可拆分输入格式未在hadoop(或只为您运行MR作业的pig中)中实现,因此一个文件由一个作业拆分,然后由第二个作业处理拆分。输入格式定义了一个isSplittable方法,该方法定义原则上文件格式是否可以拆分。除此之外,大多数基于文本的格式将检查文件是否使用已

java - 使用 Java 中的 Pig/Piglatin 在 HBase 中排序

我在shell中创建了一个HBase表并添加了一些数据。在http://hbase.apache.org/book/dm.sort.html写的是数据集首先按行键排序,然后按列排序。所以我在HBaseShell中尝试了一些东西:hbase(main):013:0>put'mytable','key1','cf:c','val'0row(s)in0.0110secondshbase(main):011:0>put'mytable','key1','cf:d','val'0row(s)in0.0060secondshbase(main):012:0>put'mytable','key1',

hadoop - PIG - 加载错误继续

pig的新手。我正在将数据加载到这样的关系中:raw_data=LOAD'$input_path/abc/def.*;它工作得很好,但如果找不到任何匹配def.*的文件,整个脚本就会失败。这是一种在没有匹配项时继续执行脚本其余部分的方法。只产生一个空集?我尝试过:raw_data=LOAD'$input_path/abc/def.*ONERRORIgnore();但这并没有解析。 最佳答案 您可以编写返回文件或空元组的自定义加载UDF。http://wiki.apache.org/pig/UDFManual

ruby-on-rails - PIG_HOME 路径 ubuntu 的问题

我有RoR项目,在构建并运行他之后,我发现了下一个问题:PIG_HOMEnotset:requiresPig>=0.7.02016-01-2214:31:56+0200Failtorunpig.exit之后我下载并在~/.bashrc文件中设置PIG_HOME路径和JAVA_HOME:exportPIG_HOME=/usr/lib/pig/pig-0.15.0exportPATH=$PATH:$PIG_HOME/binexportJAVA_HOME=/usr/lib/jvm/jdk1.8.0_71exportPATH=$PATH:$JAVA_HOME/bin然后重新启动PC并再次尝试构

hadoop - Pig 将如何处理倾斜连接?

加入数据集时,您可以选择告诉Pig键可能像下面的语句那样倾斜。...JOINdata1BYmy-join-keyUSING‘skewed’...PIG将获得my-join-key值的估计值,以查看是否有某些值的出现频率比其他值高得多。这样做会产生一些间接费用(10%左右,但这取决于很多因素)。这些信息在map/reduce作业中是如何准确使用的?如果存在偏差,那么PIG是否会尝试对键进行分区以在reducer之间更加平衡?在这种情况下,PIG会跨mapper任务复制较小的数据集,还是只使用更多的reducer? 最佳答案 根据doc