카프카 핵심 가이드 개정증보판, 그웬 샤피라, 토드 팔리노, 라지니 시바람, 크리트 페티 지음, OREILLY, 이동진 옮김, 제이펍
내가 좋아하는 기술 서적의 특징이기도 하다. 책의 기본적인 구성을 잘 갖춘 책..! 같은 이유 때문에 좋아하는 책으로 동일 출판사에서 나온 ‘데이터 중심 애플리케이션 설계’(후기) 가 있다. 책 첫부분에서 이 책을 어떻게 활용해야 하는지 명확히 알려주고 맨 마지막에 인덱스가 있는 구성을 좋아한다. 각 장의 구성도 알차다. 장별로 도입부에서는 그 장이 중요한 이유와 전반적인 내용 소개 및 목표를 제시하고, 마지막에는 요약으로 마무리한다. 카프카에 대한 알찬 이론과 상세한 설명과 주석이 있는 코드 구경은 당연하다.
우선 번역이 아주 매끄럽다. 그냥 한국어책을 읽는 것 같다. 뿐만 아니라 책 곳곳에 옮긴이의 첨언이 등장하는데 이게 내용을 이해하는 데 꽤나 도움이 많이 되었다. 카프카에 정말 애정이 있는 분이구나, 하는 생각이 절로 들었다. 그도 그럴 게, 옮긴 이가 바로 이런 분이기 때문이다: 2023 DEVIEW 에서 네이버 스케일로 카프카 컨슈머 사용하기 를 발표한 이동진님.
책의 오역 및 오탈자도 깃헙 페이지를 통해 제보 받고 있다: https://dongjinleekr.github.io/kafka-the-definitive-guide-v2/errata/
역자가 등장한 부분 중 생각나는 몇 군데만 뽑아봤다. 단순히 짧은 코멘트만 있는게 아니라 내용 이해를 도와주는 내용, 구버전과 신버전 비교, 사내 카프카 시스템을 운영하면서 자주 질문 받는 부분 등 유익한 내용이 많았다.
사실 없다...
굳이!! 아쉬운 점을 하나 꼽아보자면 모니터링이나 운영 관련 챕터에서 실제 장애 사례가 소개되었다면 더 재밌지 않았을까 하는 것이다. 그런데 이건 이 책에서 다루는 범위 밖의 이야기다. 카프카 사용처가 워낙 많아서 몇가지를 꼽기도 어려웠을 것이며, 이 책은 사례 모음집이 아니라 가이드이기 떄문이다. 보다 실무에 가까운 내용은 다른 책에서 기대할만한 내용이다.
그리고 사실 이 책이 완전히 실무와 동떨어진 책도 아니다. 오히려 중간중간 이런식으로 실무에 바로 써먹을 수 있는 내용도 많이 나온다: 파티션 수는 어떻게 결정해야 하나요?
에 대한 답변이다.
카프카에 대한 이해도가 비슷한 사람들끼리 스터디를 했다. 인원도 딱 괜찮았다 4명! 그래서 저번부터 쓰던 ‘모두가 발표하는 스터디 방식’을 그대로 써먹었고 이번에도 효과가 좋았다. 사실 사내 스터디를 하면 연차가 워낙 다양해서 눈높이가 살짝씩 다르거나, 매주 한 사람이 전담 발표를 해서 다른 사람들은 조금 심심한(…) 사태가 벌어지곤 했는데 이번 스터디는 사내 스터디 중에서 제일 알차게 참여했던 것 같다.
사실 책 초반부는 거의 스펙 문서다.
‘진짜’는 6장부터 시작이다. 재밌었던 장별로 키워드를 적어보자면…
헉… 키워드만 봐도 설레지 않는가? 앞 부분이 지루하다고 드랍하기엔 너무나도 아까운 책이다.
책에 은근히 명언이 많이 나온다. 워낙 편안한 분위기에서 스터디를 했어서 가끔 인상깊었던 구절도 남기곤 했는데, 똑같은걸 남긴 적도 있었다. 번역이 잘 된 것도 한 몫 했다고 본다.
우리는 이미 같은 클러스터에 속한 카프카 노드 간의 데이터의 교환을 복제라고 부르고 있으므로, 카프카 클러스터 간의 데이터 복제는 미러링이라고 부를 것이다.
(오~ 그러고보니 눈치채지 못한 부분이었다. 현명했다!!)시스템 보안은 딱 가장 약한 고리만큼만 강한 법
(4명 만장일치로 ‘명언’으로 꼽힌 구절)스트림은 변경을 유발하는 이벤트의 연속이다. 테이블은 여러 상태 변경의 결과물인 현재 상태를 저장한다. 이러한 점에서 볼 때 스트림과 테이블은 같은 동전의 양면임이 명백하다.