hadoop - 为什么tensorflow无法连接到HDFS?

标签 hadoop tensorflow hdfs deep-learning

我想用tensorflow连接hdfs,但是不能。
我调试到tensorflow代码中发现错误如下:

(Pdb) s
--Return--
> /usr/local/python3/lib/python3.5/site-packages/tensorflow/python/util/compat.py(60)as_bytes()->b'hdfs://user...c/mnist_logs3'
-> return bytes_or_text.encode(encoding)
(Pdb) l
55  
56     Raises:
57       TypeError: If `bytes_or_text` is not a binary or unicode string.
58     """
59     if isinstance(bytes_or_text, _six.text_type):
60  ->     return bytes_or_text.encode(encoding)
61     elif isinstance(bytes_or_text, bytes):
62       return bytes_or_text
63     else:
64       raise TypeError('Expected binary or unicode string, got %r' %
65                       (bytes_or_text,))
(Pdb) s
loadFileSystems error:
(unable to get stack trace for java.lang.NoClassDefFoundError exception: ExceptionUtils::getStackTrace error.)
hdfsBuilderConnect(forceNewInstance=0, nn=user, port=0, kerbTicketCachePath=(NULL), userName=(NULL)) error:
(unable to get stack trace for java.lang.NoClassDefFoundError exception: ExceptionUtils::getStackTrace error.)
> /usr/local/python3/lib/python3.5/site-packages/tensorflow/python/lib/io/file_io.py(395)is_directory()
-> pywrap_tensorflow.TF_DeleteStatus(status)
(Pdb)

有人能帮我吗?
谢谢!

最佳答案

我最好的猜测是它无法加载适当的库。仔细检查您的机器上是否安装了Hadoop,并适当设置了环境变量。请参阅此处的说明:
https://www.tensorflow.org/deploy/hadoop

关于hadoop - 为什么tensorflow无法连接到HDFS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43934977/

相关文章:

映射后 Hadoop 集群停止

python - 类型错误 : unsupported operand type(s) for/: 'Dimension' and 'int'

python - Tensorflow - 正确(本地?)处理多个时期的数据批处理重叠(小批量?)

hadoop - 由于安全模式打开,无法从 dfs 中删除文件

hadoop - 大数据Hadoop HDFS——put命令

hadoop - 连续计算2个字段的总和

postgresql - 将Cast语法从PostgreSQL转换为Hive

hadoop - defaultFs的具体用途是什么

java - 无法通过 Java 应用程序连接到 Hive

python - Tensorflow:静态和动态形状