도큐먼트(Document)
필드 - 값 쌍으로 저장된 데이터
필드(Field)
데이터 포인트를 위한 고유한 식별자
값(Value)
주어진 식별자와 연결된 데이터
컬렉션(Collection)
MongoDB의 도큐먼트로 구성된 저장소입니다.
일반적으로 도큐먼트 간의 공통 필드가 있습니다.
데이터베이스 당 많은 컬렉션이 있고, 컬렉션 당 많은 도큐먼트가 있을 수 있습니다.
도큐먼트를 올바르게 작성하려면 JSON 형식으로 작성해야 한다.
{
"_id":"123456",
"date":ISODate("2022-03"),
"listing_id":"1111",
"reviewer_id":"33333"
}
JSON 형식은 읽기 쉽고, 많은 개발자들이 사용하기 편리한 형태를 가지고 있다. 그래서 JSON 형식은 데이터를 저장하는 좋은 방법이 될 수 있다. 단점이라면, JSON 형식은 텍스트 형식이기 때문에 읽기 쉽지만, 파싱이 느리고 메모리 사용이 비효율적이다. 이런 문제점을 해결하기 위한 방안으로 BSON 형식이 생겼다.
BSON은 컴퓨터 언어에 가까운 이진법에 기반을 둔 표현법이다. JSON 보다 메모리 사용이 효율적이고 빠르며, 가볍고, 유연하다. 또한 BSON의 사용으로 더 많은 데이터 타입을 사용할 수 있다.
MongoDB는 JSON 형식으로 작성된 것은 무엇이든 데이터베이스에 추가할 수 있고, 쉽게 조회할 수 있다. 그러나 그 내부에서는 속도, 효율성, 유연성의 장점이 있는 BSON으로 데이터를 저장, 사용하고 있다.