더북(TheBook)

19.1.1 문서란?

 

여기에서 말하는 “문서(document)”는 RDBMS의 record와 개념이 비슷합니다. 문서의 데이터 구조는 한 개 이상의 key-value 쌍으로 되어 있습니다.

MongoDB에서 사용하는 문서 예시를 하나 살펴볼까요?

{
    “_id”: ObjectId(“5099803df3f4948bd2f98391”),
    “username”: “velopert”,
    “name”: { first: “M.J.”, last: “Kim” }
}

 

문서는 BSON(바이너리 형태의 JSON) 형태로 저장합니다. 그렇기 때문에 나중에 JSON 형태의 객체를 데이터베이스에 저장할 때, 큰 공수를 들이지 않고도 데이터를 데이터베이스에 등록할 수 있어 매우 편합니다.

새로운 문서를 만들면 _id라는 고유 값을 자동으로 생성하는데, 이 값은 시간, 머신 아이디, 프로세스 아이디, 순차 번호로 되어 있어 값의 고유함을 보장합니다.

여러 문서가 들어 있는 곳을 컬렉션이라고 합니다. 기존 RDBMS에서는 테이블 개념을 사용하기에 각 테이블마다 같은 스키마를 가지고 있어야 합니다. 새로 등록해야 할 데이터가 다른 스키마를 가지고 있다면 기존 데이터들의 스키마도 모두 바꾸어 주어야 하지요.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.