Career/한글과컴퓨터

쿼리 성능과 관련하여

dm.kim 2020. 12. 10. 12:22

재택근무를 하며 각 백엔드 서버들을 클라우드 컴퓨터를 이용하여 띄워두었다.

기존의 다른 프로젝트를 로컬이나 아마존 EC2를 이용할 때도(해당 프로젝트 또한) 속도와 관련된 별다른 애로사항이 없었기에 이번에도 잘되려니했다.

 

그런데 이게 왠걸, Batch 작업에서 500개 가량의 레코드를 DB에 삽입할 일이 생겼는데 매번 돌때마다 실행 시간이 증가하다가 결국 14분씩이나 걸리고 말았다. 겨우 500개가 넘는 데이터를 삽입한다고 실행시간이 이렇게나 많이 걸린다는 것은 분명 문제가 있다고 생각했다.

 

해당 이슈를 해결하기 위해 백엔드 팀원과 함께 여러모로 방법들을 생각해보았다. DB를 거치지 않고 백엔드 서버단에서 HashSet, HashMap 등을 이용하여 중복 데이터들을 정리한 후 DB에 쿼리 날리는 횟수를 줄이는 등의 방법을 고안해 보았지만 큰 효과가 있지는 않았다.

 

무엇이 문제일까 계속 고민해도 원일을 알 수 없어 팀장님께 여쭤보기로 했다.