Hadoop
ちょっと,0.16.0に入っているかチェックしていないけど,DFSにパーミッションをつけようという話が大分進んでますね.とりあえず,rwが設定できるようです.xは,まあ意味不明なので無しということですね.
メーリングリストとJIRAを読んでいて,気になったときのメモ.なんか,HadoopをLuceneプロジェクトから独立させて,Apache直下のプロジェクトにしようという話が持ち上がってますね.主要メンバ全員が賛成しています.で,問題として,現時点でのcommitterが…
Hadoop Map/Reduceを読んでみてのメモ. All messages originate at the client -Prevents cycles and therefore deadlocks なるほど,このアーキテクチャ自体は,デッドロック回避を行うためだったわけね. Errors -Include timeouts and communication pro…
基本的には,DataNode.run()において,offerserviceが呼び出されて,NameNodeとの整合性を図る.で,DataXceiveServer.start()で,acceptを行うサーバをデーモンとして立てる.受付けると,DataXceiverが起動して,基本的なやり取りを行うスレッドとなる.Th…
Pigってのは,googleで言うところのsawzallに対応するようです.が,ちょっと見たところでは,Sawzallどころではなくて,もっと意欲的です.Sawzallは,MapReduce処理モデルに思い切り引っ張られているけど,Pigは,リレーショナル演算をHadoop::MapReduce上…
NameNodeのソースを追いかけてみたので,ちょっとメモ. NameNode.main(); NameNode.initialize(); new Server(); new Listener(); NameNode.main(); Server.start(); Listener.start(); new Handler[n]; Handler.start(); Listener()がRPCのaccept()を行う…
As the users of Hadoop ask for more stability and fewer release upgrades to deal with, I think we should move the release cycle out to 3 months from the current 2. I propose that we move the feature- freeze date for 0.16 to the first week …
HDFS as a WebDAV storeこりゃすごい.WebDAVとして見えるようになれば,誰でも使えるお気楽ネットワークストレージの完成ですねぇ.どうでも良いけど,はてな記法のリンクは,URLにコロンが入っていると使えないのね.
久しぶりに,Hadoopメーリングリストのたまっていたのを全て読めました.200〜300スレッドを行ったりきたりでしたが,やっと0になりました.一時は,700くらいたまってしまって,これは読んでいけないのではないかと思ったけど,慣れてくるとやっぱり必要な…
まぁ,Hadoopというより,TortoiseSVN.hadoopのレポジトリをそろそろ丸まる取ってこようかなーと思って,適当に見ていたら,TortoiseSVNが紹介されていたのでダウンロードしてみた.だいぶ前に,普通のディレクトリ・ファイルのバージョン管理ができるとい…
えーっと,HDFSやMapreduceには,それなりに気の利いたwebUIがあります.で,HBaseにもあるようなので,HMasterを起動したサーバのip:60010でアクセスしてみたけど,ダメでした.なんでだろ.
Current RPC (really IPC) relies on client side timeouts to find "dead" sockets. I propose that we have a thread that once a minute (if the connection has been idle) writes a "ping" message to the socket. The client can detect a dead socket…
Hadoop0.15.0系でdfs-start.sh -upgradeをやった後で,間違えて,Hadoop0.14.0系を立ち上げてみたところ,バージョン不整合でnamenodeが立ち上がりませんでした.それでもまだ,Hadoop0.14.0を立ち上げていることにきづかずに,dfs-start.sh -rollbackをやっ…
待望のHBase入りのバージョン0.15.0がリリースしました.「10分でできるHBase」のとおりやったら,確かに10分ほどで動作した.とりあえず,HBaseのshellを起動して,Create Tableやinsert/selectを実行したところ,Create Tableは10秒くらい.insert/select…
たったこれだけで,実行できるのね../hadoop jar ../build/hadoop-streaming.jar -input /grep.in -output /grep.out -mapper "grep Queue" -reduce "cat"
ということで,HBaseについて.最近,Hadoop内でも特に活発に開発されているHBaseについてです.これは,Google Bigtableの再実装ですね.HBase Architectureを読んでみたまとめを書いておきます.第3弾です.このエントリで翻訳は終了です.HBase Master Se…
ということで,HBaseについて.最近,Hadoop内でも特に活発に開発されているHBaseについてです.これは,Google Bigtableの再実装ですね.HBase Architectureを読んでみたまとめを書いておきます.第2弾です.Client APIについては,JavaDoc読めとのこと.後…
ということで,HBaseについて.最近,Hadoop内でも特に活発に開発されているHBaseについてです.これは,Google Bigtableの再実装ですね.HBase Architectureを読んでみたまとめを書いておきます. Data Modelとして,基本的なデータの表現方法が記されてい…
大分前に,ストップしていたソースを別なところから読み始めることにする.HDFSを担うDataNode.javaのmain()から. try { StringUtils.startupShutdownMessage(DataNode.class, args, LOG); DataNode datanode = createDataNode(args, null); if (datanode !…
HadoopのNameNodeが落ちたんですが,ほかのDataNodeやjobtrackerを無理くりkillで終了させた後(stop-all.shが効かないので.).でそのあと,start-all.shをやったら,何事も無かったのごとく再起動して,それまで入れたデータも残っていました. ふーん.あ…
どうやって,HDFSのライブラリを使うの?という質問に.以下のようなソースが流れてました.んー,シンプル. import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.apache.hadoop.fs.FSDataOutputStream; import org.apa…
For our CPU-bound application, I set the value of mapred.tasktracker.tasks.maximum (number of map tasks per tasktracker) equal to the number of CPUs on a tasktracker. Unfortunately, I think this value has to be set per cluster, not per mac…
My project, Pig, provides an interactive shell for users where, among other things, they can do some basic DFS operations such as changing firectories, copying files, etc. It would be great if Hadoop could provide a consistent interface to…
ここ1週間ほど見れなかったんだけど,760スレッド程度(gmail的な数え方)になってしまった.orz...きついぜ. そういえば,primaryサーバが落ちたなぁ.落ちるとそれで終了名ところがつらい.とおもったら, This patch implements a separate process calle…
しまった,ココにmapreduceに関連するクラスの説明があったよ.なので,いったんソースを追いかるのをペンディング. JobInProgress JobInProgressは,JobTrackerによって追跡されているジョブを表現しています.JobInProgressはTaskInProgressインスタンス…
ちょっとブレイク. 割と真剣にHadoopへパッチなんかを提供できるといいなぁと思いながらソースを少しずつ読んでますが,ちょっと思ったこと. ・Cscopeで追いかけているけど,javaのインターフェースを定義として認識してくれないのが痛い. ・継承関係が割…
で,JobInProgressのコンストラクタを見てみるとなんだか色々やっているので,new JobInProgress()でgrepしてみると,JobTracker::submitJobのなかにだけありました. JobInProgress job = new JobInProgress(jobFile, this, this.conf); 登録したときに,Jo…
シマッタ!!どうやら,JobClient.javaの running = jc.getJob(jobId); がメインルートみたい.getJobの中では, public RunningJob getJob(String jobid) throws IOException { JobStatus status = jobSubmitClient.getJobStatus(jobid); if (status != nul…
つづきます. submitter::submitJob(JobConf conf) へ入ります.この返り値は,RunningJob インターフェースが帰ってくるので,mapreduceがどこまで進んだかをチェックするために利用するわけですね. // default map output types to BytesWritable if (!ge…
package org.apache.hadoop.examples.Grepが定義されいるGrep.javaから見てみる.mapreduceの実行は, JobClient.runJob(grepJob); でされている.runJobは,staticで宣言されていて, JobClient jc = new JobClient(job); でJobClientが定義されていて, ru…