데이터 중심 애플리케이션 설계 리뷰 - 0. 읽기 전...

임지규·2021년 10월 6일
5
post-thumbnail

왜 이 책을 골랐나?

첫 포스트에서도 말했듯, 나는 엔지니어로서의(현재는 데이터 엔지니어) 관점을 넓히기로 했다.

첫 째로 데이터 엔지니어 직무에 대한 이해도를 높이고(1)
다양한 데이터 관련 기술 인프라를 배우고(2)
최종적으로 이를 바탕으로 좋은 아키텍쳐를 설계할 수 있는 엔지니어가 되기(3) 위한 노력을 하고 있다.

그리고 이 목적들을 달성하기 위해서는 무작정 좋아보이는 기술을 학습하기 이전에
무엇을 어떻게 왜 해야 하는지 큰 그림을 그리는 것이 좋다고 판단했다.
그리고 이 목적을 달성할 수 있는 가장 좋은 방법 중 하나는 잘 정제된 책을 읽는 것이라고 생각했다.

그렇게 도서를 열심히 찾아보았고, 여러 후보들 중 가장 내 목적을 달성시켜줄 수 있을 것으로 판단되어 이 책으로 결정했다.

책에서 다루는 내용

이 책은 특정 기술의 설명서가 아니다.
그것보다는 데이터 시스템의 기초 원리부터 데이터베이스, 분산 시스템, 데이터 처리 방식까지 전체적인 구조를 자세히 설명한다.
즉, 현재 마주할 수 있는 거의 모든 데이터 시스템의 근본적인 내용을 큰 틀에서 이해할 수 있으며 각 시스템의 개념과 한계점을 배울 수 있다.

책의 앞 부분에 나와있는 개요를 참고하면 앞으로 구성될 내용은 다음과 같다.

1부 - 데이터 중심 애플리케이션 설계를 위한 근본 개념

  1. 데이터 시스템에 대한 생각 - 신뢰성, 확장성, 유지보수성
  2. 데이터 모델과 질의 언어 - 다양한 질의 언어의 비교
  3. 데이터 저장 엔진 - DB가 데이터를 효율적으로 찾기 위한 배치 방식
  4. 데이터 부호화(직렬화) - 부호화 형식과 스키마를 발전시키는 방법

2부 - 분산 시스템으로의 변화

  1. 복제
  2. 파티셔닝/샤딩
  3. 트랜잭션
  4. 분산 시스템의 문제점
  5. 분산 시스템의 일관성과 합의

3부 - 데이터 처리, 파생 데이터

  1. 일괄(Batch) 처리
  2. 스트림 처리
  3. 데이터 시스템의 미래(종합)

기대하는 점

궁극적으로는 초반에 언급했던 목적들의 달성이다!
당연히 이 한 권으로 그 목적을 달성할 수는 없겠지만 최소한 그 방향으로 몇 걸음 나아갔다는 생각이 들기를 기대한다.
더 구체적으로는 데이터 시스템에 대한 근본적인 이해도가 높아지고
무엇보다 이 책을 읽고 나서 다음 공부할 것이 선명해지면! 기분이 좋을 것 같다 ㅎㅎ

profile
서울대학교 컴퓨터공학부 Backend(Data) Engineer

0개의 댓글