토요일, 6월 22, 2013

[독서광] 카산드라 따라잡기

1년 반 전에 [독서광] 카산드라 완벽 가이드라는 제목으로 카산드라 관련 서적 하나를 독자 여러분들께 소개드렸었다. 오늘은 에이콘 출판사에서 보내온 행운의 상자에서 꺼내 읽은 카산드라 책을 하나 소개하려 한다. 정말 간만에 전문서를 리뷰하니 낯설기까지 하구나. T_T

'150가지 예제로 배우는 NoSQL 카산드라 설계와 성능 최적화'라는 부제가 붙은 팩트 '카산드라 따라잡기'는 오라일리 카산드라 완벽 가이드와는 완전히 반대 방향에서 출발한다. 오라일리 버전이 카산드라의 이론, 아키텍처, 개념, 구조를 집중적으로 공략했다면, 팩트 버전(오늘 소개하는 책)은 일단 예제부터 보고 동작 원리를 파악하는 방식을 따른다. 따라서 책 내용 자체에 접근은 수월하지만 어느 정도 카산드라의 개념과 용어에 익숙해야 이해가 가능하므로 미리 선행 학습이 필요하다. 그리고 조각난 예제가 아니라 완전한 예제를 제공하며, 처음 카산드라를 만져보는 개발자를 위해 실습 환경 구축까지도 스크립트와 구체적인 예를 제공한다는 측면에서 직접 해보고 배우는 유형의 개발자에게 적합하다는 생각이다. 카산드라와 함께 동작하는 다양한 유틸리티, 프레임워크, 결합 가능한 오픈 소스 소프트웨어까지 소개하므로 카산드라를 중심으로 동작하는 에코 시스템을 이해할 수 있다.

목차를 보면, 우선 카산드라 인스턴스 실행 방법(단독, 다중)을 설명하고, CLI 인터페이스를 소개한다. 그리고 쓰리프트 API를 사용해 CLI로 수행한 작업을 다시 한번 프로그램으로 반복해보고 하드웨어, 운영체제, JVM과 관련된 성능 튜닝으로 들어간다. 여기까지 해보면 카산드라 맛보기가 끝날 것이다. 그리고 나서 일관성/가용성/파티션 허용, 스키마 디자인, 관리, 데이터 센터 사용과 같은 고급 주제로 넘어간다. 마지막으로 하둡을 사용한 맵리듀스를 설명하며, 성능 통계 수집/분석, 서버 모니터링으로 마무리한다. 거의 모든 부분을 실제 예를 들어 설명하고 있으므로 전반적인 카산드라 따라잡기에 많은 도움을 준다. 팩트 출판사 홈페이지에서 코드와 정오표를 제공하므로 관심있는 분들께서는 코드를 내려받아 살펴보기 바란다.

동전에 양면이 있듯이 이 책에도 빛(넓은 범위, 알기 쉬운 설명, 예제)과 그림자(얕은 깊이, 이론 부제, 예를 위한 예)가 공존한다. 현재 카산드라 버전이 1.2.5까지 나왔지만, 이 책은 여전히 0.7과 0.8대에 머물기 때문에 이후 새롭게 추가된 부분에 대해서는 직접 찾아봐야 한다. 또한 설명의 편의를 위해 책에서 다루는 내용이 'hello, world' 수준을 크게 넘어서지 못하므로 이 책에 나온 예를 그대로 상용 코드에 적용하기에는 무리가 있어 보인다. 일단 책에서 제공하는 샘플 코드를 사용해 개념을 잡은 다음에 추가로 다른 책과 웹 사이트를 살펴보자. 이 책과 함께 볼만한 자료로 카산드라 홈 페이지에서 제공하는 공식 위키는 다소 오래되었고 구성이 체계적이지 않으므로 DataStax Document에서 필요한 자료를 찾아보는 편이 정신 건강에 이롭다.

결론: 카산드라를 처음 시작하는 분이라면 감을 잡기 위해 이 책을 읽어보면 좋겠다.

EOB

댓글 없음:

댓글 쓰기