【问题标题】:Problems running Mahout and Hadoop运行 Mahout 和 Hadoop 的问题
【发布时间】:2014-03-22 22:08:46
【问题描述】:

我是 MahoutHadoop 的新手。

我已经用 3 台机器成功安装了Hadoop Cluster,集群运行良好,我只是在 Main namenode 上安装了Mahout 用于“测试目的”,我按照安装说明设置了@ 987654325@,但是当我尝试运行classify-20newsgroups.sh 时,它会下载dataset,但之后出现以下错误:

Error: JAVA_HOME is not set

然后我修改了.bashrc,确认JAVA_HOME设置正确,但是没有用。

另外,我如何验证 Mahout 是否已正确配置为在 Hadoop 上运行,您是否知道任何可以验证此配置或环境的示例?

【问题讨论】:

    标签: hadoop mahout java-home mahout-recommender


    【解决方案1】:

    .bashrc 只能由 非登录 的 shell 读取,否则读取 .bash_profile。 因此,您可以设置从 .bash_profile 读取 .bashrc(请参阅此处 What's the difference between .bashrc, .bash_profile, and .environment?)或仅在 .bash_profile 中设置 JAVA_HOME。

    还有另外几种设置 JAVA_HOME 的可能性:

    1) 从终端设置 .bashrc

    ~$ source .bashrc
    

    2) 在运行之前在打开的终端中设置 JAVA_HOME classify-20newsgroups.sh

    ~$ JAVA_HOME=/path
    ~$ classify-20newsgroups.sh
    

    3) 使用 JAVA_HOME 运行classify-20newsgroups.sh,即

    ~$ JAVA_HOME=/path classify-20newsgroups.sh
    

    关于在 Hadoop 上运行的 Mahout 配置问题。如果设置了 HADOOP_HOME,则带有分类 20newsgroups 的标准示例应该可以在 hadoop 上运行。

    【讨论】:

      【解决方案2】:

      您可能需要在 hadoop-env.sh 中显式设置 JAVA_HOME

      在hadoop-env.sh中,查找注释“#The java implementation to use”,修改其下的JAVA_HOME路径。

      它应该看起来像这样:

      # 要使用的 java 实现。

      导出 JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64

      当然要修复 JAVA_HOME 的路径。

      【讨论】:

        猜你喜欢
        • 2015-02-26
        • 2013-07-11
        • 1970-01-01
        • 2012-07-09
        • 2011-06-07
        • 2013-03-18
        • 2014-03-13
        • 2016-06-16
        • 2016-02-21
        相关资源
        最近更新 更多