문서 메뉴
문서 홈
/ /
Atlas App Services

데이터 모델 정의하기

이 페이지의 내용

  • 개요
  • 문서 스키마
  • 관계
  • 값 및 비밀
  • 쿼리 필터

앱의 데이터 모델은 앱이 사용하는 데이터에 대한 설명입니다. 데이터 모델은 데이터가 특정 구조를 준수하고, 유효한 값만 포함하며, 예상한 방식으로만 변경되는지 확인합니다.

데이터 모델은 다음을 포함한 여러 구성 요소로 구성됩니다.

  • 앱의 데이터 유형을 설명하는 선언적 스키마 세트입니다.

  • 스키마 간의 논리적 연결을 정의하는 관계 세트입니다.

  • 글로벌 상수, 환경 값 및 시크릿 값을 정의하는 데 사용할 수 있는 정적 값 세트입니다.

  • 지정된 요청에 대한 모든 데이터의 하위 집합으로 MongoDB 작업을 동적으로 제한하는 데 사용할 수 있는 규칙 기반 쿼리 필터 세트입니다.

앱의 데이터 모델을 정의하는 것은 Device Sync 구성 및 사용의 핵심 부분입니다. 다른 App Services를 사용하기 위해 데이터 모델을 정의할 필요는 없습니다. 그러나 데이터 모델은 시간을 절약하고 상용구 코드를 작성하는 대신 기능 구축에 집중할 수 있는 여러 강력한 기능을 제공합니다.

예를 들어, 데이터 모델을 정의한 후에는 앱 관리 도구를 사용하여 네이티브 프로그래밍 언어로 동기화 가능한 Device SDK 객체 모델을 자동으로 생성할 수 있습니다. 자세한 내용은 SDK 객체 모델 생성을 참조하세요.

문서 스키마는 앱에서 사용하는 특정 유형의 데이터 구조를 정의하는 JSON 객체입니다. 문서 스키마는 문서에 있는 필드, 해당 필드에 포함된 값 유형, 값 변경이 유효하기 위해 충족되어야 하는 조건을 설명합니다.

컬렉션 수준에서 스키마를 정의합니다. 즉, 각 스키마를 해당 유형의 문서를 보유하는 특정 MongoDB 컬렉션과 연결합니다. 스키마는 MongoDB의 내장 BSON types에 대한 지원을 포함하는 JSON schema 표준의 상위 집합을 사용하므로 MongoDB의 데이터를 완전히 설명할 수 있습니다.

앱은 데이터가 MongoDB에 기록될 때마다 런타임에 스키마를 적용합니다. 여기에는 API 서비스, 함수 또는 Device Sync에서의 삽입, 업데이트 및 삭제가 포함됩니다.

자세한 내용은 스키마를 참조하세요.

관계는 한 문서를 0개 이상의 다른 문서와 논리적으로 연결할 수 있도록 하는 두 문서 스키마 간의 연결입니다.

관계에서 '소스' 문서는 관련 문서에 대한 참고를 저장합니다(예: 관련 문서 _id 값 목록). Realm Mobile Sync를 사용하면 App Services에서 관련 문서에 대한 참고를 자동으로 확인하므로 직접 쿼리할 수 있습니다.

자세히 알아보려면 관계를 참조하세요.

값은 앱 전체에서 다양한 방법으로 이름으로 액세스할 수 있는 명명된 상수입니다. 예를 들어, 여러 함수 정의에서 기본 URL을 복제하는 대신 값을 사용하여 외부 API 서비스의 기본 URL을 정의한 다음 값을 참조할 수 있습니다.

앱의 환경 태그에 따라 변경될 수 있는 환경 값을 정의할 수도 있습니다. 예를 들어 개발 및 프로덕션 환경에서 다른 API 기본 URL을 사용할 수 있습니다.

API 키와 같은 민감한 정보의 경우 명명된 Secret 값을 정의할 수 있습니다. 시크릿 값은 정의한 후에는 직접 노출되지 않습니다. 대신 구성 파일과 규칙 표현식에서 이름으로 참조합니다.

자세한 내용은 값과 비밀을 참조하세요.

쿼리 필터는 데이터 소스에 대한 읽기 및 쓰기 작업을 해당 소스에 포함된 모든 데이터의 하위 집합으로 제한합니다. 쿼리 필터는 데이터 소스로 전송되기 전에 작업에 자동으로 연결되는 표준 MongoDB 쿼리 및 프로젝션 객체입니다.

필터는 동적이며, 작업을 실행한 사용자 또는 기타 실행 정보에 따라 다른 조건을 적용할 수 있습니다. 컬렉션에 필터를 추가하면 상황에 따라 액세스를 제한하고 대규모 데이터 세트에 대한 쿼리 성능을 향상시킬 수 있습니다.

자세한 내용은 수신 쿼리 필터링을 참조하세요.

← 내부 데이터베이스 사용량