【问题标题】:Dumping sequence files with mahout seqdumper使用 mahout seqdumper 转储序列文件
【发布时间】:2012-06-22 20:00:33
【问题描述】:

我正在尝试使用 seqdumper 使用以下命令转储序列文件:

/opt/mahout/bin/mahout seqdumper -i ~/input_file -o ~/output

但它会引发以下异常:

Exception in thread "main" java.lang.RuntimeException: java.io.IOException: WritableName can't load class: org.apache.mahout.clustering.WeightedPropertyVectorWritable

我尝试将 $MAHOUT_HOME/core/target 目录中的 mahout jar 添加到 $HADOOP_CLASSPATH 但无济于事。

任何人都可以在这里指出正确的方向吗?

编辑:

我也试过通过hdfs查看文件

hadoop dfs -text /home/hduser/input_file

但我得到了同样的错误。

【问题讨论】:

  • 要将其与hadoop 一起使用,您确实需要设置HADOOP_CLASSPATH,是的。那不一样。您仍然需要为 jar 文件指向正确的位置,我认为您的安装中没有它们。
  • 如何指向罐子?我想您指的是通过运行 mvn install 创建的那些。我将它们放在核心/目标中。我在 core/classes 文件夹中找到了 WeightedPropertyVectorWritable,但是我该如何告诉它如何加载呢?

标签: hadoop mahout


【解决方案1】:

core/target 不包含类。你至少在寻找core/target/classes。但是,如果 MAHOUT_HOME 设置正确,因为脚本已经设置了类路径,则您不需要做任何此类事情。

【讨论】:

  • 我将 $MAHOUT_HOME 设置为 /opt/mahout,这是我设置 Mahout 的位置。
  • .. 它有 .jar 文件吗?还是它们在core/target 之类的子目录中?查看脚本,查看它在哪里查找 JAR 文件,检查您是否没有更改这些内容。
猜你喜欢
  • 2014-04-03
  • 2015-05-18
  • 2016-10-11
  • 2015-02-22
  • 2013-09-09
  • 1970-01-01
  • 2015-05-13
  • 2015-08-02
  • 2013-08-05
相关资源
最近更新 更多