「Apache HBase 2.0」リリース

 Apache HBase開発チームは4月30日、Hadoopクラスタ向けデータベースの最新安定版「Apache HBase 2.0.0」を公開した。プロジェクトのWebサイトより入手できる。

 Apache HBaseはApache Hadoopの分散ファイルシステムであるHDFS上で動作する分散型データベース。多数の列と行で構成される大規模なテーブルを、一般的なハードウェアで構成されるクラスタ上で動かすことを目指す。拡張性に優れ、ビックデータに対してランダムにリアルタイムでの読み込み/書き出しを行いたい場合に最適という。RegionServers(リージョンサーバー)間でのフェイルオーバー機能、クライアントアクセス用のJava API、リアルタイムクエリ向けのBlockキャッシュとBloom Filterなどの特徴がある。

 Apache HBase 2.0は、2015年2月に公開したApache HBase 1.0に続く最新のメジャーリリースとなる。JDKはバージョン8以上、Hadoopはバージョン2.7.1が最小要件となり、いくつか後方互換性のない変更も加わっている。

 オフヒープでは、read/write pathとしてJVMのヒープを削減するようになった。コピーも削減され、BucketCacheが常時オンとなった。Procedure V2として、非同期オペレーション向けに管理インターフェイスを変更した。非同期の戻り値の型に変更が加わり、障害発生時に対応できるようにした。互換性のない変更であり注意が必要となる。コンパクションを強化し、オフピーク時にマイナーコンパクションのための最大のサイズを設定できるオプションが加わった。

 リージョンのアサインではデフォルトでZooKeeperを利用しないようになった(デフォルトでは無効)。hbase.assignment.usezkとhbase.assignment.usezk.migratingを導入、ZooKeeperを使わない割り当てができるという。

 名前空間でベーシックながらリソース割り当て制限(クォータ)機能をサポートした。割り当てられるテーブル数やリージョン数をそれぞれ設定できる。また、RPCリクエストのスキャンにタイムリミットを設定する機能を改善した。HBaseストリーミングスキャン機能を実装するクラスも導入した。

 バックアップと復旧も強化し、スナップショットベースのフルバックアップ、差分バックアップなどで強化が加わった。RowLockがexclusiveではなくreader/writerとなった。シーケンスIDがHRegionからMVCCクラスの下になり、MVCCのメソッドもクリーンにした。

Apache HBase
https://hbase.apache.org/