我是整个Hadoop/Hortonworks/Pig的新手,所以请问这个问题。我已经安装了Hortonworks沙盒。我正在尝试加载一个TwitterJSON文件并对该文件执行一些查询,但我目前卡在加载文件部分。我知道我应该使用Elephant-bird以便使用JsonLoader()加载JSON文件(不指定JSON模式),所以我从git存储库下载了Elephant-bird并包含了jar文件Elephant-bird\repo\com\twitter\elephant-bird\2.2.3\elephant-bird-2.2.3.jar在Hortonworks沙盒中。这是我的Pig脚
我有一个日志文件,其中包含来自多个域的日志。现在我想对它们进行一些分析并将输出存储在一个名为域的目录中。我在日志中将域作为字段值:STOREoutputlogsINTO'testpath/DOMAIN/logsUSING....这可能吗?或者我只能将输出存储在硬编码文件路径中吗? 最佳答案 如果域的名称是outputlogs中的一个字段,那么您可以使用MultiStorage从存钱jar。像这样的东西:STOREoutputlogsINTO'testpath/DOMAIN/logs'USINGMultiStorage('testpa
我已经配置了一个包含三个节点的Hadoop集群。所有节点都工作正常并已连接。我已经在HDFS中上传了28GB的文件并执行Pig脚本来处理该文件。当我执行脚本时。它仅在单个节点中运行。能否请您给我建议并解释为什么它只在单节点上运行?我在配置中遗漏了什么吗?我使用的是Hadoop2.2.0和Pig0.12版本。 最佳答案 您是否尝试在脚本中设置parallel?您有三个节点,因此您可以尝试设置为parallel3。将它与以下任何运算符一起使用是有意义的:组合作小组加入限制订购与众不同语法示例:groupxbyyparallel3;你的文
我已经使用Cloudera管理器CDH4设置了一个3节点Hadoop集群。当在mapreduce模式下运行Pig作业时,对于相同的数据集,它花费的时间是本地模式的两倍。这是预期的行为吗?另外,是否有任何文档可用于mapreduce作业的性能调整选项?非常感谢您的帮助! 最佳答案 这可能是因为您使用的是玩具数据集,并且mapreduce的开销大于并行化的好处 关于hadoop-Piglocal与mapreduce模式性能比较,我们在StackOverflow上找到一个类似的问题:
首先,我正在根据集群运行ApachePig版本0.11.0-cdh4.3.0(已导出)。然而,我的构建使用0.11.0-cdh4.5.0,我知道这不是一个明智的决定,但我认为这与我在这里遇到的问题无关,因为它都是Pigv0.11.0我有一个结构看起来像这样的脚本(两个自定义udf都返回DataByteArray类型,这是一个有效的Pig类型afaik):LOADUSINGparquet.pig.ParquetLoader();FOREACHGENERATEsomeofthefieldsGROUPBY(a,b,c)FOREACHGENERATEFLATTEN(group)AS(a,b,c
我有几个pig别名:a:{f1:long,f2:float}b:{f1:long,f2:float}c:{f1:long,f2:float}每个只包含一个记录(它们由foreach(group...all)generate...创建)我想通过将以上内容合并为一个来创建一个“总摘要”别名(使用JsonStorage存储并使用hadoopfs-get收集,然后加载到Python中...)为此我愿意grand=CROSSabc;我明白了grand:{a::f1:long,a::f2:float,b::f1:long,b::f2:float,c::f1:long,c::f2:float}但是,
我正在使用pig命令运行shell脚本pig-param_filesome-filename但我收到以下异常:FileNotFoundException。我检查过,该文件存在于给定位置。什么可能导致问题?Pig启动前的错误ERROR2997:EncounteredIOException.Filesome-file.propertiesdoesnotexistjava.io.FileNotFoundException:Filesome-file.propertiesdoesnotexistatorg.apache.hadoop.fs.RawLocalFileSystem.getFileS
大家我实现了自定义聚合pigUDF。UDF实现了Algebraic接口(interface),并且有3个类-Initial、Intermed和Final在不同阶段进行工作。它工作正常,但效率有点低。UDF使用的算法有点重-特别是在单个值上运行时。当在更大的数据组上运行时,它会更有效地工作——比如——一次100个。我观察到Initial类总是使用单个值调用,然后与Intermed和Final类组合。我知道在这种情况下有Accumulator接口(interface),但我找不到关于如何将它与代数UDF一起使用的文档。所以我的问题是-有没有办法让我“强制”pig将更多值传递给初始计算-使用
我的问题的示例数据:112123421212331135555115444423422227891111FieldDescription:col1cust_id,col2zip_code,col3transaction_id.Usingpigscriptingineedtofindthebelowquestion:foreachcust_idineedtofindthezipcodemostlyusedforlast3transactions.ApproachIusedsofar:1)Grouprecordswithcust_id:(1,{(1,12,1234),(1,13,5555)
有人遇到Pig过滤器无法正常工作的问题吗?而且通常表现得很愚蠢。例如,我有一些看起来像这样的日志。a1(2013-12-2502:55:08,000085594,15468,80365991,1387940111723)(2013-12-2502:55:08,000085594,63943,80365991,1387940111723)(2013-12-2502:55:08,000085594,64014,80365991,1387940111723)decribea1a1:{time:chararray,id:chararray,buckets::bucket:int,chararr