我试图得到地图减少功能与Python使用mongo-hadoop。hadoop正在工作,hadoop流媒体正在与python一起工作,mongo-hadoop适配器正在工作。然而,使用python的mongo-hadoop流媒体示例不起作用。当试图在流/示例/金库中运行示例时,我得到以下错误:
$user@host:~/git/mongo-hadoop/streaming$hadoop-jar-target/mongo-hadoop-streaming-assembly-1.0。1.jar-mapper-examples/treasury/mapper。py-减速器示例/库存/减速器。py-inputformatcom.mongodb.hadoop。映射。MongoInputFormat-outputformat com.mongodb.hadoop。映射。MongoOutputFormat-inputURImongodb://127.0.0.1/mongo_hadoop.yield_historical.in-输出URImongodb://127.0.0.1/mongo_hadoop.yield_historical.streaming.out
13/04/09 11:54:34 INFO streaming.MongoStreamJob: Running
13/04/09 11:54:34 INFO streaming.MongoStreamJob: Init
13/04/09 11:54:34 INFO streaming.MongoStreamJob: Process Args
13/04/09 11:54:34 INFO streaming.StreamJobPatch: Setup Options'
13/04/09 11:54:34 INFO streaming.StreamJobPatch: PreProcess Args
13/04/09 11:54:34 INFO streaming.StreamJobPatch: Parse Options
13/04/09 11:54:34 INFO streaming.StreamJobPatch: Arg: '-mapper'
13/04/09 11:54:34 INFO streaming.StreamJobPatch: Arg: 'examples/treasury/mapper.py'
13/04/09 11:54:34 INFO streaming.StreamJobPatch: Arg: '-reducer'
13/04/09 11:54:34 INFO streaming.StreamJobPatch: Arg: 'examples/treasury/reducer.py'
13/04/09 11:54:34 INFO streaming.StreamJobPatch: Arg: '-inputformat'
13/04/09 11:54:34 INFO streaming.StreamJobPatch: Arg: 'com.mongodb.hadoop.mapred.MongoInputFormat'
13/04/09 11:54:34 INFO streaming.StreamJobPatch: Arg: '-outputformat'
13/04/09 11:54:34 INFO streaming.StreamJobPatch: Arg: 'com.mongodb.hadoop.mapred.MongoOutputFormat'
13/04/09 11:54:34 INFO streaming.StreamJobPatch: Arg: '-inputURI'
13/04/09 11:54:34 INFO streaming.StreamJobPatch: Arg: 'mongodb://127.0.0.1/mongo_hadoop.yield_historical.in'
13/04/09 11:54:34 INFO streaming.StreamJobPatch: Arg: '-outputURI'
13/04/09 11:54:34 INFO streaming.StreamJobPatch: Arg: 'mongodb://127.0.0.1/mongo_hadoop.yield_historical.streaming.out'
13/04/09 11:54:34 INFO streaming.StreamJobPatch: Add InputSpecs
13/04/09 11:54:34 INFO streaming.StreamJobPatch: Setup output_
13/04/09 11:54:34 INFO streaming.StreamJobPatch: Post Process Args
13/04/09 11:54:34 INFO streaming.MongoStreamJob: Args processed.
13/04/09 11:54:36 INFO io.MongoIdentifierResolver: Resolving: bson
13/04/09 11:54:36 INFO io.MongoIdentifierResolver: Resolving: bson
13/04/09 11:54:36 INFO io.MongoIdentifierResolver: Resolving: bson
13/04/09 11:54:36 INFO io.MongoIdentifierResolver: Resolving: bson
**Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/mapreduce/filecache/DistributedCache**
at org.apache.hadoop.streaming.StreamJob.setJobConf(StreamJob.java:959)
at com.mongodb.hadoop.streaming.MongoStreamJob.run(MongoStreamJob.java:36)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
at com.mongodb.hadoop.streaming.MongoStreamJob.main(MongoStreamJob.java:63)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.hadoop.util.RunJar.main(RunJar.java:208)
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.mapreduce.filecache.DistributedCache
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 10 more
如果有人能透露一些信息,那将是一个很大的帮助。
完整信息:
据我所知,我需要让以下四件事发挥作用:
简而言之,我已经把一切都做好了,直到第四步。使用(https://github.com/danielpoe/cloudera)我已经安装了云4
你安装了最新的pymongo_hadoop连接器吗?您运行的其他软件的版本是什么?
我在stackoverflow上看到过一种使用zip文件存储引用的python模块来执行hadoop流作业的技术。 在执行作业的映射阶段,我遇到了一些错误。我相当确定它与zip'd模块加载有关。 为了调试脚本,我使用命令行管道通过sys.stdin/sys.stdout运行我的数据集,进入我的映射器和缩减器,如下所示: 输入数据文件的头。txt|./映射器。py |排序-k1,1|./reduce
我对Hadoop和MapReduce完全陌生,正在努力完成它。我正在尝试用python开发一个mapduce应用程序,在这个应用程序中,我使用来自2. CSV文件的数据。我只是在mapper中读取这两个文件,然后将文件中的键值对打印到sys.stdout 当我在一台机器上使用它时,该程序运行正常,但是使用Hadoop流式处理时,我遇到了错误。我认为我在Hadoop上的映射器中读取文件时犯了一些错误
我正试图在一些维基百科转储(以压缩的bz2形式)上运行一个带有java Mapper/Reducer的hadoop流作业。我正在尝试使用WikiHadoop,这是Wikimedia最近发布的一个界面。 WikiReader_Mapper。JAVA 维基阅读器。JAVA 我正在运行的命令是 我收到的错误信息是 我更熟悉新的hadoop API和旧的。由于我的mapper和reducer代码位于两个不
我正在尝试使用hadoop流,其中我有一个java类用作映射器。为了简化问题,我们假设java代码如下: 我可以将其编译为“javac Test.java”,并从命令行运行它,如下所示: 让我们假设我在HDFS中有一个文件:a.dat 现在我尝试在hadoop流中使用(Test.java)作为映射器。我为[1]-mapper命令行选项提供了什么。它应该像下面这样吗?[2]-file命令行选项。我需
当我学习mapreduce时,其中一个关键组件是组合器。这是映射器和还原器之间的一个步骤,基本上在映射阶段结束时运行还原器,以减少映射器输出的数据行数。随着我需要处理的数据的大小增加(以万亿字节的规模),减少步骤变得非常慢。我和我的一个朋友谈过,他说这也是他的经历,他没有使用组合器,而是使用哈希函数来划分他的reduce键,这减少了reduce步骤中每个键的值的数量。我试过了,效果很好。有没有其他
Hadoop 是一个分布式系统基础架构,由Apache基金会开发。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力高速运算和存储。Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有着高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上。而且它提供高传输率(high throughpu
我在Ubuntu 14.04上使用Hadoop-1.2.1 我正在尝试使用Flume-1.6.0将数据从twitter流式传输到HDFS。我已经下载了Flume-sources-1.0-SNAPSHOT。jar并将其包含在flume/lib文件夹中。我已经设置了flume-sources-1.0-SNAPSHOT的路径。jar在conf/FLUME环境中显示为FLUME_CLASSPATH。这是我
主要内容:下载Hadoop,从命令提示符下载Hadoop,安装Hadoop,验证Hadoop安装,在Hadoop上安装SolrSolr可以和Hadoop一起使用。 由于Hadoop是用于处理大量数据,Solr帮助我们从这么大数据源中找到所需的信息。在本节中,我们将了解如何在系统上安装Hadoop。 下载Hadoop 下面给出了如何将Hadoop下载到系统中的步骤。 第1步 - 打开Hadoop主页 - www.hadoop.apache.org/。 单击链接版本,如下面的屏幕截图中突出显示。 它