Hadoop Conference Japan 2013 Winter( #hcj13w )に参加してきました


Hadoop Conference Japan 2013 Winter( #hcj13w )に参加しました。
昨日2013/01/21(月)に東京ビッグサイトで開催されたHadoop Conference Japan 2013 Winter( #hcj13w )に行ってきました。
ここでは見てきた発表についていくつか簡単にご紹介したいと思います。

なおメモを元に書いていますので、間違いもあるかと思います。
詳しくは発表者の資料を参照してください。
資料へのリンクは、Hadoop Conference Japan 2013 Winter( #hcj13w )のページにあります。

会場、参加者、運営

会場は東京ビッグサイトで、参加者も1000人前後という数。
これをコミュニティベースで運営する(!)というのは凄すぎると思います。
実際に見事に運営されていた実行委員会の皆様と株式会社リクルートテクノロジーズの皆様にまず感謝したいと思います。

Hadoopを取り巻く環境

最初の挨拶と、申し込み時のアンケートの結果の紹介、Doug Cutting氏のビデオレターなどの内容でした。

アンケートによると、利用者の多いディストリビューション/バージョンは、多い方からCDH3, CDH4, Apache 0.20系となっていて、CDH4が予想以上に多い印象でした。またEMRやMapRなどのディストリビューションにも一定数の利用者が居て、まだまだ群雄割拠な時代という感じも受けます。
利用している関連プロダクトは、上位からHive, HBaseとなっていて、HBaseを使っている人がアンケート全体の1/4程度という高い割合であることに驚きの声が上がっていました(これは、HBaseは開発や運用が難しいし、使いどころが限定される、という考えが共通であるからこそでしょう)

昨年との比較でいうと、全体に熟練者は増えていっているが使いはじめる人の数はあまり増えていない、という話がありました。
やはりHadoopのみで言っても、最初の準備の難しさ、開発の難しさがあり、さらに実際に運用が始まるとまたハードルが色々ある、という感じで、これをきちんと使いこなせるには一定の技術レベルが求められます。
よってその先のプロダクトが必要とされている現状もあり、今回のカンファレンスでは、HiveやPig、さらにはTresure Dataのようなより簡単にBig dataを扱うためのプロダクトの話が多くありましたし、実際に利用ノウハウも蓄積されていっているようでした。

LINEのHBaseを利用した大規模なメッセージストレージ

今B2Cのサービスで最も熱いLINEのバックエンドを支えるHBaseに関する発表です。

1日のデータ量が100億 row(!!!)という、想像を絶するデータ量を捌くだけでもびっくりですが、それに加えてオンラインで(!!!!)HBaseクラスタをIDCを跨いで引っ越す(IDC Migration)というオペレーションを先日行ったとのことで、聞くだけで唖然としてしまいました。
またNameNodeのHAを、既存のベストプラクティスではなく結局障害に対応するためにrsyncを使ったhostsファイルの書き換えという簡単な方法に変えた、という話も、普通ではない運用から得られた経験の重さを感じます。
やはりサービスは運用開始してからが本当の始まりですよね、というのを改めて感じさせられた発表でした。

Hadoop's Power to Transform Business

Apache Drillという、Google Dremelを参考にした、Big dataに対応した対話型の分析ソフトウェアの紹介でした。
発表者のTed Dunning氏はMapRというHadoopディストリビューションを開発する会社の方であり、またApache DrillやApache MahoutというOSSのcommitterのようです。

Big data処理の分類として

  1. batch processing(Hadoop)
  2. stream processing(Storm, S4)
  3. interactive analysis(Apache Drill, Impala)

という3つがあり、このDrillは3のinteractive analysisに対応するものです。
一般的にBig data処理というと1のbatch processing(Hadoop)のイメージが強いですが、2,3も同時に備えておく必要がある、というメッセージを、今回いくつかの発表で聞いたように思います。

Introduction to Impala ~Hadoop用のSQLエンジン~

Impalaは、Clouderaで開発されているHadoop/HBaseのデータをSQL(HiveQL互換)で取得・分析できるプロダクトです。
これは先のApache Drillと同じく「interactive analysis」というジャンルのプロダクトであり、エンジニアではなくデータサイエンティスト向けのツールとのこと。

従来データ分析者がRDBMS+SQLやBIツールで行なっていたデータのインタラクティブな分析を、RDBMSで扱えないデータ量になったらどうやるのか?、というのは昨年のGoogle BigQuery(Dremel)発表もあり、非常にホットな話題だということを改めて認識しました。
ただ私がよくわかっていないのは、データはメモリに載せるのが基本とのことですが、そもそも対象がBigdataなのにメモリに載せきれるのか?という部分です。
これについてはまた調べてみます。

スケーラブルなシステムのためのHBaseスキーマ設計

「HBaseのベストプラクティスは、(必要がない限り)HBaseを使わないことです。」から始まったので卒倒しそうになりましたが、HBaseを利用する上で基本となる設計指針と、そのベースとなるHBaseのアーキテクチャの説明でした。
HBaseのスキーマ設計の際、従来のRDBMSの考えのまま設計してしまうと非効率でおかしな設計になってしまう、というのは自分自身もよく失敗しているため理解できます。
上記の資料は、「今後はこの発表の資料を読んでからHBaseのスキーマ設計をするようにしましょう」と言える、非常に分かりやすい資料だと思います。

ちなみにHadoop/HBaseのクラスタ構築やその運用を考える際には、Cloudera World Tokyo | Cloudera Japanのページからダウンロードできる資料Hadoopのシステム構築・運用のポイントもおすすめです。

感想

今回のHadoop Conferenceに参加し、現状は素のHadoopは色々面倒なのでより簡単にBig dataを扱いましょうというフェーズに移行していることを再認識しました。
HiveやPig、ImpalaやDrillへの関心の高さがそれを物語っています。
またBatch Processing以外の2つの分類であるstream processing、interactive analysisについても、今後watchしておく必要があると感じました。
今後このブログに書いていければと思います。


This entry was posted in Hadoop, イベント. Bookmark the permalink.