De-Note sparkafka's dev blog

데이터 중심 애플리케이션 설계를 읽고...

감상

Data Intensive Application Design

드디어 데이터 중심 애플리케이션 설계를 다 읽었다. 산지 몇 년 됐는데 23년에서야 다 읽게 되었다. 계속 미루고 미루다가 한 번 읽기 시작하니까 그래도 생각보다는 빨리 읽을 수 있었다. 비에 젖은 책의 모습, 참 안타깝다.

책은 좋은 애플리케이션이 가지는 특징들을 시작으로, 데이터베이스의 종류 및 특징, 분산 데이터, 파티셔닝, 배치 및 스트림 처리 등등 데이터를 중심으로 애플리케이션을 설계할 때 알아야 할 것들에 대해 쓰여있다. 전에는 몰랐던 내용이나, 애매모호한 개념으로만 알았던 것들에 대해 상세하게 쓰여 있어서 나에게 신세계를 경험하는 느낌을 주었다.

그리고 내가 당연하게 여기면서 사용한 것들도 그동안 수 많은 엔지니어들이 고민을 해가면서 만든 추상화였음을 새삼 다시 느끼게 되었다. 간단한 RDBMS 쿼리만 하더라도 수 많은 기술들이 들어가 있고, 그것을 사용자가 눈치채지 못할 만큼 쉽게 추상화가 되었던 것이었다. 선배 엔지니어분들께 감사함을 느낀다.

데이터 엔지니어를 목표로 하고있어서 그런지 배치 및 스트림 처리 부분을 가장 흥미롭게 읽었다. 특히 카프카를 다루다 보니, 스트림 처리에서 메시징 시스템 내용은 카프카로 생각을 해보니 이해하기가 쉬웠다. 또 배치 및 스트림 처리에서 사용되는 파이프라인 개념이 결국 한 작업의 출력이 다른 작업의 입력이 되는 유닉스 정신에서 비롯된 것이라는 것도 흥미로웠다.

이 책의 내용을 한 문장으로 요약하면 다음과 같다고 생각한다.

모든 것을 만족하는 단일 애플리케이션은 없다.

결국 다양한 요구 조건을 만족하는 서비스를 제공하기 위해서는 여러 부문을 공부해야 할 것이다. 나도 배우는 것을 소홀히 하지 말아야 겠다는 것을 느꼈다. 여러 부문을 아우를 수 있는 데이터 엔지니어가 되기 위해 노력할 것이다.