HBaseCon2013参加レポート(前編) | サイバーエージェント 公式エンジニアブログ
こんにちは。アメーバでR&Dエンジニアをしている梅田と申します。

2013年6月13日に開催されたHBaseCon2013に参加してきましたのでレポートさせていただきます。HBaseConは、Apache HBaseの貢献者、開発者、管理者およびユーザのためのコミュニティイベントで、年1回開催されています。

今回はサンフランシスコのマリオット・マーキースホテルが会場で、講演は4トラック構成になっており、参加者は興味のあるものを選択して聴講していきます。

全てを紹介することはできませんが、今回は興味深かったセッションについて、前編、後編に分けていくつか紹介させていただきます。前編は、私、梅田がお送りします。


なお、当日の発表資料は、こちらの各セッションのリンクからダウンロードできます(2013年7月末時点、一部資料がアップロードされてません)ので、興味の有る方は是非どうぞ。

それでは、早速セッションの紹介に移りたいと思います。私は、Facebook、Yahooの中の人のセッションを紹介します。長文ではありますが、とても興味深い内容だと思いますので、是非最後までご覧ください。


HBase use cases at Facebook
Liyin Tang, Software Engineer, Facebook & HBase PMC Member

Facebookは、大規模なデータ処理の基盤としてHBaseを利用しています。
今回のセッションでは、次の3点についての説明がありました。
 (1) Tips for boosting performance
 (2) Elastically scale HBase in an online fashion
 (3) HBase Disaster Recovery Plan: Replication and Backup
Tips for boosting performaceでは、6つのTipsを紹介していました。
参考になるものも多かったのでここで紹介したいと思います。

 ① Keep the data local

facebook_per-region_data_placement

リージョン毎のデータ配置を工夫しているそうです。
 
 ② Read the local data
   ・Short circuit readを有効にする
   ・OSのページキャッシュを使う
   ・HBase L2キャッシュを使う

 ③ Reduce IOPS

reduce_IOPS

 ④ Throughput boost
   ・Memstoreのフラッシュを並列化
   ・hlogの多重化
   ・compactionスレッドの多重化

 ⑤ Performance boost with MR

facebook_performance_boost_with_MR

 ⑥ More IO Tuning

facebook_More_IO_Tuning



Multi-tenant Apache HBase at Yahoo!
Sumeet Singh (Yahoo!), and Francis Liu (Yahoo!)

Yahooでは、HBaseをマルチテナント化して使っているようです。
今回のセッションでは、次の4点が主な内容になります。
 (1) Security
 (2) Isolated Deployment
 (3) Region Server Group (HBASE-6721)
 (4) Namespace (HBase-8015)

Region Server GroupとNamespaceについては、HBaseの0.95.2でfixされるそうです。今後使う機会もあるかもしれませんので、ここで紹介したいと思います。

Region Server Group

yahoo_region_server_groups_overview

yahoo_region_server_groups_apis

リージョンサーバのグループを作ったり、リージョンサーバのグループにテーブルを割り振ったりできます。便利ですね。

Namespace

yahoo_namespace
ネームスペースがあると複数のサービスで使うときにテーブル名で困ることも少なくなりそうですね。



さて、次回は後編として、HBaseConに一緒に参加したR&Dエンジニアの飯島さんからレポートをお届けします。お楽しみに!