【问题标题】:running fpg algorithm of mahout on hadoop as cluster mod在hadoop上运行mahout的fpg算法作为集群mod
【发布时间】:2015-02-02 14:12:46
【问题描述】:

我在 linux (centos) 上安装 mahout-0.7 和 hadoop-1.2.1。hadoop 配置为 multi_node。 我创建了一个名为 hadoop 的用户,并在路径 /home/hadoop/opt/ 中安装了 mahout 和 hadoop 我在用户环境hadoop的.bashrc文件中设置了 MAHOU_HOME 和 HADOOP_HOME 和 MAHOUT_LOCAL , ....

# .bashrc

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

# User specific aliases and functions
export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.71/jre
export HADOOP_HOME=/home/hadoop/opt/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export HADOOP_CONF_DIR=/opt/hadoop/conf
export MAHOUT_HOME=/home/hadoop/opt/mahout
export MAHOUT_CONF_DIR=$MAHOUT_HOME/conf
export PATH=$PATH:$MAHOUT_HOME/bin


I want to run mahout on hadoop systemfile ,When I run the following command, I get an error

命令: hadoop@master mahout$ bin/mahout fpg -i /home/hadoop/output.dat -o patterns -method mapreduce -k 50 -s 2

错误:

 MAHOUT_LOCAL is not set; adding HADOOP_CONF_DIR to classpath.
 hadoop binary is not in PATH,HADOOP_HOME/bin,HADOOP_PREFIX/bin, running locally
 Error occurred during initialization of VM
 Could not reserve enough space for object heap
 Error: Could not create the Java Virtual Machine.
 Error: A fatal exception has occurred. Program will exit.

请帮助我。我试过了,但无法修复错误。

【问题讨论】:

  • 首先修复 MAHOUT_LOCAL=TRUE

标签: hadoop mahout


【解决方案1】:

您的配置和使用似乎有些冲突。 乍一看,您可以确定以下几点: 要确保您已正确设置 Mahout 路径,请使用以下命令:

echo $MAHOUT_LOCAL

这不应返回空字符串(当您在本地运行 mahout 时) 另外HADOOP_CONF_DIR 应该设置为$HADOOP_HOME/conf 以下是 Hadoop 的常用环境变量列表:

#HADOOP VARIABLES START
export JAVA_HOME=/path/to/jdk1.8.0/  #your jdk path
export HADOOP_HOME=/usr/local/hadoop #your hadoop path
export HADOOP_INSTALL=/usr/local/hadoop #your hadoop path
export PATH=$PATH:$HADOOP_INSTALL/bin
export PATH=$PATH:$HADOOP_INSTALL/sbin
export HADOOP_MAPRED_HOME=$HADOOP_INSTALL
export HADOOP_COMMON_HOME=$HADOOP_INSTALL
export HADOOP_HDFS_HOME=$HADOOP_INSTALL
export YARN_HOME=$HADOOP_INSTALL
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_INSTALL/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_INSTALL/lib"
export HADOOP_CLASSPATH=/home/hduser/lib/* #thir party libraries to be loaded with Hadoop
#HADOOP VARIABLES END

此外,您会遇到堆错误,您应该增加堆大小,以便 JVM 能够初始化

您还可以通过添加有关集群的更多信息来帮助解决错误:

  1. 您使用多少台机器?
  2. 这些机器的硬件规格是什么?
  3. Hadoop 的发行版和版本是什么?

【讨论】:

    猜你喜欢
    • 2012-07-09
    • 2016-12-13
    • 2016-06-16
    • 1970-01-01
    • 2011-08-06
    • 2015-02-13
    • 1970-01-01
    • 2013-11-25
    • 2020-08-09
    相关资源
    最近更新 更多