구글과 아마존을 시작으로 독자 여러분도 이미 한번쯤은 들어봤을 만한 MongoDB, 카산드라, HBase를 비롯해 많은 NoSQL 데이터베이스가 세상에 선보였다. 오라클, MS-SQL, MySQL 같은 기존의 관계형 데이터베이스는 제품의 종류가 달라도 SQL만 알면 적응해 무리 없이 사용했다. 하지만 NoSQL은 종류별로 특성이 다르다. 따라서 NoSQL을 처음 학습하려는 사람 입장에서는 어디서부터 시작해야 할지 난감한 상황에 부닥치는 경우가 많다.
이 책은 MongoDB, 카산드라, 레디스 등 NoSQL 데이터베이스의 구체적인 사용법을 설명하는 것이 아니다. 지금까지 나온 NoSQL 데이터베이스를 분석해 그 구조와 특성별로 키-값, 문서, 컬럼 패밀리, 그래프 데이터베이스 등 네 가지 유형으로 나눈 후 각각의 기본 개념과 구조, 특성을 상세히 설명하여 NoSQL에 대한 개념을 확실히 잡을 수 있도록 안내한다. 특히, 앞부분에서는 데이터베이스 관리 시스템의 역사부터 시작해 관계형 데이터베이스를 소개하고 관계형 데이터베이스와 NoSQL 데이터베이스의 차이점을 설명하고 있어 데이터베이스를 잘 모르는 사람도, 관계형 데이터베이스는 익숙하지만 NoSQL을 알아보려는 사람에게도 좋은 안내서가 될 것이다.
---역자 서문 중에서
데이터에 관한 열띤 논쟁에 휩싸여 있는 사람들이 있는 한편 데이터를 수집, 처리, 분석, 관리해야 하는 사람들이 있다. 이 책은 후자를 위한 책이다.
NoSQL 데이터베이스는 요구 사항을 충족하지 못해 생겨났다. 수십 년간 훌륭히 제 몫을 한 데이터 관리 도구는 인터넷 애플리케이션의 요구 사항을 따라잡지 못했다. 셀 수 없이 많은 비즈니스 전문가가 상용 데이터베이스를 사용하는 것이 이제는 가장 도전적인 사례가 아니다. 구글, 아마존, 페이스북, 야후와 같은 기업은 수백만 명으로 추정되는 사용자들의 요구 사항을 충족해야 하는 상황에 부닥쳤다.
이론적으로 단단한 기반에서 잘 정비된, 별 문제 없이 사용해온 관계형 데이터 모델조차 도움의 손길이 필요해졌다. 웹 크롤링과 온라인 장바구니 관리 프로그램 같은 특수한 애플리케이션은 키-값, 문서, 컬럼 패밀리, 그래프 데이터베이스를 비롯한 비관계형 데이터베이스의 탄생과 발전을 자극했다. 관계형 데이터베이스는 여전히 필요하며 NoSQL 데이터베이스로 대체될 위험에 직면하지는 않았다. 대신에 NoSQL 데이터베이스는 기존과 다른 성능, 기능적인 특성을 겸비한 추가 옵션을 제공한다. 이 책은 NoSQL 데이터베이스를 소개하고, 어떨 때 사용하면 좋고 어떨 때 사용하면 나쁜지 논의하며, 가장 중요한 목적이라 할 수 있는 ‘데이터 관리 요구 사항을 충족하면서 효과적으로 NoSQL 데이터베이스를 사용하는 방법’을 설명하는 지침서로써 쓰였다.
---저자 서문 중에서