클라이언트에서 Atlas로 단방향으로 데이터 스트리밍
이 페이지의 내용
대량의 데이터를 생성하는 모바일 또는 클라이언트 애플리케이션이 있는 경우 MongoDB Atlas로 스트리밍하려는 경우, Device Sync를 사용하여 데이터를 단방향으로 동기화할 수 있습니다. 이 단방향 동기화 데이터 수집 을 활성화하는 기능을 호출합니다.
날씨 센서가 데이터를 cloud로 전송하는 등 IoT 애플리케이션에서는 데이터를 단방향으로 동기화할 수 있습니다. 데이터 수집은 소매 앱에서 청구서를 생성하거나 애플리케이션 이벤트를 기록하는 등 충돌 해결이 필요하지 않은 다른 유형의 불변 데이터를 작성하는 데에도 유용합니다.
데이터 수집은 과중한 클라이언트 사이드 삽입 전용 워크로드의 성능 향상을 제공하도록 최적화되었습니다. 데이터를 스트리밍하는 Realm에서는 이 데이터를 읽을 수 없습니다.
현재 데이터 수집은 다음 Realm SDK에서만 사용할 수 있습니다.
C++ SDK
.NET SDK
Kotlin SDK
Node.js SDK
React Native SDK
Swift SDK
시작하려면 다음과 같은 개략적인 단계를 따르세요.
Atlas Access 설정
Atlas App Services App 만들기
App Services 애플리케이션은 클라이언트 장치를 MongoDB Atlas에 연결할 수 있게 해주는 게이트웨이입니다. App을 만들 때는 이름을 지정하고, Atlas 클러스터에 연결하고, 애플리케이션에 가장 적합한 배포서버 모델과 배포서버 리전을 지정합니다.
App Services App을 만드는 방법을 알아보려면 앱 만들기를 참조하세요.
Device Sync 및 데이터 수집 구성
Realm Mobile Sync는 Atlas와 클라이언트 디바이스 간에 데이터를 동기화하는 서비스입니다. Realm Mobile Sync는 Realm SDK와 함께 네트워크 연결, 사용자 권한 및 충돌 해결을 자동으로 관리합니다. App Services 앱은 Device Sync 및 Realm SDK가 데이터를 보호하기 위해 활용하는 내장 사용자 인증을 제공합니다.
Device Sync를 구성할 때는 클라이언트 기기가 액세스할 수 있는 데이터 소스와 사용자가 쓸 수 있는 데이터를 결정하는 권한을 지정해야 합니다.
Atlas UI, Atlas App Services CLI 또는 App Services Admin API를 통해 Device Sync를 구성할 수 있습니다. Device Sync를 처음 구성하는 경우 다양한 설정 및 옵션에 대한 링크와 정보를 제공하는 Atlas UI를 사용하는 것이 도움이 될 수 있습니다.
하나 이상의 컬렉션에 대해 데이터 수집을 활성화하려면 Device Sync 구성의 Advanced Configuration 섹션에서 컬렉션 또는 컬렉션을 선택합니다. 이 드롭다운에서는 App Services Schema 가 있는 collection만 선택할 수 있습니다.
단방향으로 동기화하려는 컬렉션에 대한 스키마를 아직 생성하지 않은 경우 다음 중 하나를 수행할 수 있습니다.
Realm 객체 모델에서 App Services 스키마를 생성합니다. 참조: Realm 객체 모델에서 App Services 스키마 생성을 참조하세요.
Atlas App Services 스키마를 수동으로 생성합니다. 자세한 내용 은 스키마 정의 및 적용을 참조하세요.
인증 제공자 활성화
동기화된 데이터에 액세스하려면 클라이언트 장치를 인증해야 합니다. App Services는 사용자가 인증할 수 있도록 이메일/비밀번호 또는 익명 인증과 같은 여러 인증 제공자를 제공합니다. 클라이언트 애플리케이션에서 인증을 사용하려면 이러한 인증 제공자 중 하나 이상을 구성합니다.
왼쪽 탐색 메뉴에서 Authentication 를 선택하여 App Services App UI 내에서 인증 제공자를 구성한 다음 제공자 를 클릭하여 구성할 수 있습니다. Atlas App Services 명령줄 인터페이스 또는 App Services Admin API를 사용하여 App Services 구성을 편집하여 인증 제공자를 구성할 수도 있습니다.
클라이언트 애플리케이션에 동기화 추가
그 후에는 Atlas 측에 필요한 모든 설정이 완료되었으며 클라이언트 애플리케이션이 데이터를 단방향으로 동기화하도록 준비할 수 있습니다.
비대칭 객체 생성 및 데이터 쓰기
Realm SDK는 데이터 수집에 사용할 수 있는 특수한 유형의 객체인 비대칭 객체를 제공합니다. 비대칭 객체를 정의하는 방법에 대한 자세한 내용은 Realm SDK 문서를 참조하세요.
동기화된 영역에 비대칭 객체를 만들고 쓰며, Realm SDK는 Device Sync를 사용하여 데이터 스트리밍 프로세스를 자동으로 관리합니다. 기기가 네트워크에 연결되어 있으면 SDK는 데이터를 App Services 백엔드와 Atlas로 스트리밍합니다. 장치가 네트워크에 연결되어 있지 않은 경우에도 데이터는 장치에 유지되었다가 네트워크 연결이 복원되면 자동으로 업로드됩니다.
Atlas Device Sync는 이 데이터의 수명 주기를 완벽하게 관리합니다. 데이터 수집 동기화가 완료될 때까지 유지된 후 기기에서 제거됩니다.