더북(TheBook)

중첩 문서

문서 데이터베이스는 관계형 데이터베이스에서 처리하던 것보다 유연한 방법으로 관련 정보를 저장할 수 있는 장점이 있다. 관계형 데이터베이스에서 사원과 프로젝트에 대해 모델링한다면 아마도 사원 정보를 담고 있는 테이블과 프로젝트 정보를 담고 있는 테이블을 생성할 것이다(그림 7-2).

▲ 그림 7-2 관계형 데이터 모델은 종류가 다른 엔터티에 대한 데이터를 별도의 테이블에 저장한다. 이 경우 두 테이블에 있는 정보를 찾아보려면 조인을 수행해야 한다


중첩 문서는 문서 데이터베이스 사용자가 관련된 모든 정보를 단일 문서에 저장할 수 있게 해준다. 중첩 문서를 사용하면 한 테이블에 있는 데이터(외래 키)로 다른 테이블에 있는 데이터를 찾아 연결하는 조인이라는 과정을 피할 수 있다.

용량이 큰 두 테이블의 조인 작업에는 꽤 긴 시간이 소요되며 디스크에서 읽기 작업도 상당히 많이 필요하다. 중첩 문서를 사용하면 관련 데이터를 함께 저장할 수 있다. 이렇게 저장된 문서를 디스크에서 읽을 때 주요 정보와 관련 정보는 모두 조인 작업을 하지 않고도 읽을 수 있다. 그림 7-3에 문서 내부에 중첩된 문서가 나와 있다.

▲ 그림 7-3 중첩 문서는 문서 내부에 있는 문서를 말한다. 빈번히 함께 사용되는 데이터를 추출하고 저장할 때는 중첩 문서를 사용하는 것이 효율적이다


중첩 문서는 문서 내부에 있는 문서다. 이는 함께 자주 사용되는 데이터를 같이 저장하여 데이터베이스의 성능을 향상시키는 데 사용된다.

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