Atlas의 데이터와 클라이언트 애플리케이션 동기화
이 페이지의 내용
조직에서 이미 MongoDB Atlas에 데이터를 가지고 있는 경우, Realm Mobile Sync 및 Realm 데이터베이스를 사용하여 해당 데이터를 클라이언트 기기에 동기화할 수 있습니다. 시작하려면 다음과 같은 개략적인 단계를 따르세요.
Atlas Access 설정
Atlas App Services App 만들기
App Services 애플리케이션은 클라이언트 장치를 MongoDB Atlas에 연결할 수 있게 해주는 게이트웨이입니다. App을 만들 때는 이름을 지정하고, Atlas 클러스터에 연결하고, 애플리케이션에 가장 적합한 배포서버 모델과 배포서버 리전을 지정합니다.
App Services App을 만드는 방법을 알아보려면 앱 만들기를 참조하세요.
Device Sync 구성
Realm Mobile Sync는 Atlas 데이터와 클라이언트 기기의 동기화를 managed 서비스입니다. Device Sync는 Realm SDK와 함께 네트워크 연결, 충돌 해결, 사용자 인증, 사용자 권한 및 데이터 액세스를 자동으로 관리합니다.
Device Sync를 구성할 때 클라이언트 장치에서 액세스할 수 있는 데이터 소스와 사용자가 읽고 쓸 수 있는 데이터를 결정하는 권한을 지정합니다.
Atlas UI, Atlas App Services CLI 또는 App Services Admin API를 통해 Device Sync를 구성할 수 있습니다. Device Sync를 처음 구성하는 경우 다양한 설정 및 옵션에 대한 링크와 정보를 제공하는 Atlas UI를 사용하는 것이 도움이 될 수 있습니다.
인증 제공자 활성화
클라이언트 사용자는 인증을 받아야 동기화된 데이터에 액세스할 수 있습니다. App Services는 사용자가 인증을 완료할 수 있도록 다양한 인증 제공자를 제공합니다. 이러한 인증 제공자 중 하나 이상을 구성해 클라이언트 애플리케이션에서 인증을 사용하도록 설정하세요.
왼쪽 탐색 메뉴에서 Authentication 를 선택하여 App Services App UI 내에서 인증 제공자를 구성한 다음 제공자 를 클릭하여 구성할 수 있습니다. Atlas App Services 명령줄 인터페이스 또는 App Services Admin API를 사용하여 App Services 구성을 편집하여 인증 제공자를 구성할 수도 있습니다.
클라이언트 객체 모델 생성
Atlas에 이미 데이터가 있는 경우 해당 데이터와 일치하는 객체 모델을 생성하여 클라이언트 애플리케이션에서 사용할 수 있습니다.
객체 모델을 생성하려면 App Services 스키마가 있어야 합니다. 스키마가 생성되면 해당 스키마와 일치하는 객체 모델을 생성할 수 있습니다. 스키마 생성에 사용할 프로그래밍 언어를 선택할 수 있으며, 이를 보고 복사하여 클라이언트 애플리케이션 코드에서 사용할 수 있습니다.
App Services UI를 사용하여 기존 Atlas 데이터에서 스키마를 생성할 수 있습니다. 이 작업을 수행하는 방법에 대한 자세한 내용 은 App Services 스키마에서 Realm 객체 스키마 생성을 참조하세요.
스키마가 준비되면 App Services UI 또는 Atlas App Services 명령줄 인터페이스를 사용하여 Realm 객체 모델을 생성할 수 있습니다.
클라이언트 애플리케이션에 동기화 추가
이후에는 Atlas 사이드에 필요한 모든 설정이 완료되었으며 데이터 동기화를 위해 클라이언트 애플리케이션을 준비할 수 있습니다. Device Sync는 Realm 데이터베이스 SDK를 사용하여 데이터를 Atlas와 동기화합니다. 클라이언트 애플리케이션 코드에서 Realm SDK를 사용하여 Atlas에 연결하고 기기의 Realm 데이터베이스와 데이터를 동기화할 수 있습니다.
동기화된 Realm 열기
인증된 사용자가 있으면 동기화된 Realm 데이터베이스 인스턴스를 열어 해당 사용자에 대해 사용할 수 있습니다.
클라이언트 코드에서 Flexible Sync 쿼리 구독을 정의하여 클라이언트 애플리케이션에 동기화할 데이터를 결정합니다. Device Sync는 사용자가 읽기 및 쓰기 권한이 있는 쿼리와 일치하는 Atlas 문서를 찾고 해당 문서를 클라이언트 장치에 Realm 객체로 동기화합니다. Flexible Sync 쿼리 구독을 추가, 제거 또는 업데이트하여 기기에 동기화되는 문서를 변경할 수 있습니다.
C++ SDK
Flutter SDK
Java SDK
Kotlin SDK
.NET SDK
Node.js SDK
React Native SDK
Swift SDK
동기화된 Realm 사용
동기화된 영역에서 변경 사항을 읽고, 쓰고, 보는 구문은 동기화되지 않은 영역의 구문과 동일합니다. 로컬 데이터로 작업하는 동안 백그라운드 스레드는 변경 세트를 효율적으로 통합, 업로드 및 다운로드합니다. 쓰기 권한이 있는 사용자가 기기에 변경 사항을 적용하면 데이터는 로컬로 유지됩니다. 사용자가 네트워크에 연결되어 있으면 데이터가 자동으로 Atlas와 다른 기기에 다시 동기화됩니다.
Realm 데이터베이스로 일반적인 작업을 수행하는 방법에 대한 빠른 가이드는 Realm SDK 빠른 시작을 참조하세요.
작동하는 클라이언트 앱을 학습하여 학습하는 것을 선호하는 경우, 일부 SDK에서는 템플릿 앱이라고 하는 작동하는 Realm Mobile Sync 을 제공합니다. 선택적으로 Realm Mobile Sync 템플릿 앱을 기반으로 하는 SDK별 튜토리얼을 Go 수 있습니다.
C++ SDK
Flutter SDK
Java SDK
Kotlin SDK
.NET SDK
Node.js SDK
React Native SDK
Swift SDK