Couchbase Liteデータベースの同期
Sync Gatewayを使用して、Couchbase LiteアプリのデータベースをCouchbase Serverと同期し、アプリケーション間で共有することができます。
Couchbase Liteクライアントアプリケーションは、Replicatorプロセスを使用して、ローカルデータベースをSync Gatewayデータベースを介してリモートCouchbase Serverデータベースに同期します。
プルレプリケーション
これは、Couchbase Liteデータベースを実行しているクライアントがリモート(サーバー)ソースデータベースからローカルターゲットデータベースにデータをダウンロードするプロセスです。
プッシュレプリケーション
これは、Couchbase Liteデータベースを実行しているクライアントがローカルソースデータベースからリモート(サーバー)ターゲットデータベースにデータをアップロードするプロセスです。
より複雑な同期
サーバーを介して、モバイルアプリケーション間で、データを共有するのは、(はじめのステップとして)理解しやすいところですが、Couchbase Serverのデータベースは、モバイルアプリを前提としなくとも、独立して利用することができるため、他の種類の(例えばWeb)アプリケーションともデータを共有することが考えられます。
同期メカニズム
ここでは、「共有バケットアクセス」と「インポート処理」という2つのメカニズムが重要な役割を演じます。
-
共有バケットアクセス: これは、Couchbase ServerのSDKアプリケーション、N1QLクエリ、とSync Gateway/Couchbase Liteアプリケーションが同じバケットに対して同時に読み取りと書き込みを行えるようにするメカニズムです。
-
インポート処理: Sync GatewayがSync Gateway以外のデータの変更を認識し、それらの変更を複製するために必要なメタデータを作成するメカニズムです。
共有バケットアクセス
バケット共有を有効にすると、Couchbase ServerドキュメントをCouchbase Serverに対して、直接(N1QLまたはSDKを使用して)挿入するだけでなく、Sync Gateway(パブリックREST API)を使用して挿入することができるようになります。
インポート処理
インポートプロセスは、Sync GatewayがSync Gateway以外のデータの変更を認識し、変更を複製するために必要なモバイルメタデータを作成するための手段です。
参考情報