内部で使用しているフレームワークをOSS化することにしました。
Huahin Framwork (http://huahinframework.org/)
Huahin Manager (http://huahinframework.org/huahin-manager/)に関しては某所で求められてて先行でリリースしていたのですが、こちらはMapReduceをラップしたフレームワーク本体です。
Pig、Hiveじゃどうしてもできないことがあったためネイティブで書くしかなかったのですが、正直、Writableとかソートとか書くのにはウンザリしていたためこれが出来た感じです。
基本は、MapReduceをラップしてるだけなので足りないものは自分で実装できるようになってます。Key/Valueがレコードという概念になっていて、レコードに対してグルーピングするのかソートにするのかそれともただの値なのかといった感じで指定します。
ジョインに関して内部仕様からの切り出しに苦労してるため現在はサポートされてませんが(自分で実装するのであればできる)、次のリリースでサポートする予定です。
Huahinとは何かってことですが、タイのHua Hinから来ています。
ウチでつけるコード名はワインの産地から決めるって感じなのですが、ワイン産地、タイ=象ということでコード名がそのままフレームワーク名になった超適当な名前付けです。
OSS化って、内部仕様どっぷりだと結構てこずるますね。
去年のHadoop Conference Japanで話してから随分時間が掛かった。。
2012年6月28日木曜日
2012年5月2日水曜日
MRUnit 0.9.0 released (mavenでの取得方法)
ついでなんでメモがわりに書いておく。
MRUnitの0.8.1からHadoop 0.23を対応したことによりMavenでの
取得方法が変更になっている。
0.8.0までだと
のような感じでよかったのだけど、0.8.1からHadoopのバージョンを指定してあげないといけない。
下記のような感じでclassifierにバージョンを指定してあげる。
ちなみに、hadoop1は1.0.2でhadoop2を指定すると0.23.1が指定されることになる。
MRUnitの0.8.1からHadoop 0.23を対応したことによりMavenでの
取得方法が変更になっている。
0.8.0までだと
<dependency> <groupid>org.apache.mrunit</groupid> <artifactid>mrunit</artifactid> <version>0.8.0-incubating</version> <scope>test</scope> </dependency>
のような感じでよかったのだけど、0.8.1からHadoopのバージョンを指定してあげないといけない。
下記のような感じでclassifierにバージョンを指定してあげる。
<dependency> <groupId>org.apache.mrunit</groupId> <artifactId>mrunit</artifactId> <version>0.9.0-incubating</version> <classifier>hadoop1</classifier> <scope>test</scope> </dependency>
ちなみに、hadoop1は1.0.2でhadoop2を指定すると0.23.1が指定されることになる。
Hadoop Hacks now on sale
ステマ的には遅いが一応書いとく。
が4/25に出ました。
まぁ、いろいろありました。
右の翻訳と一時期かぶってたりとか(結構キツかった)。
某氏が起業してベイエリアに行っちゃうとか。
代わりにuしんさんひっぱってきたりとか。
無事出てよかったですね。
が4/25に出ました。
まぁ、いろいろありました。
右の翻訳と一時期かぶってたりとか(結構キツかった)。
某氏が起業してベイエリアに行っちゃうとか。
代わりにuしんさんひっぱってきたりとか。
無事出てよかったですね。
2012年4月1日日曜日
HH2をOSSとしてリリースします
HadoopにかわるHH2の開発を進めてきましたがOSSとしてリリースすることにしました。
HH2はHadoopのJobTracker、TaskTrackerを置き換えるもので効率よくJobを実行することができます。まず、JobTrackerにかわるHumanTrackerがTaskTrackerにかわるHumanTaskerにタスクの割り当てを行います。
タスクの割り当てに使うのは特に難しいことはありません。メールによる通知となります。
この時、通常のHadoop同様にHumanTaskerがなんらのか障害により通達エラーが発生する場合があります。
この場合もHadoop同様に別Humanにタスクを割り当てます。ただし注意しなければいけないのは別Humanにタスクを割り当てる場合は、ボーナスの支給が必須となります。
最後に、やはりHumanTrackerはHadoopのJobTracker同様にSPOFになりえるということです。HumanTrackerの障害は様々ですがいずれこの問題は解消される予定です。
ここまで見てきたとおり通常のHadoopよりも効率的にJobが実行できることがおわかりいただけたでしょう。なお、HH2のOSSリリース予定は2045年5月を目標に着々と準備を進めているところです。
リリースが完了するまでしばらくお待ちいただけますと幸いです。
HH2開発チーム一同
2012年1月19日木曜日
Related Cassandra
自身のことでのCassnadra関連のことをいくつか書き留めておこうかなと。
その1。
ずっと、大谷さんと翻訳を続けてきた「Cassandra: The Definitive Guide」の翻訳本「Cassandra」が去年の年末に発売されました。
正直、バージョンはすぐあがるし翻訳を始めた時点でもうアウトなところとかいっぱいあるしこれは正直単なる翻訳だけでは済まなくコードの検証も入れつつだったのでかなり辛かったです。
原書と違うところは基本0.8ベースで「0.8からの新機能」は1からの書き起こしです。
やってる最中に1.0がリリースされてるとかでそれに合わせてると永遠に終わらないので0.8で打ち止めってことになりました。
その2。
以前からやっていた 「Cassnadra-GUIプロジェクト」 がGoogleとApacheが共同でホスティングしているApache関連のプロジェクト 「Apache Extras」 に移行しました。新しいURLは
http://code.google.com/a/apache-extras.org/p/cassandra-gui/
そろそろ、1.0を出さないとね。。。
その3。
去年の年末(ぐらい?)に、Brian O'Neill氏からお願いされて
「Virgil(GUI & REST Layer for Cassandra w/ SOLR integration)」(ようするにCassandraの操作をRESTとかでやろうぜみたいな)
プロジェクトにcommiterとして参加しております(まだ手をつけられてないのは内緒)。
そして、これはCassandraとはまったく関係ないけど、去年の年末で終わったと思ってたもう一つ原稿が今週頭に終わったという。
というか、小出しに来たりするので終わったと思ったらまたお願いされたりw
今年もこんな感じで進むのでしょうか的な感じが。
その1。
ずっと、大谷さんと翻訳を続けてきた「Cassandra: The Definitive Guide」の翻訳本「Cassandra」が去年の年末に発売されました。
正直、バージョンはすぐあがるし翻訳を始めた時点でもうアウトなところとかいっぱいあるしこれは正直単なる翻訳だけでは済まなくコードの検証も入れつつだったのでかなり辛かったです。
原書と違うところは基本0.8ベースで「0.8からの新機能」は1からの書き起こしです。
やってる最中に1.0がリリースされてるとかでそれに合わせてると永遠に終わらないので0.8で打ち止めってことになりました。
その2。
以前からやっていた 「Cassnadra-GUIプロジェクト」 がGoogleとApacheが共同でホスティングしているApache関連のプロジェクト 「Apache Extras」 に移行しました。新しいURLは
http://code.google.com/a/apache-extras.org/p/cassandra-gui/
そろそろ、1.0を出さないとね。。。
その3。
去年の年末(ぐらい?)に、Brian O'Neill氏からお願いされて
「Virgil(GUI & REST Layer for Cassandra w/ SOLR integration)」(ようするにCassandraの操作をRESTとかでやろうぜみたいな)
プロジェクトにcommiterとして参加しております(まだ手をつけられてないのは内緒)。
そして、これはCassandraとはまったく関係ないけど、去年の年末で終わったと思ってたもう一つ原稿が今週頭に終わったという。
というか、小出しに来たりするので終わったと思ったらまたお願いされたりw
今年もこんな感じで進むのでしょうか的な感じが。
登録:
投稿 (Atom)




