한 문서에 묶어 저장하고,
필요한 경로만 바로 다룬다
Document Store는 주문처럼 함께 읽는 정보를 한 문서에 담는다. 그래서 중첩 필드 조회, 일부 필드 수정, 여러 문서 집계를 같은 데이터 모양 위에서 자연스럽게 이어갈 수 있다.
Document Store는 주문처럼 함께 읽는 정보를 한 문서에 담는다. 그래서 중첩 필드 조회, 일부 필드 수정, 여러 문서 집계를 같은 데이터 모양 위에서 자연스럽게 이어갈 수 있다.
{
user: { id: 1001, name: "김철수" },
items: [{ product: "노트북", price: 1500000 }],
total: 1500000,
status: "shipped"
}
status, total만 골라 갱신·집계한다.
문서 전체를 분해하지 않아도 user.id 같은 경로를 조건으로 바로 찾는다.
db.orders.find({
"user.id": 1001,
total: { $gte: 100000 }
})
주문 전체를 다시 쓰지 않고 상태 필드만 바꿔 운영 상태를 반영한다.
db.orders.updateOne(
{ _id: "order_001" },
{ $set: { status: "delivered" } }
)
shipped 주문만 모아 사용자별 합계를 계산하면, 문서 저장과 분석 쿼리가 한 컬렉션에서 이어진다.
match status = "shipped" group by user.id sum total, then sort