Hibari(ひばり)はデータの強い整合性高可用性を保証するスケールアウト型分散キー・バリューストアNoSQLデータベースに分類される。東京に本社を置くクラウディアン社(旧ジェミナイ・モバイル・テクノロジーズ)が、モバイル・メッセージングに適したデータベースとして2005年から開発を始め、2010年7月27日にオープンソースソフトウェアとして公開した。[1] [2] 日本の大手Webメールのストレージとして採用された実績がある

Hibari
開発元 Hibari developers
初版 2010年7月
最新版
v0.1.11 / 2015年4月5日 (9年前) (2015-04-05)
リポジトリ ウィキデータを編集
プログラミング
言語
Erlang
対応OS クロスプラットフォーム
対応言語 日本語、英語
サポート状況 活発
種別 分散キー・バリューストア、 NoSQL
ライセンス Apache License 2.0
公式サイト https://github.com/hibari/hibari
テンプレートを表示

Hibariは漢字で「雲雀」と書き「クラウドの小鳥」を表す。クラウドコンピューティングに適し、SNS(ソーシャルネットワーク)のような、わずか1日でテラバイトもしくはペタバイト規模のデータを生み出すようなサービスで使用できる。

特徴

編集

Hibariはノード間のデータ複製にチェイン・レプリケーション方式[3][4][5]を採用し、データの持続性や複製されたデータ間の強い整合性を保証する。他の多くの NoSQL と異なり、マイクロトランザクションと呼ばれる限られた範囲のキーに対するアトミックなトランザクションをサポートする。Hibariはデータ操作のレイテンシ(遅延時間)が短く、特にRead操作と200KB前後の大きなバリューの扱いにおいて、他の多くのスケールアウト型 NoSQLよりも高い性能を発揮する[6]

Hibariは一般的なIAサーバー(x86サーバー)だけでなく、ARMアーキテクチャのスケールアウト型サーバーなどでも動作する。サービスの稼働中にサーバーノードを追加することで、処理性能とデータ格納容量をリニアにスケールさせることができ、ある商用サービスでは1つのHibariクラスタで約60台のIAサーバーが用いられている。Hibariクラスタの上限台数ははっきりとしていないが、ノード間の通信帯域がボトルネックになるケースが多い。2013年時点の標準的なサーバーハードウエア構成では、事実上の上限は250台程度と考えられている。

Hibariは分散システムに適したプログラミング言語Erlangで書かれており、高負荷時でも高い安定性を誇る。Hibariの各ノードは数年間無停止で稼働できることが実運用で確認されており、ソフトウェアのアップグレードもサービス無停止で行える。またJavaで書かれたNoSQLと異なり、64GB程度の大容量のRAMを搭載したサーバーでも、256MB程度の小容量のRAMを搭載した組み込み向けハードウェアでも良好に動作する。

クライアントインターフェイス

編集

HibariはクライアントAPIとして Amazon S3JSON-RPC、Universal Binary Protocol に対応し、Apache Thrift に対応する予定もある。またプログラミング言語 Erlang からのアクセスにも対応している。

Hibariにアクセスできる言語には JavaC言語C++PythonRuby などがある。

外部リンク

編集

参考文献

編集