PMPV

SQL Query time 줄여보기 (3) 본문

development/개발 일기

SQL Query time 줄여보기 (3)

playinys 2020. 1. 2. 21:04
반응형

또 다시 데이터가 늘었다.

Factory boy를 사용해 400만 건 이상의 Post, 마찬가지로 수백만 건 이상의 Comment, Like를 추가하는데 30시간 이상이 걸렸다. 뭔가 이것도 실행 시간을 줄일 방법이 있지 않을까 싶다.

목표치였던 1억건의 Post는 현실적으로 불가능할 것 같아서 현재 데이터로 만족하기로 했다. 앞으로 데이터가 더 늘어날 일은 없을 듯 하다.

 

추가적으로 예상과 다르게 3번까지 늘어난 글을 보면서 나중에 불필요한 부분을 덜어내고 한 편의 글로 정리해야겠다는 생각을 했다.

우선 현 상황에 대해 다시 작성한다.

 

그림 1. 420만 건의 Post

생각보다 쿼리 타임은 크게 늘어난 것 같지 않다.

대신 페이지네이션 부분에서 로드가 커졌다. 3번째 줄에 나타난 쿼리는 아래와 같다.

 

그림 2. 페이지네이션에 사용되는 Count 쿼리

 

페이지네이션은 구글 검색을 통해 가져온 코드라서 크게 신경 쓰지 않았는데 여기서도 로드가 생기는 것을 확인할 수 있었다.

페이지네이션 소스 중에 전체 페이지의 수가 필요한 부분이 있는데 여기서 전체 Post에 접근하는 Count(*) 쿼리가 발생한다. 데이터가 늘어날 수록 타임이 커지는 구조라 이 부분에 대한 개선이 필요하다고 판단했다.

 

이 부분에 대해 이리저리 검색을 해본 소감은.. 어렵다.

낯선 개념이 많아 한동안 정리를 해본 이후에 개선 작업이 들어가야 하지 싶다.

반응형

'development > 개발 일기' 카테고리의 다른 글

SQL Query time 줄여보기 (2)  (0) 2019.12.30
SQL Query Time 줄여보기  (0) 2019.12.28
개발 일기를 시작하며  (0) 2019.11.12
Comments