草庐IT

使用 Maven 在 Eclipse 中运行 Pig 时出现 java.lang.VerifyError

我正在尝试从Eclipse中执行ApachePig代码,如http://pig.apache.org/docs/r0.12.0/test.html中所述下面是代码:pom.xml4.0.0com.pigtutorial.exampleschap010.1jarchap01http://maven.apache.orgUTF-8org.apache.hadoophadoop-common2.3.0org.apache.hadoophadoop-core1.2.1joda-timejoda-time2.3log4jlog4j1.2.17jlinejline0.9.5org.antlrant

java - 使用 mapreduce : Java, Pig 解析 twitter json

我敢肯定您可能会发现这个问题有些“重复”,但我敢肯定我在发布相同问题之前已经完成了研究。我也为在此处的一个线程中发布Java和Pig问题而道歉,但只是不想为同一问题创建另一个线程。我得到了一个包含一些Twitter摘录的json文件。我也在尝试使用javaMR&Pig执行解析,但遇到了问题。下面是我尝试编写的Java代码:publicclasstwitterDataStore{privatestaticfinalObjectMappermapper=newObjectMapper();publicstaticabstractclassMapextendsMapReduceBaseimp

hadoop - 使用 pig 或 hive 将 CSV 数据加载到 HBase

您好,我创建了一个将数据加载到hbase中的pig脚本。我的csv文件存储在hadoop位置/hbase_tables/zip.csvpig脚本register/home/hduser/pig-0.12.0/lib/pig-0.8.0-core.jar;A=LOAD'/hbase_tables/zip.csv'USINGPigStorage(',')as(id:chararray,zip:chararray,desc1:chararray,desc2:chararray,income:chararray);STOREAINTO'hbase://mydata'USINGorg.apach

python - Pig Python UDF 和 lxml

我有一个使用lxml的PythonUDF。我使用UDF的Pig作业失败了:File"PigParse.py",line10,inParseToPigImportError:NomodulenamedlxmlPython脚本作为独立程序运行良好,它的第10行是:fromlxmlimportetree我是否需要以某种方式将lxml分发到hadoop集群,如果需要,我应该如何使用以及应该使用哪个版本?我见过使用分发nltk的示例Hadoop-文件但对Pig来说什么都没有。TIA!!! 最佳答案 我认为我的问题是因为我使用的是Jython:

hadoop - 增加 pig 的映射器

我正在使用pig通过CqlStorage从Cassandra加载数据。我有4个数据节点,每个节点可以有7个映射器,Cassandra中有大约3000万个数据。当我这样跑的时候使用CqlStorage加载'cql://keyspace/columnfamily'它需要27个映射器才能运行。但是如果我在加载函数中给出where子句,比如LOAD'cql://keyspace/columnfamily?where_clause=id%3D100'使用CqlStorage它总是需要一个映射器。谁能帮我增加mapper 最佳答案 从您的WHE

hadoop - 如何以编程方式确定 Pig 执行模式

我们如何确定pig是在LocalMode还是MapReduceMode下运行?是否有任何特定的命令可以找到它? 最佳答案 为什么需要这个?-xlocal和pig或-xmapreduce是2种模式的命令行选项。我们以编程方式做PigServerpigServer=newPigServer("local");PigServerpigServer=newPigServer("mapreduce");我认为我们可以记录它。可能有更好的做法。 关于hadoop-如何以编程方式确定Pig执行模式,我

hadoop - 在 pig LOAD 语句中使用位于远程 http 服务器上的文件?

我正在尝试在pig作业中读取一个txt文件并将其与位于我们的hdfs上的数据结合起来。所以基本上我想做的是:current_ids=LOAD'http://host/dir/file.txt'USINGPigStorage(',')AS(id:int);bindings=LOAD'$hdfs_path'USINGAvroStorage();joined_ids=JOINcurrent_idsBYid,bindingsbyuser_id;首先:这可能吗?我想是的。第二:我该怎么做,或者我可以在哪里寻找更多答案。令人惊讶的是,我一直被困在这个问题上:)。如果可能的话,我们宁愿不必将txt文

hadoop - 为什么我的 pig 作业中我的 avro 输出文件如此之小而如此之多?

我正在运行一个执行一系列连接并使用AvroStorage()编写的pig脚本一切运行良好,我得到了我想要的数据……但它被写入了845个avro文件(每个约30kb)。这似乎根本不对......但我似乎找不到任何我可能已经更改的设置,从我以前的1大avro输出到845小avros(除了添加另一个数据源)。这会改变什么吗?我怎样才能把它恢复到一个或两个文件?谢谢! 最佳答案 一种可能性是更改您的block大小。如果你想回到less文件,你也可以尝试使用parquet。通过pig脚本转换您的.avro文件并将其存储为.parquet文件,

hadoop - Spark 上的 Apache pig

我正在使用hadoop2.2.0、cassandra2.0.6、pig0.12和spark1.0.1。我正在使用Pig使用CassandraStorage处理程序从cassandra读取数据并进行分析操作。我知道spark接受hadoop输入格式(pig)数据。所以我想通过pig查询将读取的数据传递给spark。我该怎么做,有什么建议吗? 最佳答案 您可以将数据存储在HDFS中,然后从Spark中读取。Spark实际上是从HDFS读取的。如果您在Spark中使用名称而不是索引(作为Pig中的别名),您可以创建一个案例类来提供名称。

hadoop - 如何从 apache pig 下的一个包中找到所有可能的排列

我正在尝试使用apachepig找到所有可能的组合,我能够生成排列,但我想消除值的复制我编写了这段代码:A=LOAD'data'ASf1:chararray;DUMPA;('A')('B')('C')B=FOREACHAGENERATE$0ASv1;C=FOREACHAGENERATE$0ASv2;D=CROSSB,C;我得到的结果是这样的:DUMPD;('A','A')('A','B')('A','C')('B','A')('B','B')('B','C')('C','A')('C','B')('C','C')但我想要获得的结果如下所示DUMPR;('A','A')('A','B')