문서 메뉴

문서 홈애플리케이션 개발MongoDB 매뉴얼

포함된 문서로 일대다 관계 모델링하기

이 페이지의 내용

  • 예제
  • 임베디드 문서 패턴
  • 자세히 알아보기

내장된 문서를 사용하여 연결된 데이터 간의 일대일 관계를 설명하는 데이터 모델을 생성합니다. 연결된 데이터를 단일 문서에 포함하면 데이터 획득에 필요한 읽기 작업 수를 줄일 수 있습니다. 일반적으로 애플리케이션이 읽기 작업을 한 번 실행할 때 필요한 모든 정보를 수신하도록 스키마를 구성합니다. 예를 들어, 내장된 일대다 모델을 사용하여 다음 관계를 설명할 수 있습니다.

  • 국가와 주요 도시

  • 책과 저자

  • 학생과 수업

예제 스키마에는 세 개의 엔터티가 포함되며,address oneaddress two가 동일한 patron에 속합니다.

// patron document
{
_id: "joe",
name: "Joe Bookreader"
}
// address one
{
street: "123 Fake Street",
city: "Faketon",
state: "MA",
zip: "12345"
}
// address two
{
street: "1 Some Other Street",
city: "Boston",
state: "MA",
zip: "12345"
}

이 예시에서 애플리케이션은 patronaddress 객체 모두에 대한 정보를 한 페이지에 표시해야 합니다. 애플리케이션에서 한 번의 쿼리로 필요한 모든 정보를 검색할 수 있도록 하려면 address oneaddress two 정보를 patron 문서에 포함하세요.

{
"_id": "joe",
"name": "Joe Bookreader",
"addresses": [
{
"street": "123 Fake Street",
"city": "Faketon",
"state": "MA",
"zip": "12345"
},
{
"street": "1 Some Other Street",
"city": "Boston",
"state": "MA",
"zip": "12345"
}
]
}
← 포함된 문서로 일대일 관계 모델링하기