オライリーの「Hadoop」を読みましたが、ちゃんと理解するには後1〜2回は読み直さないと駄目そうです・・・ [IT]
いや〜、きつかった。
この本て厚さが約3cmあるんですよ。
NEX-5 E18-55mm F3.5-5.6
一日1時間半くらい毎日読み続けましたが、読み終わるのに1ヶ月くらい要しました(涙)
まだとりあえず概要が理解できたというレベルで、ちゃんと理解するにはもう1回〜2回は読み直さないと駄目そうです・・・
「Hadoopってなんじゃらほい?」というレベルから読み始めました。
読む前は、「今流行の分散KeyValueStoreの一種なのかな?」くらいに思っていたのですが、全然違いました(笑)
Hadoopとは何か?
一言で言うと
MapReduceアルゴリズムを実行するためのバッチ処理フレームワークなんですね。
MapReduceアルゴリズムを実行するためにはクラスタの構築管理や分散ファイルシステムも必要なので、そのためのミドルウェアでもあります。
なかなかに骨太なプロダクトですね。
MapReduceアルゴリズムについては理解しておく必要があると思っていました。
本書は「実装、実践を伴った解説書」であり、MapReduceアルゴリズムを理解するための良質な参考書だと思います。
もう1〜2回は読み直す事で、理解を深めたいと思います。
しかし、この本を読むとGoogleやYahoo、Facebook等がどれほど難しい事にチャレンジしているのか身に染みますね・・・
テラバイトやペタバイト級のデータを扱うためにはここまでしなければならないのかと圧倒されてしまいました。
それと同時にこの分野はまだ発展途上で「SIerが顧客に提案できるようになるまで枯れるにはまだ何年も要しそうだなぁ」とも感じました。
実際、本書の執筆時点ではHadoopのAPIも改変が加えられている最中だったらしく、本書に記述されているサンプルコードは旧APIで書かれたコードと新APIで書かれたコードがゴチャ混ぜです。
(新APIで書かれたサンプルコードがWebサイトで提供されるそうです。)
今日時点でのHadoopのバージョンもまだ「0.20.2」ですし、まだまだこれからって感じですよね。
HBaseとかHiveとかサブプロジェクトも発展途上な感じですし・・・
っていうかHBaseとHiveってどっちが本命なんですかねぇ?
違うアプローチだけど、最終的に目指している所は同じような気がするんですけど・・・
そういう意味ではまだまだ混沌とした世界でもありますねぇ。
でもHadoopが普及した暁にはCOBOLを駆逐してくれそうだし、今後に期待したいプロジェクトですよね。
S2JDBCからHBaseなりHiveなりを操作できるようになって、RDBライクに使えるようになったら良いですよねぇ。
WebアプリからもMapReduceバッチプログラムからも共通に扱えるデータストアになったら一気に普及するかもしれないと思います。
コメント 0