Docs Menu
Docs Home
/ /
Atlas App Services
/

ローカル専用アプリの同期可能なアプリへの移行

項目一覧

  • App Services アプリの作成
  • 認証を有効にする
  • 同期を有効にする
  • クライアント アプリを更新する
  • 既存のデータのコピー

ローカル Realm を使用するモバイル アプリがあり、そのアプリを Sync を使用するように変換する場合は、次の 3 つのプライマリ タスクがあります。

  • App Services Appの作成と構成

  • この新しいバックエンド アプリを指すようにクライアント コードを変更します。

  • ローカル データを新しい同期された Realm にコピーする

Realm データベースへの読み取りと書き込みの点では、ローカル Realm と同期された Realm の操作に違いはありません。 同期を構成して Realm を開いても、既存のコードは移行前と同じ方法で引き続き動作します。

ローカル データのみを使用し、その後 同期を使用するモバイルアプリを示す画像。

注意

アプリは複数の Realm を持つことができ、任意の数の Realm を Sync を使用するように移行できます。 たとえば、アプリは、デバイス固有の情報にローカル専用の Realm を引き続き使用しつつ、他のデータには同期された Realm を使用することができます。

デバイスと MongoDB Atlas 間でデータを同期するには、まず App Services App を作成します。 このアプリは、ユーザー認証、データの暗号化、アクセス制御の形式でセキュリティを備えたデータへのゲートウェイを提供します。

バックエンド アプリの作成を開始するには、「 App Services Appの作成 」の手順に従ってください。

Device Sync には認証されたユーザーが必要です。 Atlas App Services は、メール/パスワードや OAuth などのさまざまな認証プロバイダを提供します。 認証を有効にして構成が完了すると、どのデータが誰にアクセスできるかを完全に制御できます。

詳細と開始方法については、「認証プロバイダ 」を参照してください。

App Services Appでは、同期の構成が最後の手順です。 同期を設定すると、認証されたユーザーが現在のデータにオンラインでアクセスできるようになります。 オフラインの間、ユーザーは最新データを操作できますが、オンラインに戻るまで変更は同期されません。

Flexible Sync を使用すると、クライアントはクエリに基づいてデータのサブセットを クエリ可能なフィールド と同期します。 Flexible Sync を構成するときは、クライアントがクエリできるフィールドを決定します。 Flexible Sync を有効にするには、 手順 の手順に従います

Device Sync のバックエンドを設定したので、クライアント アプリのコードにいくつか変更を加える必要があります。 使用している言語やプラットフォームのクイック スタートで Flexible Sync を設定するには、次の手順に従います。

  • クイック スタート - .NET SDK

  • クイック スタート - Node.js SDK

  • クイック スタート - React Native SDK

  • クイック スタート - Swift SDK

この時点で、データはまだローカル データベースにのみ存在しています。 Realm がデータを同期する前に、初期コピーを実行する必要があります。 そのためには、次の手順に従い、図を参照してください。

  1. 同期された Realm がすでに存在するかどうかを確認します。

  2. 存在しない場合は、作成します。 その と の接続を開きます。

  3. ローカル Realm から各レコードを読み取り、同期された Realm のスキーマと一致するように変更します。

  4. 変更されたレコードを新しい同期された Realm にコピーします。 アプリに接続すると、Syncはレコードを MongoDB Atlas に自動的にコピーします。

  5. 保持するすべてのレコードが新しい邦土にあることを確認します。

  6. ローカル Realm ファイルを削除します。

  7. 後続のアプリを読み込むたびに、ローカル Realm が削除されているかどうかを確認します。

ローカルから同期に変換する手順を示すフローチャート

注意

同期の構成またはデータのコピー中にエラーが発生した場合は、 App Services App ログ を確認してください。 ログには、同期エラーに関する詳細が記載されています。 多くの場合、クライアントリセットを実行すると、同期移行の問題を解決するのに役立ちます。

戻る

Atlas ボリュームの圧縮