Hibari (dbms)
特徴
Hibariはノード間のデータ複製にチェイン・レプリケーション方式を採用し、データの持続性や複製されたデータ間の強い整合性を保証する。他の多くの NoSQL と異なり、マイクロトランザクションと呼ばれる限られた範囲のキーに対するアトミックなトランザクションをサポートする。Hibariはデータ操作のレイテンシ（遅延時間）が短く、特にRead操作と200KB前後の大きなバリューの扱いにおいて、他の多くのスケールアウト型 NoSQLよりも高い性能を発揮する。
Hibariは一般的なIAサーバー（x86サーバー）だけでなく、ARMアーキテクチャのスケールアウト型サーバーなどでも動作する。サービスの稼働中にサーバーノードを追加することで、処理性能とデータ格納容量をリニアにスケールさせることができ、ある商用サービスでは1つのHibariクラスタで約60台のIAサーバーが用いられている。Hibariクラスタの上限台数ははっきりとしていないが、ノード間の通信帯域がボトルネックになるケースが多い。2013年時点の標準的なサーバーハードウエア構成では、事実上の上限は250台程度と考えられている。
Hibariは分散システムに適したプログラミング言語Erlangで書かれており、高負荷時でも高い安定性を誇る。Hibariの各ノードは数年間無停止で稼働できることが実運用で確認されており、ソフトウェアのアップグレードもサービス無停止で行える。またJavaで書かれたNoSQLと異なり、64GB程度の大容量のRAMを搭載したサーバーでも、256MB程度の小容量のRAMを搭載した組み込み向けハードウェアでも良好に動作する。
クライアントインターフェイス
HibariはクライアントAPIとして Amazon S3、JSON-RPC、Universal Binary Protocol に対応し、Apache Thrift に対応する予定もある。またプログラミング言語 Erlang からのアクセスにも対応している。
Hibariにアクセスできる言語には Java、C言語、C++、Python、Ruby などがある。