Docs Menu
Docs Home
/ /
Atlas App Services

Atlas Data API

데이터 API 수명 종료 상태에 도달하여 더 이상 MongoDB 에서 적극적으로 지원하지 않습니다. 이 페이지는 기록 참조용으로만 유지됩니다. 자세한 내용은 데이터 API 및 HTTPS 엔드포인트 사용 중단을 참조하세요.

데이터 API 표준 HTTPS requests 사용하여 Atlas 에 저장된 데이터로 안전하게 작업할 수 있는 managed 서비스입니다. 데이터 API 데이터베이스 에 직접 연결되지 않습니다. 대신 API 는 관리형 미들웨어 서비스로, 클러스터 와 요청을 보내는 클라이언트 사이에 위치합니다.

다음을 포함하여 HTTPS를 지원하는 모든 플랫폼에서 데이터 API를 사용하여 MongoDB Atlas에 연결할 수 있습니다.

  • 웹 브라우저

  • 웹 서버

  • CI/CD 파이프라인

  • 모바일 애플리케이션

  • IoT 장치

데이터 API를 사용하기 위해 데이터베이스 드라이버나 전용 라이브러리를 설치할 필요가 없습니다. 대신 다음과 같은 HTTPS requests를 전송합니다.

curl -s "https://data.mongodb-api.com/app/myapp-abcde/endpoint/data/v1/action/insertOne" \
-X POST \
-H "Content-Type: application/ejson" \
-H "Accept: application/json" \
-H "apiKey: TpqAKQgvhZE4r6AOzpVydJ9a3tB1BLMrgDzLlBLbihKNDzSJWTAHMVbsMoIOpnM6" \
-d '{
"dataSource": "mongodb-atlas",
"database": "learn-data-api",
"collection": "hello",
"document": {
"text": "Hello, world!"
}
}'
{ "insertedId": "63dc56ac74ddb86ed3eb8474" }

데이터 API 두 가지 유형의 엔드포인트를 지원했습니다.

  • 데이터 API 엔드포인트는 각각 MongoDB 작업을 나타내는 자동으로 생성된 엔드포인트입니다. 엔드포인트를 사용하여 MongoDB 데이터 소스 에서 문서를 생성, 읽기, 업데이트, 삭제 및 집계할 수 있습니다.

  • 사용자 지정 엔드포인트는 사용자가 쓰기 (write) Atlas Function에서 처리하는 앱별 API 경로입니다. 사용자 지정 엔드포인트를 사용하여 사용 사례 구체적으로 맞는 작업을 정의할 수 있습니다. 예시 들어, 사전 정의된 집계 실행하거나 외부 웹훅 서비스와 통합되는 엔드포인트를 생성할 수 있습니다.

Data API 요청은 find 또는 insertOne과 같은 기존 데이터베이스 작업과 유사할 수 있지만, Data API는 데이터베이스에 직접 연결되지 않습니다. 대신 Data API는 추가 인증, 권한 부여, 정확성 검사를 추가해 사용자가 허용하는 방식으로만 데이터에 액세스하거나 수정할 수 있도록 합니다. 이러한 방식을 통해 웹 앱과 같이 잠재적으로 취약한 클라이언트에서 Atlas의 데이터에 안전하게 액세스할 수 있습니다.

들어오는 각각의 요청에 대해 Data API는 다음을 수행합니다.

  1. 호출 사용자를 인증했습니다. 여기에는 액세스 토큰의 유효성을 검사하거나, 헤더 자격 증명 사용하여 로그인하거나, 구성에 따라 특정 런타임 사용자를 직접 할당하는 작업이 포함될 수 있습니다.

  2. 요청 승인했습니다. 이렇게 하면 사용자가 올바른 형식의 요청 보냈고 엔드포인트 권한 부여 체계에 따라 요청된 작업을 수행할 수 있는 권한이 있는지 확인할 수 있습니다.

  3. 요청된 작업을 실행했습니다. 여기에는 생성된 엔드포인트를 사용하여 Atlas 에서 데이터를 읽거나 쓰는 작업 또는 사용자가 작성한 사용자 지정 함수를 호출하는 작업이 포함될 수 있습니다.

    Atlas에서 데이터를 읽거나 쓰는 요청의 경우 데이터 API는 앱에 정의된 액세스 제어 규칙과 문서 스키마도 시행합니다. 즉, 사용자는 읽기 및 쓰기가 허용된 데이터에만 액세스할 수 있습니다. 요청에 잘못된 쓰기 작업이 포함되어 있으면 요청이 실패합니다.

  4. 호출자에게 HTTPS 응답을 반환했습니다. 응답에는 생성된 엔드포인트 작업의 결과 또는 사용자 지정 엔드포인트에서 반환한 모든 데이터가 포함되었습니다. 요청 에서 JSON 또는 EJSON 형식으로 응답을 받도록 선택할 수 있습니다.

서버 애플리케이션, 특히 부하가 많고 지연 시간 민감한 사용 사례의 경우, MongoDB 운전자 사용하여 Atlas 에 직접 연결하는 것이 좋습니다. 데이터 API 엔드포인트를 통해 호출되는 작업은 운전자 통해 호출되는 해당 MongoDB 작업보다 완료하는 데 시간이 더 오래 걸립니다. 또한 드라이버는 작업 실행 방법에 대한 더 많은 유연성과 제어 기능을 제공합니다. 자세한 학습 은 MongoDB 드라이버 설명서를 참조하세요.

더 이상 데이터 API 사용할 수 없습니다. 더 이상 사용되지 않기 전에는 다음과 같은 경우 데이터 API 사용하는 것이 좋습니다.

  • 신뢰할 수 없는 웹 애플리케이션이나 다른 클라이언트에서 MongoDB 작업을 실행하려고 합니다.

  • 서버 측 환경에서 MongoDB 드라이버를 관리할 수 없거나 관리하고 싶지 않은 경우. 예를 들어, 일부 엣지 컴퓨팅 환경은 데이터베이스 드라이버나 연결 풀링을 지원하지 않습니다.

  • 새로운 기능을 개발하고 싶고 클라이언트 사이드에서 먼저 작업한 후 나중에 API 계층을 만들고 다듬을 수 있는 유연한 솔루션을 원할 경우.

  • Atlas 데이터 액세스를 연합 API 게이트웨이에 통합하려고 합니다.

  • 현재 Atlas Device SDK에서 지원하지 않는 환경에서 App Services에 연결하고 싶으며 드라이버를 사용하여 유선 프로토콜을 통해 연결하고 싶지 않은 경우.

데이터 API 요청 및 응답에는 다음과 같은 제약 조건이 적용됩니다.

  • 런타임 300초 후에 요청 타임아웃이 발생합니다.

  • 데이터 API 응답 페이로드의 크기는 350MB로 제한됩니다.

돌아가기

동기화 모드 마이그레이션

이 페이지의 내용