본문 바로가기
데이터 베이스

성능향상을 위한 SQL 작성법

by dharana7723 2022. 6. 17.

레디스를 통해 데이터베이스 튜닝을 시도하다 데이터 수가 너무 많은 것에 비해 캐시하려는 쿼리 데이터 자체 조차

2초씩 * 40만건이 걸려 지나친 시간이 걸리는 것을 확인하고 본질적인 문제가 데이터베이스 / 쿼리 자체에 있다고 생각하게 되었습니다.

 

SQL 튜닝을 찾아보며 기본적으로 몇천건의 데이터 이하는 exists, in 절을 사용해도 괜찮지만 몇십만, 몇백만 이상의 경우 inner join을 활용해야 한다는 것이 기본적인 내용이었던 것 같고, 기타 튜닝 방법 등에 대해서 도움되었던 글은 다음과 같습니다.

https://d2.naver.com/helloworld/1155

 

완전히 구현을 하고 좀더 빠르게 만들 수 있는 방법을 찾아보아야 겠지만, 테이블 하나를 더 만드는 것을 요청하던가 쿼리 자체를 튜닝,

혹은 캐시 데이터에서 필터링을 우선하고 해당 필터된 데이터 수가 적다면 그부분만 적용해 놓는 방식을 활용할 수 있을 것 같습니다.