더북(TheBook)

7.3 데이터 모델링과 질의 처리

문서 데이터베이스는 유연하다. 다양한 유형의 문서를 처리하고 컬렉션 내에서 문서를 변경할 수 있다. 지금 당장 자리에 앉아 문서 데이터베이스 설계를 시작해야 한다면 아마도 데이터베이스에서 실행될 질의 목록부터 살펴볼 것이다. 이는 맨 처음 수행할 작업으로는 적합하다. 관계형 데이터베이스를 설계하고 있었다면 아마도 모델링 대상인 엔터티와 엔터티 간의 관계를 고려해 볼 것이다.

엔터티와 엔터티 간의 관계에 대한 기본적인 개념을 잡은 후에는 정규화라고 알려진 작업을 수행할 것이다. 만약 데이터베이스에서 성능 문제를 경험한 적이 있다면 비정규화라고 알려진 작업을 수행할 것이다. 이런 식으로 질의 프로세서의 산출물을 검토하여 성능이 좋지 않은 질의가 무엇인지 파악하는 절차를 밟아가는 것이 좋다.

문서 데이터베이스를 모델링할 때 잠깐 소개한 적이 있기 때문에 정규화와 비정규화란 용어는 친숙할 것이다. 관계형 데이터베이스보다 문서 데이터베이스에서는 정규화와 비정규화는 공식적인 용어가 아니므로 여기서는 관계형 데이터베이스 관련 서적에 소개된 것보다는 훨씬 간단하게 설명할 것이다.

또한, 문서 데이터베이스는 질의에 명시된 데이터를 가져오려고 여러 단계에 대한 최적의 순서를 찾으려는 시도를 하는 질의 프로세서를 구현하고 있다.

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