더북(TheBook)

6.4 요약

문서는 유연한 데이터 구조를 가진다. 문서 데이터베이스는 미리 정의된 스키마를 요구하지 않고 다양한 형태의 문서 구조에 쉽게 적응한다. 문서는 컬렉션이라는 관련된 집합으로 묶을 수 있다. 컬렉션이 관계형 테이블에 대응된다면 문서는 관계형 테이블의 로우에 해당된다.

문서 데이터베이스가 가진 유연성 덕분에 컬렉션을 구성할 때 자유로운 설계가 가능하다. 다른 문서들과 키와 값이 다르더라도 컬렉션에는 비슷한 유형의 엔터티들을 모아 놓아야 한다.

이전에 설명했던 시스템 이벤트 엔터티 같은 고도로 추상화된 엔터티를 사용해 문서를 모델링하는 것은 성능에 나쁜 영향을 주며, 복잡한 애플리케이션 코드를 작성해야 하는 상황을 유발한다. 물론 제품 엔터티처럼 추상화된 엔터티를 사용하는 것이 적당할 때도 있다. 데이터베이스에 대한 질의 유형을 분석하면 올바른 설계 방향을 잡을 수 있을 것이다.

관계형 데이터베이스와는 달리 문서 데이터베이스에는 표준 질의 언어가 없다. 이 장에서 선보인 예제들과 뒤이어 나오는 장의 예제들은 인기 있고 많이 사용되는 특정 문서 데이터베이스의 문법을 따르고 있다. 여기서 설명했던 원칙과 개념들은 세부적인 구현 내용이 다르더라도 모든 종류의 문서 데이터베이스에 적용할 수 있다.

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