- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在使用 Pydoop 连接到 python 程序内的 hdfs 文件系统。这个 python 程序尝试在 hdfs 中读取/写入文件。当我尝试执行时出现错误。
用于执行的命令:命令:
hadoop jar /usr/share/bigdata/hadoop-1.2.0/contrib/streaming/hadoop-streaming-1.2.0.jar -file ./Methratio.py -mapper './Methratio.py -d /user/hadoop/gnome.fa -r -g -o hdfs://ai-ole6-main.ole6.com:54311/user/hadoop/bsmapout.txt hdfs://ai-ole6-main.ole6.com:54311/user/hadoop/Example.bam ' -input sampleinput.txt -output outfile
错误:
回溯(最近调用最后):
File "/tmp/hadoop-hadoop/mapred/local/taskTracker/hadoop/jobcache/job_201501251859_0001/attempt_201501251859_0001_m_000000_1/work/./Methratio.py", line 2, in <module>
import sys, time, os, array, optparse,pydoop.hdfs as hdfs
File "/usr/local/lib/python2.7/site-packages/pydoop-1.0.0_rc1-py2.7.egg/pydoop/hdfs/__init__.py", line 98, in <module>
init()
File "/usr/local/lib/python2.7/site-packages/pydoop-1.0.0_rc1-py2.7.egg/pydoop/hdfs/__init__.py", line 92, in init
pydoop.hadoop_classpath(), _ORIG_CLASSPATH, pydoop.hadoop_conf()
File "/usr/local/lib/python2.7/site-packages/pydoop-1.0.0_rc1-py2.7.egg/pydoop/__init__.py", line 103, in hadoop_classpath
return _PATH_FINDER.hadoop_classpath(hadoop_home)
File "/usr/local/lib/python2.7/site-packages/pydoop-1.0.0_rc1-py2.7.egg/pydoop/hadoop_utils.py", line 551, in hadoop_classpath
jars.extend([self.hadoop_native(), self.hadoop_conf()])
File "/usr/local/lib/python2.7/site-packages/pydoop-1.0.0_rc1-py2.7.egg/pydoop/hadoop_utils.py", line 493, in hadoop_conf
PathFinder.__error("hadoop conf dir", "HADOOP_CONF_DIR")
File "/usr/local/lib/python2.7/site-packages/pydoop-1.0.0_rc1-py2.7.egg/pydoop/hadoop_utils.py", line 385, in __error
raise ValueError("%s not found, try setting %s" % (what, env_var))
ValueError: hadoop conf dir not found, try setting HADOOP_CONF_DIR
java.lang.RuntimeException: PipeMapRed.waitOutputThreads(): subprocess failed with code 1
at org.apache.hadoop.streaming.PipeMapRed.waitOutputThreads(PipeMapRed.java:362)
at org.apache.hadoop.streaming.PipeMapRed.mapRedFinished(PipeMapRed.java:576)
at org.apache.hadoop.streaming.PipeMapper.close(PipeMapper.java:135)
at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:57)
at org.apache.hadoop.streaming.PipeMapRunner.run(PipeMapRunner.java:36)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:430)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:366)
at org.apache.hadoop.mapred.Child$4.run(Child.java:255)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
at org.apache.hadoop.mapred.Child.main(Child.java:249)
代码:
with hdfs.open(options.reffile) as hdfsfile:
for line in hdfsfile.open(options.reffile):
if line[0] == '>':
#some processing
最佳答案
HADOOP_CONF_DIR 环境变量必须设置到适当的位置,即包含 core-site.xml、mapred-site.xml、hdfs-site.xml 等文件的文件夹的路径。通常这些文件可以在 中找到hadoop/etc/文件夹。
在我的例子中,我从 tarball 安装了 Hadoop 2.6,并将解压的文件夹放在/usr/local 中。
我在 ~/.bashrc
添加了以下行导出 HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop
然后从终端输入命令 source ~/.bashrc
。
关于python - python pydoop程序中HADOOP_CONF_DIR not found错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28137097/
我是数据科学和大数据框架的新手。 可以说,我在 CSV 中有一个 DataSet 输入。 我从谷歌和其他资源中发现了关于数据分析师和数据科学家日常工作的信息, 一旦用户获得 DataSet,首先将在
我已经设置了一个单节点 Hadoop 1.2.1 集群并尝试运行此脚本: pydoop script transpose.py matrix.txt t_matrix 脚本不返回任何内容,作业处于挂起
我想在 Hadoop 平台上处理图像(最有可能是大尺寸的图像),但是我对于从上述2个界面中选择哪一个感到困惑,特别是对于仍然是Hadoop初学者的人。考虑到需要将图像分成块以在工作机之间分配处理并在处
当我在 Ubuntu 16.0.4 中安装 pydoop 时,出现如下错误: ~$ pip install pydoop Collecting pydoop Using cached pydoop
我一直在努力安装 pydoop。我按照此页面上的说明进行操作 http://crs4.github.io/pydoop/installation.html 。 当我运行 pip install pyd
我在同一台机器上安装了带有 HDP 和 iPython/Jupyter 的 Ubuntu O/S。我能够使用 Python2 内核通过 Jupyter notebook 运行各种命令。 但是我在 Ju
我将如何使用 Pydoop在 Amazon EMR 上? 我尝试用谷歌搜索这个主题但无济于事:有可能吗? 最佳答案 我终于搞定了。一切都发生在主节点上...作为用户 hadoop ssh 到该节点 你
我已经使用 Celery 为项目设置了两个文件和 Pydoop , tasks.py 和 HDFStorage.py # tasks.py from celery import Celery from
当我回显 $JAVA_HOME 时,我得到了 Java 的路径。 Hadoop 也在运行,但是 pydoop 安装由于这个错误而失败。 Traceback (most recent call last
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 8 年前。 Improve
我看到的大多数设置说明都很冗长。是否有一组类似脚本的命令,我们只需执行这些命令即可在 Amazon EC2 上的 Ubuntu 实例上设置 Hadoop 和 Pydoop? 最佳答案 另一种解决方案是
我正在读取目录中所有文件的第一行,在本地它工作正常,但在 EMR 上,此测试在卡在大约 200-300 个文件时失败。ps -eLF 还显示子项增加到 3000,甚至在第 200 行打印。 这是 EM
我在同一个谷歌云平台上有 hdfs 集群和 python。我想从 python 访问 hdfs 集群中存在的文件。我发现使用 pydoop 可以做到这一点,但我可能正在努力为它提供正确的参数。以下是我
我正在使用 pydoop 在 pyspark 中读取和写入文件。我想以 gzip 格式编写作业输出。我当前的代码如下所示: def create_data_distributed(workerNum,
我正在尝试通过以下命令安装 pydoop pip3.4 install pydoop 安装因以下错误而中断 Complete output from command python setup.py e
我在安装 pydoop 包时遇到这个错误: root@ubuntu:~# pip install pydoop Downloading/unpacking pydoop Downloading p
我安装了 Pydoop 并正在尝试运行 MapReduce 作业。只是为了试运行,我尝试执行字数统计示例 wordcount_minimal.py 和 wordcount_full.py。他们都卡在
我写了一个将本地文件复制到 HDFS 的 python 脚本。 在集群的所有节点中将 python 版本 2.6 升级到 2.7。安装pydoop-1.0版本并使用CDH 5.4 如果我在命令行中运行
我正在尝试在运行 CDH 5.3.0 的 Linux 服务器上升级到 pydoop 1.0.0-rc1。我能够在另一个运行 CDH 5.1.2 的环境中完成安装。我运行命令“pip install -
目标:使用 pydoop 从我的笔记本电脑读取存储在 HDFS 中的远程文件。我用的是pycharm专业版。我正在使用 Cloudera CDH5.4 我的笔记本电脑上的 pyCharm 配置:在项目
我是一名优秀的程序员,十分优秀!