Couchbase 4.0が多次元スケーリング,地理空間インデックス,新クエリ言語N1QLをサポート

NoSQLドキュメント指向データベースCouchbase Serveの最新バージョンは,多次元スケーリング,地理空間インデックス(geospatial index),新クエリ言語N1QLをサポートする。Couchbaseチームは今月初め,Couchbase Server 4.0バージョンの一般向け提供を発表した。XDCR(Cross Datacenter Replication/クロスデータセンタレプリケーション)で新たにフィルタ機能をサポートした他,セキュリティも向上している。

多次元スケーリングとグローバルセカンダリインデックスは,Couchbaseのような分散型データベースのクエリパフォーマンス向上に有効な機能だ。

多次元スケーリング(Multi-dimensional Scaling/MDS): さまざまなワークロードを分離するためのハードウェアのプロビジョンと,インデックス/クエリ/データサービスの独立したスケーリングなどを行う機能である。それぞれのワークロードに対して,個々のパフォーマンス要件とアプリケーションのSLAに見合ったデータリソースを割り当てることが可能だ。

グローバルセカンダリインデックス: 水平スケーリングシステムの場合,インデックスは一般的にクラスタ内のすべてのサーバに拡大する。これによって“分散/収集”が広範に実行されることになり,クエリの実行速度を低下させる可能性がある。Couchbase Server 4.0の多次元スケーリングは,グローバルセカンダリインデックスを特定のハードウェアリソースに割り当てることにより,分散/収集の削減に寄与すると同時に,結果として分散システムにおけるクエリ実行速度の改善も実現する。

N1QL: “ニッケル”と読む。N1QLは,SQLに詳しい開発者がJSONデータモデル上でアプリケーション開発を行うための宣言型クエリ言語で,次のような利点がある。

  • データベースで実行されるロジックをアプリケーションコード内に記述して実行する代わりに,宣言型クエリ言語を使用することが可能になる。
  • データモデルを再構築することなく,新しいインデックスとクエリの作成が可能である。
  • さまざまなプログラミング言語とフレームワークを使用したデータの参照,更新,クエリが可能。非同期およびリアクティブなデータアクセスも選択できる。
  • JSONを使用した単一ドキュメント内でのデータのネスト,N1QLを使用した複数のJSONドキュメントに保存されたデータのモデル化とクエリが可能。

N1QLクエリ言語を使うことで,標準的なSQLベースのレポートツールやデータ可視化ツールからも,Couchbaseにストアされたデータのアクセスが可能になる。

クロスデータセンタレプリケーション(XDCR): Couchbase Server 4.0ではクロスデータセンタレプリケーション(XDCR)機能が拡張されて,新たにフィルタ機能が追加された。XDCRは高可用性とディザスタリカバリに使用される。新たなフィルタ機能によって,データセンタ間でデータセット全体をレプリケーションせずに,地理的レプリケーション用のサブセットを‘フィルタ’することが可能になる。地理的に分散したロケーションに対して,地域に関連したデータのみをレプリケーションすることによるレイテンシ低減とネットワークトラフィックの最小化,プライベートデータセンタ,パブリッククラウド,および双方で関連データをレプリケーションすることによるハイブリッドクラウドインフラストラクチャの活用,といった用途が考えられる。

新バージョン機能には他にも,位置認識アプリケーションの開発に有用な地理空間インデックス,標準への準拠を目的としたセキュリティ強化,LDAP統合,監査機能などがある。

Couchbase Serverにはコミュニティエディション(CE)とエンタープライズエディション(EE)の2つのエディションがある。詳しい内容を知りたいのであれば,Couchbase Developer Portalを確認して欲しい。