Couchbase 4.6 Developer Previewリリースは改善されたフルテキスト検索,グローバルに順序付けされたコンフリクト解決を備えたデータセンタ間レプリケーション,リアルタイム解析テクノロジ – Spark 2.0およびKafka – 用のコネクタなどを備える。
フルテキスト検索機能は,GolangベースのオープンソースライブラリであるBleveをベースとしている。Bleveはファセットと関連性に基づいたスコアリングをサポートする。前バージョンのBleveのスコアに基づくソートとは異なり,今回のリリースでは,任意のインデックスフィールドを対象とするクエリ結果のソートをサポートしている。
データセンタ間レプリケーションは,複数の地理的ロケーションで使用するアプリケーション向きの機能だ。任意のデータセンタで非同期に実施された書き込みオペレーションを,データセンタ間で複製する。これにより,アプリケーションの一貫性維持を,Couchbaseのレプリケーション機構に依存することが可能になる。
コンフリクト解決の既定メカニズムでは,ドキュメントリビジョン識別子が使用される。コンフリクトのシナリオにおいて,よりアップデートの多いドキュメントバージョンが常に優先する仕組みだ。Couchbase 4.6では,ドキュメントの更新タイムスタンプを考慮するコンフリクト解決ストラテジが新たに導入された。ソースクラスタが変更レコードのメタデータをデスティネーションクラスタからフェッチし,コンフリクト解決で選択される可能性のあるアップデートをキューに入れる。クライアントライブラリもマルチデータセンタを認識する。
Couchbase 4.0で導入されたドキュメントデータベース用のSQL方言であるN1QL(“ニッケル”と発音する)には,新しい文字列関数とデータ関数が追加された。Couchbase 4.5から導入されたサブドキュメントレベルのアップデートが複数のクライアントライブラリ(Java, .NET, NodeJS, PHP)に実装され,複数のデータ構造 – リスト,セット,キュー,マップ – をサポートするようになった。
Developer Previewには,Spark 2.0およびKafka用のコネクタも含まれている。いずれも新しいDCPクライアントを使用する。DCPはCouchbaseの変更プロトコルで,新しいクライアントではノード障害とCouchbaseクラスタのトポロジ変更に対応可能になった。
Spark 2.0コネクタはSpark 2.0の構造化ストリーミング(Structured Streaming),Couchbaseクラスタ拡張の自動フロー制御をサポートし,Couchbaseのクラスタノード障害を透過的に処理する。データベースの起動時あるいは‘今’から,Spark 2.0アプリケーションに変更をストリームすることが可能だ。
Kafkaコネクタは,CouchbaseからKafkaにドキュメント変更をストリームするもので,Apache KafkaとConfluent Platformに統合される。Kafka経由で,変更をHDFSなどの外部システムにストリームすることも可能だ。
Couchbase Server 4.6にも認証のデレゲーション用に,LinuxのPAM(Pluggable Authentication Modules)のサポートが含まれている。
Couchbase 4.5と同様,今回のバージョンにも,分析ワークロード用の分離クエリエンジンであるCouchbase Analyticsが同梱される。共通のスキーマフレキシブルモデル上で運用データベースとして動作し,DCPに基づくアップデートを行なう。運用ワークロードとは分離して動作するため,スループットやレイテンシには影響しない。
この記事を評価
- 編集者評
- 編集長アクション