如何使用 HDFS 在 Hadoop 上运行 TensorFlow

Posted TensorFlow

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用 HDFS 在 Hadoop 上运行 TensorFlow相关的知识,希望对你有一定的参考价值。

本文将为大家介绍如何使用 HDFS 在 Hadoop 上运行 TensorFlow。您需要知道如何 。



HDFS

要在 TensorFlow 中使用 HDFS,请使用 HDFS 路径来读写数据,例如:

filename_queue = tf.train.string_input_producer([
    "hdfs://namenode:8020/path/to/file1.csv",
    "hdfs://namenode:8020/path/to/file2.csv",
])


要使用 HDFS 配置文件中指定的 namenode,请将文件前缀更改为 HDFS://default/。


设置以下环境变量:

  • JAVA_HOME — Java 安装的路径

  • HADOOP_HDFS_HOME — HDFS 安装路径。如果 libhdfs.so 在 LD_LIBRARY_PATH 中可用,则该变量是可选的。这也可以使用以下方式设置:

source ${HADOOP_HOME}/libexec/hadoop-config.sh


  • LD_LIBRARY_PATH — 如果您的 Hadoop 发行版未在 ${HADOOP_HDFS_HOME} /lib/native 中安装 libhdfs.so,请包含 libjvm.so 的路径以及 libhdfs.so 的(可选)路径。在 Linux 上:

export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${JAVA_HOME}/jre/lib/amd64/server


  • CLASSPATH — 在运行 TensorFlow 之前,必须将 Hadoop jar 添加到类路径中。仅使用 ${hadoop op_home}/libexec/hadoop-config.sh 设置类路径是不够的。必须扩展 Globs,如 libhdfs 文档所述:

CLASSPATH=$(${HADOOP_HOME}/bin/hadoop classpath --glob) python your_script.py


如果 Hadoop 集群处于安全模式,则设置以下环境变量:

  • KRB5CCNAME — Kerberos ticket 缓存文件的路径。例如:

export KRB5CCNAME=/tmp/krb5cc_10002


如果使用 ,则所有工作人员必须安装 Hadoop 并设置环境变量。



更多 AI 相关阅读:





以上是关于如何使用 HDFS 在 Hadoop 上运行 TensorFlow的主要内容,如果未能解决你的问题,请参考以下文章

Cloudera hadoop:无法运行 Hadoop fs 命令,同时 HBase 无法在 HDFS 上创建目录?

如何在 Flink 独立集群上的 Flink 作业中使用两个 Kerberos 密钥表(用于 Kafka 和 Hadoop HDFS)?

在idea上运行hadoop程序

Hadoop核心组件:四步通晓HDFS

如何查看整个根 hdfs 磁盘使用情况? (hadoop dfs -du / 获取子文件夹)

hadoop ecosystem