Database/High Performance MySQL

MySQL 성능 최적화 (실비아 보트로스, 제레미 틴리) 리뷰를 시작하기 전

Seung-o 2023. 7. 23. 15:43

2년간 회사를 다니면서, MySQL 데이터베이스와 관련한 다양한 이슈는 항상 내 곁을 따라왔다. 

대게 이슈는 다음과 같은 형태를 가진다. 

1. 슬로우 쿼리 최적화 이슈

2. 트랜잭션과 그 격리 레벨에 따른 동시성 이슈

3. 데이터 베이스이 리소스 관리 이슈

 - 커넥션, CPU, 메모리 중 하나가 부족하여, 라이브 서비스에 발생한 장애가 그 예다. 

 

위와 같은 이슈를 겪으면서 내가 가졌던 생각을 나열하면, 다음과 같다. 

 

1. 데이터 베이스는 서버가 갖는 불가피한 외부 의존성이기에, 데이터 베이스의 장애는 서비스에 치명적일 수 밖에 없다. 
2. 그렇기에, HA와 같이 장애가 발생했을 때의 방어 조치들도 중요하지만, 장애를 피할 수 있다면 최대한 피하는 것이 필요하다.

 

정리하면, 데이터 베이스의 선제/후속 조치는 규모가 있는 프로젝트에서는 반드시 필요하다는 것인데,

이런 조치와 결정을 내리기에 스스로가 가진 MySQL 아키텍쳐에 대한 지식이 부족함을 느꼈다. 

데이터베이스의 어떤 값을 튜닝을 해야하는지, 데이터 베이스 설계를 할 때는 테이블 분리가 어느 정도 수준까지 이루어지는 것이 최선인지, B-Tree 인덱스가 특정 상황에서 어떻게 동작하는지 등. 

위와 같은 고민들을 「High Performance MySQL」 책에서 풀어나가보고자 한다.

 

'Database > High Performance MySQL' 카테고리의 다른 글

운영 체제 및 하드웨어 최적화  (0) 2023.08.26
Performance Schema (2)  (0) 2023.08.17
Performance Schema (1)  (0) 2023.08.15
신뢰성 엔지니어링 환경에서의 모니터링  (2) 2023.07.31
MySQL 아키텍처  (0) 2023.07.23