0

私は今、Mahout in Action を学んでいて、本で例を作成して実行する方法を尋ねるために書いています。Eclipse で手順を見つけることはできますが、私の環境には UI が含まれていません。そこで、最初の例 (RecommenderIntro) を RecommenderIntro.java にコピーし、javac でコンパイルしました。

パッケージがインポートされていないため、エラーが発生しました。だから私は探しています:

  1. 不足しているパッケージをインポートするアプローチ。

  2. コンパイルに成功しても .class ファイルが生成されてしまうのですが、どうすれば実行できますか? 「Java RecommnderIntro」を介して?を介して mahout の例を実行できsudo -u hdfs hadoop jar mahout-examples-0.7-cdh4.2.0-job.jar org.apache.mahout.clustering.syntheticcontrol.kmeans.Jobます。自分の例で同様のことを行うにはどうすればよいですか?

  3. すべてのデータは HBase テーブルに保存されていますが、本 (および Google でさえも) では、HBase と統合する方法が見つかりません。何か提案はありますか?

4

1 に答える 1

2

q1 と q2 では、maven のような Java ビルド ツールが必要です。'mvn clean install' を使用して hadoop-jar をビルドします。これにより、target/mia-job.jar に Hadoop ジョブが作成されます。次に、次を使用してジョブを実行します。hadoop jar target/mia-job.jar RecommenderIntro inputDirIgnored outputDirIgnored 、ただし、hadoop では、通常は入力ディレクトリと出力ディレクトリの少なくとも 2 つのパラメーターを指定する必要があります)

q3: すぐに使用できません。オプション 1: hbase データをテキスト ファイル 'intro.csv' にエクスポートし、本に記載されているように、「%userId%、%ItemId%、%score%」などのコンテンツを含めます。それが RecommenderIntro が探しているファイルだからです。オプション 2: hbase からデータを読み取るようにサンプル コードを変更します...

ps1。このようなアプリケーションを開発するには、IDE を使用することを強くお勧めします。コード補完、実行、ビルドなどを使用できるためです。開始する簡単な方法は、Cloudera や HortonWorks などの Hadoop で仮想イメージをダウンロードし、Eclipse などの IDE をインストールすることです。Hadoop クラスターを使用するようにこれらのイメージを構成することもできますが、小さなデータ セットの場合は必要ありません。ps2. RecommenderIntro コードは分散実装ではないため、大規模なデータセットでは実行できません。また、Hadoop クラスターではなく、ローカルで実行されます。

于 2013-04-12T21:22:17.430 に答える