더북(TheBook)

단순성: 복잡한 데이터 모델이 필요한 사람은 없다

키-값 데이터베이스는 가장 간단한 데이터 구조를 사용한다. 기능이 다양한 관계형 데이터베이스 대신 최소한의 기능만 있는 데이터베이스를 사용하는 이유가 궁금할 것이다. 그 이유는 관계형 데이터베이스의 모든 기능이 필요하지 않을 때가 있기 때문이다.

워드 프로세서를 생각해보자. 예를 들어 마이크로소프트 워드에는 매우 인상적인 기능이 많은데 다양한 서식 옵션, 맞춤법 검사뿐 아니라 참고 문헌과 출처 관리자 같은 다른 도구와 통합하는 기능까지 제공한다.

이 기능들은 책이나 장문의 논문을 쓸 때 필요한 도구일 뿐이다. 반면에 여섯 개 항목으로 구성된 간단한 목록을 작성한다면 모든 기능이 탑재된 워드 프로세서보다는 단순한 텍스트 편집기를 사용하는 것이 더 나을 것이다. 데이터베이스를 사용하는 애플리케이션을 설계할 때도 같은 상황이 발생할 수 있다.

개발자들은 데이터베이스에 있는 여러 엔터티에 대한 질의를 수행할 필요가 없거나, 테이블의 조인 기능을 지원할 필요가 없는 경우가 종종 있다. 고객의 온라인 장바구니 정보를 저장하는 데이터베이스를 구현할 때 관계형 데이터베이스를 사용할 수도 있겠지만 키-값 데이터베이스를 사용하는 편이 더 수월할 것이다. SQL을 사용해 데이터베이스 스키마를 정의할 필요도 없고 추적하려는 각 속성의 데이터 타입을 정의하지 않아도 된다.

프로그램 작성 후에 추가 속성이 필요하면 단순히 이 속성을 처리하는 코드를 프로그램에 추가하면 된다. 데이터베이스에 이 새로운 속성을 적용하도록 데이터베이스 코드를 변경할 필요도 없다. 키-값 데이터베이스에서는 새로운 속성을 추가하여 발생하는 문제도 없다.

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