- HDFSとHBaseの2つの分散システムのレイヤの導入に伴う管理の負担、リソース利用効率の改善の余地
- Javaで実装されているHBaseは、実行プロセスが大きなJavaヒープを確保した際にガベージコレクション動作の予測が困難
- バックグラウンドのコンパクション動作に伴う処理のレイテンシのブレ
これらはHBaseの利用を阻害するほどの大きな課題ではないものの、クラスタ運用の手間とコストを抑えたい管理者や安定した低レイテンシのアクセスを求めるアプリケーション開発者にとっては解決が望まれていました。
MapRディストリビューションはHDFSの代わりに、HDFSと互換のインターフェースを持つ「MapR-FS」という独自の分散ファイルシステムを導入しています。MapR-FSはもともと備えるランダムアクセス可能なアーキテクチャをさらに発展させ、MapR-DBとしてHBaseのデータストアの機能を取り込むことで、単一のレイヤで分散ファイルシステムの機能とNoSQLデータベースの機能の両方を同時に提供しています。
図3:HBaseアーキテクチャをシンプルに(筆者作成)
これにより利用リソースの共有が図れるほか、レイヤの削減によるオーバーヘッドの低減、障害復旧プロセスの簡素化により、クラスタの管理が容易になっています。また、MapR-FS/MapR-DBは、C/C++ネイティブ実装であるため、メモリ管理の安定性も有しています。さらに、内部のデータ構造にランダムアクセス性能を活用したインデックス方式を取り入れているため、コンパクションがデータアクセス性能に与える影響をほぼ無視できるレベルに落としています。
HBaseのデータモデルやテーブル設計の考え方、アプリケーションがアクセスするインターフェースは変わらない上、性能が向上するため、アプリケーション開発者にとってのメリットもあります。
Apache HBaseにしてもMapR-DBにしてもIoTに代表されるような、これからの市場でより求められるニーズに応える重要なテクノロジであり、製品となっていくことが予想されます。
- 草薙昭彦(くさなぎ・あきひこ)
- MapR Technologies
- サン・マイクロシステムズ、EMCを経て、2013年よりマップアール・テクノロジーズに入社。サーバ、ネットワーク、ストレージ、OSといったインフラ関連から、アプリケーション開発、データベース、分散処理システムの幅広い経験をもとに、技術コンサルティング、プラットフォーム導入支援に従事する一方、近年Hadoopを中心として発展が進む企業の分析システムに関する動向を追いかけている