• 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

Mahout In Actionのコードを実行するために、EclipseでMahoutの開発をする環境を作成してみました。

下記サイトを参考にさせていただきました。
mahout/レコメンドシステムの作り方

前提

  • Java, Maven, Eclipseがインストール済みであること

手順

  1. m2eclipseプラグインのインストール
  2. Maven Projectの作成
  3. M2_REPOの設定
  4. mahout-coreのdependency設定
  5. Javaクラスの作成

それぞれの手順の内容は下記のとおりです。

・m2eclipseプラグインのインストール

Eclipse上からMavenの操作ができるようにするために、m2eclipseというプラグインをインストールします。
Eclipse の Helpメニュー > Install New Software... で下記URLを指定してインストールします。

http://m2eclipse.sonatype.org/sites/m2e

インストール後にはEclipseの再起動が必要です。

・Maven Projectの作成

Eclipse の Fileメニュー > New > Other...
Maven > Maven Project を選択して Maven Project を作成します。

・M2_REPOの設定

MavenのローカルリポジトリのパスをM2_REPOという変数名で設定します。

Eclipse の Windowメニュー > Preferences
Java > Build Path > Classpath Variables
Newボタンをクリックして Name と Value を設定します。私の場合は下記の用に設定しました。

  • Name: M2_REPO
  • Value: /home/h-akanuma/.m2/repository

・mahout-coreのdependency設定

Mahout のライブラリを使用できるようにするために、mahout-core の dependency を設定します。pom.xml の に下記の内容を追加します。

   1     <dependency>
   2        <groupId>org.apache.mahout</groupId>
   3        <artifactId>mahout-core</artifactId>
   4        <version>0.5</version>
   5      </dependency>	
   6      <dependency>
   7        <groupId>org.slf4j</groupId>
   8        <artifactId>slf4j-jcl</artifactId>
   9        <version>1.6.0</version>
  10        <scope>test</scope>
  11      </dependency>

追加後にworkspace内のプロジェクトのディレクトリで下記mvnコマンドを実行して、依存性の解決とソースコードをダウンロードしてEclipseから参照できるようにします。

   1  ~/workspace/ml$ mvn eclipse:eclipse -DdownloadSources=true

・Javaクラスの作成

Mahout In Action のサンプルクラスを作成してみます。

   1  public class RecommenderIntro {
   2    public static void main(String[] args) throws Exception {
   3      DataModel model = new FileDataModel (new File("/tmp/intro.csv"));
   4      UserSimilarity similarity = new PearsonCorrelationSimilarity (model);
   5      UserNeighborhood neighborhood = new NearestNUserNeighborhood (2, similarity, model);
   6      Recommender recommender = new GenericUserBasedRecommender (model, neighborhood, similarity);
   7      List<RecommendedItem> recommendations = recommender.recommend(1, 1);
   8      for (RecommendedItem recommendation : recommendations) {
   9        System.out.println(recommendation);
  10      }
  11    }
  12  }

Ctrl+Shift+O などでクラスパスを解決できればMahoutのライブラリが参照できているので環境としてはとりあえずOKです。
上記Javaクラス内で使用している intro.csv の内容は下記のとおりです。

   1  1,101,5.0
   2  1,102,3.0
   3  1,103,2.5
   4  
   5  2,101,2.0
   6  2,102,2.5
   7  2,103,5.0
   8  2,104,2.0
   9  
  10  3,101,2.5
  11  3,104,4.0
  12  3,105,4.5
  13  3,107,5.0
  14  
  15  4,101,5.0
  16  4,103,3.0
  17  4,104,4.5
  18  4,106,4.0
  19  
  20  5,101,4.0
  21  5,102,3.0
  22  5,103,2.0
  23  5,104,4.0
  24  5,105,3.5
  25  5,106,4.0

Javaクラスと同じパスに保存してEclipse上から実行すると下記のような結果が得られます。

   1  RecommendedItem[item:104, value:4.257081]

※初稿掲載時は実行時に「intro.csvが見つからないと言われてしまう」と書いていましたが、intro.csvをフルパスで /tmp/intro.csv と指定することで解決しました。

posted by Png akanuma on Sun 30 Oct 2011 at 10:06

GTUGのBootCamp 2011 Japan でGoogleAppEngineのセッションに参加してきました。

  • ハッシュタグは #bc2011jp #gae1

 最近HadoopやAWS方面に力を入れ始めているところなので、Googleのサービスの中でもGAEには興味があって、色々勉強したいと思ってます。かなり前にチュートリアルやった程度なのですっかり忘れてますし。。

 最近のGAEの話題としてはやっぱり新料金体系のことですね。場合によっては今までの20~30倍になるという話も聞きましたし。

 セッションでは節約の話の前に前半でまずGAEの概要やGAEがリクエストを処理する仕組みを説明していただいたので、節約の話もわかりやすかったです。

料金体系の変更としては簡単に言ってしまうと、

  • CPU Hours から Instance Hoursへ
  • APIも使用回数で課金(今まではCPU Hoursに含まれていた)

ということです。詳細はここでは説明しませんが。

 節約するには色々大変なことをしないといけないのかなぁと思っていましたが、どうやら設定を変更するだけでもかなり節約できるようですね。デフォルトの設定だとガンガンスケールアウトしていく設定らしいので、そこはしっかりチェックしておく必要がありますね。

 新料金については随分評判が悪いようですが、今までがほぼ無料だっただけに余計に高くなったように感じる部分もあるんではないかと思います。まだちゃんと使ってませんが、クラウド環境としてはかなりよい環境なのではないかと思うので、新料金の値段だけに気を取られるのではなく、節約するところは賢く節約して、有効活用していくのがいいかなぁと思います。個人で手軽に利用できるクラウド環境としてはすごく良いサービスだと思いますので。

IMAG0241.jpg

posted by Png akanuma on Sat 29 Oct 2011 at 22:36

 GTUGのBootCamp 2011 Japan でChrome Extensionのセッションに参加してきました。

  • セッション資料の公開はこちら
  • ハッシュタグは #bc2011jp #chr1

 Chrome Extensionは今年のGDDのDevQuizで初めて触りました。簡単に言ってしまうとChromeを拡張して操作を自動化したりできるわけなんですが、最初に触ったときの印象としてはSelenium に近いものがあるかなという気がしました。

 技術的には使うものはHTML,CSS,Javascriptなので、今までWebアプリを開発してる人なら学習コストはかなり低いんじゃないでしょうか。

 例えば"Hello World!"を表示するだけの簡単なExtensionなら、必要なものとしては、

  • manifest.json

   1  {
   2    "name": "SampleExtension",
   3    "version": "0.1",
   4    "browser_action": {
   5      "default_popup": "popup.html",
   6      "default_icon": "icon.png"
   7    }
   8  }

  • popup.html

   1  <!DOCTYPE html>
   2  <html lang="ja">
   3    <head>
   4      <meta charset="UTF-8">
   5      <style>
   6        p{
   7          font-size: 32px;
   8        }
   9      </style>
  10    </head>
  11    <body>
  12      <p>Hello, World!</p>
  13    </body>
  14  </html>

 とりあえずこれだけです。この例では使ってませんがJavascriptでページの要素を操作したりもできるので、かなりいろんなことがやれると思います。デバッグもデベロッパーツールでWebアプリと同じようにやれます。

 自分としては、Webアプリを開発する時のテスト用ツールとして使えないかなぁと思ってます。開発時には何回もブラウザから同じ操作を繰り返したりするので、そういう作業を自動化したりとかするのに使えないかなーと。

 Chromeは急速にシェアを拡大していて、このままの勢いだと来年中にIEを抜くんじゃないかという話もあるようなので、そうしたら自分で使う便利ツール以外にもExtension開発に力を入れたらおもしろいかなぁとも思いました。

 仕事でブラウザチェックをするときにはChromeはバージョンアップが早すぎて推奨環境から外れてしまってますけどね・・・。

posted by Png akanuma on Sat 29 Oct 2011 at 21:45

 GTUGのBootCamp 2011 Japan でGoogleAppsScriptのハンズオンに参加してきました。

セッション資料はこちらに公開されています。
Twitterのハッシュタグは #bc2011jp #gas1

 本当はGAEのセッションに参加するつもりだったのですが、GAEコーナーはセッションではなくオフィスアワーだったらしく、急遽こちらに参加しました。

 Google Apps ScriptというのはGoogle Apps内で提供されているスクリプト実行環境で、自分の認識としては、マイクロソフトオフィスでいうところのVBA的なものという感じです。VBAをろくに触ったことはありませんが。。Script自体は基本的にJavascriptなので、jsを使える人なら言語自体の学習コストはほぼゼロです。

 例えば値を受け取って消費税分を加算して戻すような関数は下記のような感じでJavascriptそんまんまです。

   1  function calc_tax(no_tax_price) {
   2    var inc_tax_price = no_tax_price * 1.05;
   3    return inc_tax_price
   4  }

 ハンズオンでやったのは、TwitterのAPIからJsonデータを取得・パースしてSpreadsheetに表示したり、Tasksと連携させたりといった内容。 時間内で最後まで終わらせることはできませんでしたが、Javascriptは一応知識がありますし、純粋に楽しくやれました。 皆がTwitterのAPIにアクセスしたのでアクセス数制限にひっかかってエラーになっていたりといくつかハプニングはありましたがw

 GAS自体については確かに便利なので、自分で使うだけのちょっとした便利ツールを作ったりするのにはすごくいいんじゃないかとおもいますが、ExcelのVBAがいろんなところで問題になってたりするように、GASもGoogleAppsにロックインしたものになってしまうので、業務上クリティカルなものを作るために使うべきではありませんね。
 GoogleAppsのサービス自体がいつどうなるかわかりませんし、メンテナンスできる人が多いとも思えないですし。構文はJavascriptと同じですが、例えばSpreadsheetにデータを書き込むなどはやはりSpreadsheetにロックインされたものになります。

   1  var doc = SpreadsheetApp.getActiveSpreadsheet();
   2  var sheet = doc.getSheetByName("hoge");
   3  var start_row = sheet.getLastRow() + 1;
   4  var data = [
   5    [1,2,3], 
   6    [10,20,30]
   7  ];
   8  sheet.getRange(start_row, 1, data.length, data[0].length).setValues(data);

 あとは、エラー内容によっては一度エラーになると二度とスクリプトエディタで開けなくなったりとか、結構致命的なところもあったりします。 その辺もうちょっと整備されてくると、ブラウザ上だけで作業できたり手軽に作れたりと良いところも多いので、使いどころを間違えなければ便利なツールだと思います。

posted by Png akanuma on Sat 29 Oct 2011 at 12:44

CDH3u2ではMahoutもサポートされるようになったのでインストールしてみます。
Mahout Installation - Cloudera Support

CDH3u1からCDH3u2へのアップデートの作業メモはこちら

   1  $ sudo apt-get install mahout
   2  [sudo] password for h-akanuma: 
   3  パッケージリストを読み込んでいます... 完了
   4  依存関係ツリーを作成しています                
   5  状態情報を読み取っています... 完了
   6  以下のパッケージが自動でインストールされましたが、もう必要とされていません:
   7    libfolks-telepathy22 libpanel-applet-4-0 python-opengl libio-string-perl libunity4 diffstat gir1.2-vte-0.0
   8    libindicator3 intltool-debian libedataserverui1.2-11 libclass-accessor-perl patchutils g++-4.5
   9    linux-headers-2.6.38-8 python-gtkglext1 libcamel1.2-19 libapt-pkg-perl libdvbpsi6
  10    libboost-serialization1.42.0 libgcj11 libfolks22 libnet-domain-tld-perl libparse-debianchangelog-perl gettext
  11    libebook1.2-10 libgdata11 libgwibber1 libsub-name-perl libecal1.2-8 libipc-run-perl libstdc++6-4.5-dev
  12    libasm2-java python-rsvg linux-headers-2.6.38-8-generic gir1.2-appindicator-0.1 libedata-cal1.2-10
  13    libedata-book1.2-8 gcj-4.5-jre-lib libio-pty-perl python-wsgi-intercept libunistring0 libunity-misc0
  14    libemail-valid-perl libquicktime1 lintian libgtkglext1 freeglut3 libmatroska3 gir1.2-panelapplet-4.0
  15    gcj-4.5-base
  16  これらを削除するには 'apt-get autoremove' を利用してください。
  17  以下のパッケージが新たにインストールされます:
  18    mahout
  19  アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 111 個。
  20  42.1 MB のアーカイブを取得する必要があります。
  21  この操作後に追加で 89.7 MB のディスク容量が消費されます。
  22  取得:1 http://archive.cloudera.com/debian/ maverick-cdh3/contrib mahout all 0.5+9.1-1~maverick-cdh3 [42.1 MB]
  23  42.1 MB を 3分 2秒 で取得しました (230 kB/s)                                                                    
  24  未選択パッケージ mahout を選択しています。
  25  (データベースを読み込んでいます ... 現在 261373 個のファイルとディレクトリがインストールされています。)
  26  (.../mahout_0.5+9.1-1~maverick-cdh3_all.deb から) mahout を展開しています...
  27  mahout (0.5+9.1-1~maverick-cdh3) を設定しています ...
  28  update-alternatives: /etc/mahout/conf (mahout-conf) を提供するために 自動モード で /etc/mahout/conf.dist を使います。

apt-getコマンド一発。簡単ですね。

posted by Png akanuma on Wed 26 Oct 2011 at 23:48

 

2011/10/21にCDH3u2がリリースされたのでアップデートしてみました。
CDH3 Installation Guide - Cloudera Support
Upgrading to CDH3 - Cloudera Support

 

   1  $ hadoop version
   2  Hadoop 0.20.2-cdh3u1
   3  Subversion file:///tmp/nightly_2011-07-18_07-57-52_3/hadoop-0.20-0.20.2+923.97-1~maverick -r bdafb1dbffd0d5f2fbc6ee022e1c8df6500fd638
   4  Compiled by root on Mon Jul 18 09:40:07 PDT 2011
   5  From source with checksum 3127e3d410455d2bacbff7673bf3284c

 

現在はCDH3u1がインストールされてます。

 

   1  $ for x in /etc/init.d/hadoop-* ; do sudo $x stop ; done
   2  [sudo] password for h-akanuma:
   3  Stopping Hadoop datanode daemon: no datanode to stop
   4  hadoop-0.20-datanode.
   5  Stopping Hadoop jobtracker daemon: no jobtracker to stop
   6  hadoop-0.20-jobtracker.
   7  Stopping Hadoop namenode daemon: no namenode to stop
   8  hadoop-0.20-namenode.
   9  Stopping Hadoop secondarynamenode daemon: no secondarynamenode to stop
  10  hadoop-0.20-secondarynamenode.
  11  Stopping Hadoop tasktracker daemon: no tasktracker to stop
  12  hadoop-0.20-tasktracker.
  13  Stopping Hadoop HBase master daemon: no master to stop because kill -0 of pid 2271 failed with status 1
  14  hbase-master.
  15  Stopping Hadoop HBase regionserver daemon: stopping regionserver........
  16  hbase-regionserver.
  17  JMX enabled by default
  18  Using config: /etc/zookeeper/zoo.cfg
  19  Stopping zookeeper ... STOPPED
  20  $
  21  $ jps
  22  9534 Jps
  23  $
  24  $ ps aux | grep hadoop
  25  1000 9544 0.0 0.0 5164 788 pts/0 S+ 21:56 0:00 grep --color=auto hadoop

 

Hadoop関連プロセスを停止。

 

   1  $ sudo dpkg -i ダウンロード/cdh3-repository_1.0_all.deb 
   2  未選択パッケージ cdh3-repository を選択しています。
   3  (データベースを読み込んでいます ... 現在 262400 個のファイルとディレクトリがインストールされています。)
   4  (.../cdh3-repository_1.0_all.deb から) cdh3-repository を展開しています...
   5  cdh3-repository (1.0) を設定しています ...
   6  gpg: 鍵輪「/etc/apt/secring.gpg」ができました
   7  gpg: 鍵輪「/etc/apt/trusted.gpg.d/cloudera-cdh3.gpg」ができました
   8  gpg: 鍵02A818DD: 公開鍵“Cloudera Apt Repository”を読み込みました
   9  gpg: 処理数の合計: 1
  10  gpg: 読込み: 1

 

ダウンロードしたパッケージをインストール

 

   1  $ sudo apt-get update
   2  ・・・

 

APTパッケージインデックスを更新

 

   1  $ apt-cache search hadoop
   2  ubuntu-orchestra-modules-hadoop - Modules mainly used by orchestra-management-server
   3  flume - reliable, scalable, and manageable distributed data collection application
   4  hadoop-0.20 - A software platform for processing vast amounts of data
   5  hadoop-0.20-conf-pseudo - Pseudo-distributed Hadoop configuration
   6  hadoop-0.20-datanode - Data Node for Hadoop
   7  hadoop-0.20-doc - Documentation for Hadoop
   8  hadoop-0.20-fuse - HDFS exposed over a Filesystem in Userspace
   9  hadoop-0.20-jobtracker - Job Tracker for Hadoop
  10  hadoop-0.20-namenode - Name Node for Hadoop
  11  hadoop-0.20-native - Native libraries for Hadoop (e.g., compression)
  12  hadoop-0.20-pipes - Interface to author Hadoop MapReduce jobs in C++
  13  hadoop-0.20-sbin - Server-side binaries necessary for secured Hadoop clusters
  14  hadoop-0.20-secondarynamenode - Secondary Name Node for Hadoop
  15  hadoop-0.20-source - Source code for Hadoop
  16  hadoop-0.20-tasktracker - Task Tracker for Hadoop
  17  hadoop-hbase - HBase is the Hadoop database
  18  hadoop-hbase-doc - Documentation for HBase
  19  hadoop-hbase-master - HMaster is the "master server" for a HBase
  20  hadoop-hbase-regionserver - HRegionServer makes a set of HRegions available to clients
  21  hadoop-hbase-thrift - Provides an HBase Thrift service
  22  hadoop-hive - A data warehouse infrastructure built on top of Hadoop
  23  hadoop-hive-metastore - Shared metadata repository for Hive
  24  hadoop-hive-server - Provides a Hive Thrift service
  25  hadoop-pig - A platform for analyzing large data sets using Hadoop
  26  hadoop-zookeeper - A high-performance coordination service for distributed applications.
  27  hadoop-zookeeper-server - This runs the zookeeper server on startup.
  28  hue-common - A browser-based desktop interface for Hadoop
  29  hue-filebrowser - A UI for the Hadoop Distributed File System (HDFS)
  30  hue-jobbrowser - A UI for viewing Hadoop map-reduce jobs
  31  hue-jobsub - A UI for designing and submitting map-reduce jobs to Hadoop
  32  hue-plugins - Plug-ins for Hadoop to enable integration with Hue
  33  hue-shell - A shell for console based Hadoop applications
  34  libhdfs0 - JNI Bindings to access Hadoop HDFS from C
  35  libhdfs0-dev - Development support for libhdfs0
  36  mahout - A set of Java libraries for scalable machine learning.
  37  oozie - A workflow and coordinator sytem for Hadoop jobs.
  38  sqoop - Tool for easy imports and exports of data sets between databases and HDFS
  39  cdh3-repository - Cloudera's Distribution including Apache Hadoop

 

Hadoopパッケージの検索

 

   1  $ sudo apt-get install hadoop-0.20
   2  ・・・
   3  $ hadoop version
   4  Hadoop 0.20.2-cdh3u2
   5  Subversion file:///tmp/nightly_2011-10-13_20-02-02_3/hadoop-0.20-0.20.2+923.142-1~maverick -r 95a824e4005b2a94fe1c11f1ef9db4c672ba43cb
   6  Compiled by root on Thu Oct 13 21:52:18 PDT 2011
   7  From source with checksum 644e5db6c59d45bca96cec7f220dda51

 

Hadoopコアパッケージをインストール。
CDH3u2がインストールされました。
Hadoop各デーモンも同時にアップデートされています。

 

   1  $ sudo apt-get install hadoop-hbase-master
   2  ・・・
   3  $ sudo apt-get install hadoop-zookeeper-server
   4  ・・・
   5  $ hbase shell
   6  11/10/26 22:36:54 WARN conf.Configuration: DEPRECATED: hadoop-site.xml found in the classpath. Usage of hadoop-site.xml is deprecated. Instead use core-site.xml, mapred-site.xml and hdfs-site.xml to override properties of core-default.xml, mapred-default.xml and hdfs-default.xml respectively
   7  HBase Shell; enter 'help<RETURN>' for list of supported commands.
   8  Type "exit<RETURN>" to leave the HBase Shell
   9  Version 0.90.4-cdh3u2, r, Thu Oct 13 20:32:26 PDT 2011
  10 
  11  hbase(main):001:0>

 

HBase, Zookeeper もアップデート。CDH3u2にアップデートされました。

 

   1  $ sudo /etc/init.d/hadoop-0.20-namenode start
   2  Starting Hadoop namenode daemon: starting namenode, logging to /usr/lib/hadoop-0.20/logs/hadoop-hadoop-namenode-h-akanuma-CF-W4.out
   3  hadoop-0.20-namenode.
   4  $
   5  $ sudo /etc/init.d/hadoop-0.20-datanode start
   6  Starting Hadoop datanode daemon: starting datanode, logging to /usr/lib/hadoop-0.20/logs/hadoop-hadoop-datanode-h-akanuma-CF-W4.out
   7  hadoop-0.20-datanode.
   8  $
   9  $ sudo /etc/init.d/hadoop-0.20-secondarynamenode start
  10  Starting Hadoop secondarynamenode daemon: starting secondarynamenode, logging to /usr/lib/hadoop-0.20/logs/hadoop-hadoop-secondarynamenode-h-akanuma-CF-W4.out
  11  hadoop-0.20-secondarynamenode.
  12  $
  13  $ sudo /etc/init.d/hadoop-0.20-jobtracker start
  14  Starting Hadoop jobtracker daemon: starting jobtracker, logging to /usr/lib/hadoop-0.20/logs/hadoop-hadoop-jobtracker-h-akanuma-CF-W4.out
  15  hadoop-0.20-jobtracker.
  16  $
  17  $ sudo /etc/init.d/hadoop-0.20-tasktracker start
  18  Starting Hadoop tasktracker daemon: starting tasktracker, logging to /usr/lib/hadoop-0.20/logs/hadoop-hadoop-tasktracker-h-akanuma-CF-W4.out
  19  hadoop-0.20-tasktracker.
  20  $
  21  $ sudo jps
  22  12799 SecondaryNameNode
  23  12672 DataNode
  24  12552 NameNode
  25  12895 JobTracker
  26  13029 Jps
  27  11574 QuorumPeerMain
  28  12996 TaskTracker

 

Hadoop各デーモンを起動

 

   1  $ hadoop jar /usr/lib/hadoop-0.20/hadoop-0.20.2-cdh3u2-*examples.jar pi 10 10000
   2  Number of Maps = 10
   3  Samples per Map = 10000
   4  Wrote input for Map #0
   5  Wrote input for Map #1
   6  Wrote input for Map #2
   7  Wrote input for Map #3
   8  Wrote input for Map #4
   9  Wrote input for Map #5
  10  Wrote input for Map #6
  11  Wrote input for Map #7
  12  Wrote input for Map #8
  13  Wrote input for Map #9
  14  Starting Job
  15  11/10/26 23:09:21 INFO mapred.FileInputFormat: Total input paths to process : 10
  16  11/10/26 23:09:22 INFO mapred.JobClient: Running job: job_201110262307_0001
  17  11/10/26 23:09:23 INFO mapred.JobClient: map 0% reduce 0%
  18  11/10/26 23:09:42 INFO mapred.JobClient: map 20% reduce 0%
  19  11/10/26 23:09:57 INFO mapred.JobClient: map 40% reduce 0%
  20  11/10/26 23:10:12 INFO mapred.JobClient: map 60% reduce 0%
  21  11/10/26 23:10:14 INFO mapred.JobClient: map 60% reduce 13%
  22  11/10/26 23:10:20 INFO mapred.JobClient: map 80% reduce 20%
  23  11/10/26 23:10:26 INFO mapred.JobClient: map 100% reduce 20%
  24  11/10/26 23:10:29 INFO mapred.JobClient: map 100% reduce 33%
  25  11/10/26 23:10:32 INFO mapred.JobClient: map 100% reduce 100%
  26  11/10/26 23:10:34 INFO mapred.JobClient: Job complete: job_201110262307_0001
  27  11/10/26 23:10:35 INFO mapred.JobClient: Counters: 23
  28  11/10/26 23:10:35 INFO mapred.JobClient: Job Counters
  29  11/10/26 23:10:35 INFO mapred.JobClient: Launched reduce tasks=1
  30  11/10/26 23:10:35 INFO mapred.JobClient: SLOTS_MILLIS_MAPS=113667
  31  11/10/26 23:10:35 INFO mapred.JobClient: Total time spent by all reduces waiting after reserving slots (ms)=0
  32  11/10/26 23:10:35 INFO mapred.JobClient: Total time spent by all maps waiting after reserving slots (ms)=0
  33  11/10/26 23:10:35 INFO mapred.JobClient: Launched map tasks=10
  34  11/10/26 23:10:35 INFO mapred.JobClient: Data-local map tasks=10
  35  11/10/26 23:10:35 INFO mapred.JobClient: SLOTS_MILLIS_REDUCES=49553
  36  11/10/26 23:10:35 INFO mapred.JobClient: FileSystemCounters
  37  11/10/26 23:10:35 INFO mapred.JobClient: FILE_BYTES_READ=226
  38  11/10/26 23:10:35 INFO mapred.JobClient: HDFS_BYTES_READ=2420
  39  11/10/26 23:10:35 INFO mapred.JobClient: FILE_BYTES_WRITTEN=609632
  40  11/10/26 23:10:35 INFO mapred.JobClient: HDFS_BYTES_WRITTEN=215
  41  11/10/26 23:10:35 INFO mapred.JobClient: Map-Reduce Framework
  42  11/10/26 23:10:35 INFO mapred.JobClient: Reduce input groups=2
  43  11/10/26 23:10:35 INFO mapred.JobClient: Combine output records=0
  44  11/10/26 23:10:35 INFO mapred.JobClient: Map input records=10
  45  11/10/26 23:10:35 INFO mapred.JobClient: Reduce shuffle bytes=280
  46  11/10/26 23:10:35 INFO mapred.JobClient: Reduce output records=0
  47  11/10/26 23:10:35 INFO mapred.JobClient: Spilled Records=40
  48  11/10/26 23:10:35 INFO mapred.JobClient: Map output bytes=180
  49  11/10/26 23:10:35 INFO mapred.JobClient: Map input bytes=240
  50  11/10/26 23:10:35 INFO mapred.JobClient: Combine input records=0
  51  11/10/26 23:10:35 INFO mapred.JobClient: Map output records=20
  52  11/10/26 23:10:35 INFO mapred.JobClient: SPLIT_RAW_BYTES=1240
  53  11/10/26 23:10:35 INFO mapred.JobClient: Reduce input records=20
  54  Job Finished in 74.586 seconds
  55  Estimated value of Pi is 3.14120000000000000000

 

Hadoopジョブをテスト実行。
無事成功しました。

 

   1  $ sudo /etc/init.d/hadoop-hbase-master start
   2  Starting Hadoop HBase master daemon: starting master, logging to /usr/lib/hbase/logs/hbase-hbase-master-h-akanuma-CF-W4.out
   3  hbase-master.
   4  $
   5  $ sudo /etc/init.d/hadoop-hbase-regionserver start
   6  Starting Hadoop HBase regionserver daemon: starting regionserver, logging to /usr/lib/hbase/logs/hbase-hbase-regionserver-h-akanuma-CF-W4.out
   7  hbase-regionserver.
   8  $
   9  $ sudo jps
  10  14202 Jps
  11  12799 SecondaryNameNode
  12  12672 DataNode
  13  14134 HRegionServer
  14  13996 HMaster
  15  12552 NameNode
  16  12895 JobTracker
  17  11574 QuorumPeerMain
  18  12996 TaskTracker

 

HBaseのデーモンも起動。
擬似分散モードなのでZookeeperは起動させません。

 

   1  $ hbase shell
   2  HBase Shell; enter 'help<RETURN>' for list of supported commands.
   3  Type "exit<RETURN>" to leave the HBase Shell
   4  Version 0.90.4-cdh3u2, r, Thu Oct 13 20:32:26 PDT 2011
   5 
   6  hbase(main):001:0>
   7  hbase(main):002:0* list
   8  TABLE
   9  courses
  10  scores
  11  2 row(s) in 2.0210 seconds
  12 
  13  hbase(main):003:0>

 

hbase shell の listコマンドで動作確認。
こちらも成功です。

posted by Png akanuma on Wed 26 Oct 2011 at 22:43
Contents
Mahout開発環境の作成
App Engine 倹約のすゝめ(BootCamp 2011 Japan)
はじめてのChrome Extension(BootCamp 2011 Japan)
GoogleAppsScriptハンズオン(BootCamp 2011 Japan)
Mahoutインストール
CDH3u1→CDH3u2にアップデート
Comments
yoku0825: nkfの方が使いやすいですが、glibcに含まれているiconvの方が 確実にどの環境にも入っ... '12-6
Hiroaki Akanuma: ご指摘ありがとうございます。「嗜好度は大きい値がより嗜好度が強いことを意味すればどのような値で... '11-11
akr: 初めての推薦エンジンのところ 「属性データはどんなものでも可能。」 は preference ... '11-11
Services from s21g
twpro(ツイプロ)
Twitterプロフィールを快適検索
地価2009
土地の値段を調べてみよう
MyRestaurant
自分だけのレストラン手帳
Formula
ブログに数式を埋め込める数式コミュニティ