융무의 기술블로그
article thumbnail

- 서비스 운영 중 추천 시스템 배치에서 DB lock 운영 문제가 발생되었고 다른 서비스를 운영하면서 presto와 hive 엔진을 사용하며 sql 성능 최적화 및 튜닝 포인트에 관심이 가기 시작해서 책을 읽게 되었습니다. 이 책은 1권과 2권으로 나누어지며 2권에서는 쿼리의 실행 계획 분석 및 최적화, 스토어드 프로그램 개발, 데이터 모델링 및 최적의 데이터 타입 선정, 파티션 및 데이터 압축 활용, TDE를 활용한 데이터 암호화, GIS 및 전문 검색 기능 활용, Performance 스키마 및 Sys 스키마 활용에 관한 내용을 다루고 있습니다.

- 책의 전반적인 내용은 다음과 같습니다. 쿼리 패턴별로 어떻게 처리되고 프로그램 코드를 상당히 줄일 수 있는 유용한 쿼리 패턴들을 예제와 소스코드를 활용해서 설명해주고 있고 MySQL 서버의 대표적인 확장 검색 기능인 전문 검색과 공간 검색 기능을 살펴보았습니다. MySQL 서버에서 자주 사용하는 파티션 방법과 사용 시 주의해야 할 사항에 대해 설명하고 스토어드 프로그램의 문법과 자주 사용하는 제어문과 권한, 보안 및 예외 핸들링과 스토어드 쿼리에 대해서 배웠습니다. 칼럼의 데이터 타입에 대해서 세세하게 배우고 MySQL에서 제공하는 복제는 어떤 것이고, 어떻게 구현돼 있으며, 어떻게 작동하는지, 복제를 활용해서 얻을 수 있는 이점에 대해서 살펴보았습니다. InnoDB 클러스터가 어떤 것이고, 어떻게 구현되어 있으며, 이를 활용해서 얻을 수 있는 이점과 Performance 스키마와 Sys 스키마 각각을 자세히 살펴보면서 사용자가 어떤 정보를 얻을 수 있는지 예제를 통해서 알게 되었습니다.
- 2권에서는 쿼리 최적화나 파티션과 Performance 스키마와 Sys스키마에 대해 집중적으로 배우며 실무에서 튜닝 포인트를 찾으려고 하였던 같습니다. 책에서는 어느 정도 디테일한 부분을 다루고 있기에 데이터 엔지니어나 분석가분들 중 MySQL 쿼리를 공부하려고 하는 분들에게는 2권부터 읽는 것을 추천드립니다.

profile

융무의 기술블로그

@융무

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!