데이터베이스와 분산 시스템 지식 줍줍 스터디 시작
데이터베이스와 분산 시스템에 관한 기초가 약해서 공부를 시작하기로 했다.
일단은 데이터베이스와 분산 시스템을 공부하며 내 CS 지식을 좀 더 보강해보려고 한다.
시작하게 된 계기
최근 파이썬의 비동기를 건들면서 너무 무지하다는 것을 느꼈다.
Celery와 Green Threads, Thread/Process Execution Pool, asyncio 등이 내 머릿속에서 짬뽕되면서 혼란스러웠다.
물론 이벤트 풀은 OS의 영역이긴 하지만 다른 분산 시스템에 대한 탐구와 공부가 필요하다는 것을 느꼈다.
Grafana Loki나 Prometheus 같은 TSLB를 구축하는 일이 생겼는데 용도에 맞게 튜닝하기 어려웠다.
분산(or multi-tenant)를 지원하는 제품은 매우 설정 값이 복잡하다. Loki configuration 가이드(링크)를 보고 사실 좀 막막했었다. 내가 제공하고자하는 서비스 형태에 맞춰서 값을 어떻게 설정할지는 튜닝 노가다?가 필요하기도 했다. ex. 동시에 돌아갈 쿼리에 대한 설정값
이것저것 설정해 보면서 어떻게든 대략적인 값을 정할 수 있긴 했지만 불안한 마음은 남아있다. 개인적으로 이런 값들이 어떤 의미를 가지는지 좀 더 자세하게 판단할 수 있었으면 한다.
그래서 다른 분산 시스템이나 데이터베이스 옵티마이저 등에 관한 이해가 필요하다.
목표
이번 기회에 경험적으로 쌓은 지식(ex. "~~것은 넣어주는 것이 좋다.", "~~것은 인덱스를 타지 않는다.", "~~것은 절대 쓰면 안 된다.")을 이해해보려고 한다.
사용할 언어 및 자료
언어
요즘 생각보다 Go로 된 소스코드를 자주 본다. K8S도 Go, Loki도 Go..
자주 읽으면서 어느 정도 익숙해지기도 했고 채널이나 기본적인 개념은 3년 전에 공부한 적이 있기 때문에 일단 Go로 실습을 해보려고 한다. (Rust, tokio가 당기긴 하지만.. 소유권 개념이 익숙하지 않기도 하구 너무 생소해서 일단 아껴둔다..)
제대로 Go로 짜본적은 없어서 뉴비다.
자료
Go는 이 글(https://news.hada.io/topic?id=9290)을 참고하려한다.
데이터베이스 개론은 CMU 15-445 강의를 볼 예정이다. 텍스트 북은 당연히 많이 보는 Database System Concepts을 볼 예정이다.
데이터베이스 Advanced는 CMU 15-121을 볼 예정이다.
분산 시스템은 이전에 군대에서 보다가 실패한 MIT 6.824를 볼 예정이다.
신입생 때로 돌아간 것 같아서 기분이 좋다.
고!!
댓글
이 글 공유하기
다른 글
-
(2023년 5월) 개발, CS 공부, 자격증 정보 공유
(2023년 5월) 개발, CS 공부, 자격증 정보 공유
2023.05.27 -
[AWS] Certified Cloud Practitioner 자격증 후기 (할인 받는 법)
[AWS] Certified Cloud Practitioner 자격증 후기 (할인 받는 법)
2023.01.24 -
[2022년] 컴퓨터공학 대학생 공부 및 면접 대비 자료 추천
[2022년] 컴퓨터공학 대학생 공부 및 면접 대비 자료 추천
2022.11.14 -
웹 애플리케이션 공동 명의로 저작권 등록하는 법
웹 애플리케이션 공동 명의로 저작권 등록하는 법
2022.11.07