Hadoop Hacks Night詳細レポート[後編]

3月8日(月)に開催された「gihyo.jp×Yahoo! JAPAN presents "Open TechTalk" Hadoop Hacks Night⁠⁠。前編では、基調講演のYahoo! ,Inc. Hadoopチーム アーキテクトOwen O'Malley氏のセッション、そして特別講演のヤフー株式会社 R&D統轄本部 吉田一星氏によるセッションをレポートしました。後編では、続いて行われたパネルディスカッションの模様をお届けします。

第3部 パネルディスカッション

最後はOwen氏、吉田氏に加え、田中慎司氏(株式会社はてな⁠⁠、藤川幸一氏(株式会社シリウステクノロジーズ⁠⁠、三上俊輔氏(筑波大学)の5名のパネリスト、モデレータ馮富久(株式会社技術評論社)による計6名でのパネルディスカッションです。

勢揃いしたパネラー一同
勢揃いしたパネラー一同

Hadoopのメリット、用途は?

各自かんたんな自己紹介の後、新たに登場した3氏からHadoopのメリットが語られました。田中氏は「巨大なデータをスケールするリソースを使って短時間で処理できる⁠⁠、藤川氏は「いろいろフレームワークを使わなければいけないところを、あまり意識せず完全にスケールするシステムを作れること⁠⁠、三上氏は「プログラマの負担を減らせること」が挙げられました。

続いて3氏がOwen氏に質問。まず田中氏が「Hadoopは今、バッチ系の処理が多い。HBaseなどによってリアルタイムでの処理が多くなってくると期待していいか?」と質問。それに対しては「それはないと思う。今後、時間を短縮することによって、リアルタイム的な処理ができるようになることはあるだろう」との回答が寄せられました。

田中慎司氏
田中慎司氏

次は藤川氏の「一般的にはログ分析がいちばん多いし、インデックスの作成、機械学習がよくでてくる。だが私はRubyで使えるというプロジェクトをやっていることもあり、他の用途で使えないかと思っている」という質問。Owen氏は「パズルのような組みあわせの分析などに使える」と回答、それを受けて三上氏が「生物などの遺伝子解析などで使われることもあると聞いている。結果の話は聞いていないが、将来有望とのこと」と発言。Owen氏も「バンガロールの大学の研究者などあが、遺伝子の組み合わせのマッチング処理に利用している話を聞いたことがある」と答えました。

回答を受けて藤川氏は「Hadoop PapyrusはMapReduceしかラップしていないが、HDFS処理をラップするような形にするのもおもしろい」と興味を示しました。それを受けて三上氏からは「その場合に標準に準拠していないなどの問題があるが」との提議がありましたが、それに対してOwen氏は「インターフェースについては年を追うごとに増えてきている。新たに、APIのFileContextを作成している。0.22にはでると思う」と答えました。

藤川幸一氏
藤川幸一氏

不安が残るHDFSの信頼性

続いて吉田氏がHDFSに言及。⁠HDFSはくせがあると思う。フロントサーバから大量のアクセスがきたり、小さなファイルがたくさんあるようなものにも向いてない。自分が使った中では不安定な感があるし、重要なデータを置くのはどうかと思う」との見解とともに、⁠ストレージとしての可能性を目指していくのか、MapReduceのストレージとして割り切るのか」という将来の方針について意見が出ました。

それに対してOwen氏は「Yahoo!バージョンの0.20で出ているが、セキュリティについてもQAに入っている。今年の夏にはリリースされる」とのことでした。

三上氏からは「顧客の情報などをHDFSに載せて運営した例はあるか」との質問。それに対しては「HDFS以外のバックアップは以前は存在していたが、いまはそこにしか残っていない。しかし、今後は複数のクラスタで、複数のデータセンターにまたがったバックアップなどを提供していきたい」との回答でした。

三上俊輔氏
三上俊輔氏

Owen氏は「実際に運用していく中でデータを失ったこともある」という事実も披露。同時に「Hadoopのレプリカを1に設定していたことも原因。HDFS自体は信頼性の高いものになってきている。ユーザのミスによって失うもののほうがはるかに多い」との見解を示しました。

関連して、吉田氏からはネームノードのフェールオーバーについてコメントが。⁠0.21でバックアップノードができると見た記憶があるが、そのあたりの自動フェイルオーバーのプランについてはどうか」との質問に対し、⁠0.21で実装されることはまちがいありません。現状ではありませんが、それでも1個のノードのほうが多くのノードよりはいい。近い将来、そちらにも手を加えるつもりではあるが、すぐにではない」とのことでした。

MapReduce以外の計算モデルは?

続いて田中氏が「MapReduce以外の計算モデルを実装するようにいわれたことはあるか」との質問。それに対してOwen氏は「ある。Yahoo!でもMPIのリクエストはある」⁠近く将来、複数のスケジューラを同じクラスタの中で処理できるようにして、片方でMapReduce、もう片方はMPIのようなモデルを実装することができるようになる」と回答。⁠もし興味あればバークレーで実際に例がある」との補足がありました。

パネラーからの質問にコメントするOwen O'Malley氏
パネラーからの質問にコメントするOwen O'Malley氏

MapReduceの実装について

先の質問に加えて、三上氏からMapReduceの実装についての質問がなされました。現在、Googleではキーの変更ができないことに対してHadoopはできることの比較について、Owen氏より「意図的にそうしている。違うフォーマットのキーを使うことで、アプリケーションの中で異なるキーを使うことができる他、完全にキーを書き換えることもできるが、そうするとまったく違った結果が出てしまう。そのためにいくつかのアプリケーションでキーを変えることが重要になる」との回答が示されました。

MapReduceについては、吉田氏も「いまはMapReduceの論文をもとに実装しているが、将来的には論文にない機能を盛り込んで、統合分散処理フレームワークとしていつのまにかGoogleのMapReduceを超えていた、というような結果になってほしい」とコメント。

それに対して「できれば超えるようなものにしたい。ただ、今は彼らより多くのユーザーがいる。ほかのグラフの処理などに関しては当然使うこともできるが、不便なところがある」⁠Owen氏)との見解でした。

前のセッションに続いて登場の吉田一星氏
前のセッションに続いて登場の吉田一星氏

Googleが話題に上ったことに関連して、藤川氏からは1月19日に成立したGoogleのMapReduce特許について言及がありました。Owen氏は「法律家ではないので詳しくはわからないが、USではエンジニアにとっては落胆することではある」と話しつつも、⁠そちらについて具体的に見ているわけではなく、それらのテクノロジーを使うことにGoogleからコメントが上がっているわけではない。また、大学で教えて数年たっているので、問題にならないと思っている」と楽観的な見通しを述べました。

ここで、モデレータの馮より、会場でHadoopを使っている方の挙手を求めたところ、全体の2割ぐらいの結果となりました。さらに、⁠日本のエンジニアへの期待は?」と質問したところ、Owen氏からは「もっと日本の開発者からパッチがあがってきてほしい」との期待が寄せられました。

モデレータ:馮富久
モデレータ:馮富久

気軽に使うには向かない?

続いて会場からの質問募集。ハードウェアベンダにお勤めの方からは「大量のデータを持っていないクライアントから使いたいとの相談がくる。そういうとき、メーカにとってはサーバが売れるのでうれしいが、お客さんが運用できるか不安になる。一般ユーザーが使えるようなノウハウを広めてほしい」との希望が。

それに対して田中氏は「最近だとAmazonのElasticMapReduceを使えば?といってしまいます。Hadoopを使うにはノウハウが必要。継続的につかうなら社内で抱えてもいいが」との見解を提示。Owen氏は「もしリアルタイムで処理したいならhBASEを利用すべき」とコメントしました。

SSDを利用して高速化できないか?

先ほど質問した方から、さらに「いまでもオンメモリでリアルタイム処理するシステムはある。Hadoopもそのようなやりかたができるのではないか」との提案が。それを受けて三上氏が「もともとシーケンシャルのほうが早くてそれを利用するという話だったが、SSDなども出てきているが」とコメントすると、Owen氏は「SSDはとてもおもしろいが、コスト的には効率的でない」と回答。

一方で「ネームノードの内容をメタデータとして利用する分には使い勝手が良いと思っている。なぜなら、そういったデータを探すときはHDDのシークが発生するため」とコメントしました。あわせて「もう1つの基本としては、SSDを転送するときのキャッシュとして使う方法があると思います」と見解を示しました。

Owen氏「SSDは高価なんだよ」
Owen氏「SSDは高価なんだよ」

バージョン1.0はいつ?

長い間バージョンが0.XとなっているHadoopについて、三上氏から「今のバージョンが0.2。それが1.0になるにはいつごろ?また、そのためには何が必要?」と質問が挙がりました。

これに対しては「長い間1.0がどのようになるべきかは話をしてきた。また、現在も開発が進められていることをふまえて、0.22が実際に1.00の一歩前、あるいは1.0と呼べるものになるものと期待している。実際には0.20が使われているので、それが実質的な1.0といいたい」とのことでした。

Pigで困ることは?

次に、馮より「冒頭のOwen氏のプレゼンで紹介された、Pigを60%使っているという内容に対して、Twitterからの問い合わせやコメントとしてPigに触れるものが多かった」と話を振ると、藤川氏からも「Pigがここまで使われているとは思わなかった」という前置きの後、⁠Pigでやりづらいような処理は?」と、Owen氏に追加で質問が挙がりました。

これに対して「Javaとアセンブラの違いのように、スピードと開発の生産性のトレードオフ。一部Pigにそぐわないものもあるが、ほとんどのアプリケーションはPigで実装することができると思っている」⁠Owen氏)と、Pigの有効性を強調した結論が示されました。

突っ込んだ質問の連続に苦笑する(?)Owen氏
突っ込んだ質問の連続に苦笑する(?)Owen氏

Hadoop開発にコミットするために

ここでOwen氏への質問を一旦お休みし、モデレータの馮から「Hadoop開発の魅力、モチベーション」というテーマが振られました。そこで、まず、Papyrusを開発している藤川氏に開発をしようと思ったきっかけについて質問されました。

「きっかけはたいしたことなく、未踏に応募しようと思ったとき。⁠WEB+DB PRESS』ではてなの伊東直也さんがHadoop Streamingの記事を書いていて、それを読んでおもしろいと思ったのがきっかけ。私はHadoopはもっとかんたんに使えるものではないかと思って。未踏は狭き門ですが、熱い思いを書いて採択された」とのことでした。

さらに、開発を続けるにあたり、今後については「Hadoopでしかできない領域がある。たとえばFacebookやTwitterでもHadoopがないとダメ。⁠開発を続けていくことで)その現状をもっと改善できると思う」とのこと。それに対してOwen氏も「おっしゃるとおり、いろんな企業で使われているので、将来的になくなることはない。ぜひ皆さんで開発をしていってほしい」とのコメントが寄せられました。

藤川氏からは「将来的にはHadoop Streamingのように、PapyrusもHadoop標準パッケージのcontribフォルダに入って使われるよう貢献していきたい」との抱負も語られました。

Yahoo! Japanとして今後どう取り組むか?

また、吉田氏にもYahoo! JAPANのこれからに関して聞いてみると「現状はかなり過渡期。サービスごとにクラスタが乱立していたのを統合していくことになったので、今後は運用と開発は分離しなくてはいけない。エンジニアの数が増えていくと教育も必要になっていく。今まではJavaでゴリゴリ書いていたのが、PigやHiveで初心者でも書けるようにしていかないといけない」と課題と見通しが示されました。

Yahoo!とCloudera、HiveとPigの住み分けは?

複数あるHadoopのエディションについて、藤川氏がYahoo!とClouderaの棲み分けは?そちらも開発者がたくさんいるが」というテーマが上がると、Owen氏は「Clouderaは違った目的を持っている。実際にはサービスを売ることに主眼を置いている点が(Yahoo!とは)異なる。ただし、オープンソースであるので、無理矢理棲み分けるのではなく、全員でHadoopはいっしょに推進していこうという雰囲気になっている」と回答。

「幸い、Apacheでは開発ポリシーがある。一部フラストレーションとなることもあるが、変更する場合は同意が必要な仕組みのため、目的を実現するために最適な方法だと思う」とのことでした。

関連して三上氏から「Yahoo!ではPigがあって、FacebookではHiveがある。スケジューラも。そのあたりは?」との質問が。

Owen氏の回答は「それぞれ違う設計方針。ディスカッションをして、良い点は両方に実装されていきます。ユーザにはまぎらわしいかもしれませんが、お互い相談しながら進めることができている。最終的にはいいところをとって1つにしていく流れを作っています」というもの。⁠一部分には無駄になってしまう部分もあるかもしれませんが、2通りのやり方で薦めることで、MapReduceのような答えをだせるのではないかと思っています」とのことでした。

画像

Hadoopの今後を盛り上げるイベントに

最後は各人から一言ずつもらい締めくくられました。

「大学などのYahoo!と違った環境でもうまく使えるように、設定がよりプラガブルになるといい」⁠三上氏)

「今回のイベントは、日本のHadoop使いのナレッジベースの底上げができたと思うし、リポジトリのContribにPapyrusを乗せる目標ができた」⁠藤川氏)

「将来像が見えてきた。HDFSの信頼性の問題があるが、近い将来オリジナルのデータをHDFSに乗せたい」⁠田中氏)

「ElasticMapReduceのような、ジョブをちょっと投げるだけで手軽に処理できるような未来がくるといい」⁠吉田氏)

「メインストリームにきたとき、なぜシステムがダウンしてしまうのだ?といわれることになる。その問題を解決するために、もっとHadoopを信頼性のあるものにしていきたい」⁠Owen氏)

今回は100名もの参加者が集まり、日本におけるHadoopのイベントとしてはかなりの盛況。懇親会にも60名もの参加があり、夜遅くまでHadoopについて熱い議論が交わされていました。

動画公開されています

当日の模様はUstream.tvにて動画で見ることができます。

おすすめ記事

記事・ニュース一覧