在tensorflow下使用hadoop

作者: 美环花子若野 | 来源:发表于2018-05-24 11:59 被阅读1161次

    配置环境变量花了好多时间

    http://cwiki.apachecn.org/pages/viewpage.action?pageId=10029530

    创建: 片刻,最新修改于: 2017-06-07

    转至元数据起始

    原文链接 : https://www.tensorflow.org/deploy/hadoop

    译文链接 : http://www.apache.wiki/pages/viewpage.action?pageId=10029530

    贡献者 : 片刻 ApacheCN Apache中文网

    本文档介绍如何在Hadoop上运行TensorFlow。它将扩展到描述在各种集群管理器上运行,但只描述在当前运行在HDFS上。

    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/

    启动TensorFlow程序时,必须设置以下环境变量:

    JAVA_HOME:Java安装的位置。

    HADOOP_HDFS_HOME:HDFS安装的位置。您还可以通过运行以下设置此环境变量:

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

    LD_LIBRARY_PATH:要包含libjvm.so的路径,以及可选的libhdfs.so的路径,如果您的Hadoop分发版未安装libhdfs.so$HADOOP_HDFS_HOME/lib/native。在Linux上:

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

    CLASSPATH:必须在运行TensorFlow程序之前添加Hadoop jar。CLASSPATH设置${HADOOP_HOME}/libexec/hadoop-config.sh不足。必须按照libhdfs文档中的描述扩展Globs:

    shell CLASSPATH=$($HADOOP_HDFS_HOME}/bin/hadoop classpath --glob) python your_script.py对于旧版本的Hadoop / libhdfs(早于2.6.0),您必须手动扩展类路径通配符。有关详细信息,请参阅HADOOP-10903

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

    KERB_TICKET_CACHE_PATH:Kerberos票证缓存文件的路径。例如:

    shell export KERB_TICKET_CACHE_PATH=/tmp/krb5cc_10002 

    如果您正在运行分布式TensorFlow,则所有工作人员必须设置环境变量并安装Hadoop。

    相关文章

      本文标题:在tensorflow下使用hadoop

      本文链接:https://www.haomeiwen.com/subject/xdzjjftx.html