티스토리 뷰
반응형
오늘은 아래 글을 토대로 조인 쿼리의 성능과 그에 대한 내용을 다뤄보았습니다.
https://tecoble.techcourse.co.kr/post/2023-10-09-join-query-vs-multiple-quries/
어떤 경우에 한 방 조인 쿼리와 여러 개 쿼리 분리를 고려할 수 있을까?
…
tecoble.techcourse.co.kr
조인을 섞은 한방 쿼리와 쿼리 여러 개를 분할해서 전송시키는 것에 대한 차이를 적어두었는데, 이것은 데이터의 양과 시스템의 환경에 따라 맞는 것으로 세팅해줘야한다는 것을 알았습니다.
분할된 쿼리로 호출해야 하는 경우
- 로그성 테이블처럼 데이터 양이 많은 경우
- FROM 절에 들어가는 테이블에서 데이터의 양이 많고 인덱스가 걸린 경우
- EXPLAIN 절을 활용하여 자동으로 잡아주는 인덱스에 문제가 없는 경우
- 리소스 낭비가 적거나, 스펙이 좋아 ResultSet을 잘 뱉어내는 경우
조인 쿼리로 호출해야 하는 경우
- 데이터의 양이 많지 않지만 테이블 연관 관계가 어느정도 존재하는 경우 (약 3뎁스까지는 적절)
- 연관관계로 인해 서브 쿼리들이 많이 나가는 경우 (일대일 관계)
- 카운트 함수 등 SELECT 문에 함수가 들어가는 경우
- N+1 이슈가 발생하는 경우
- 리스트 -> 상세정보까지 많은 정보를 한 번에 불러오는 경우
반응형
'Server' 카테고리의 다른 글
[Java] JPA 페치 조인(Fetch Join) (1) | 2023.11.28 |
---|---|
데이터베이스 복제에 관한 도움이 되는 글 (0) | 2023.11.27 |
[Spring] OAuth2 SNS 로그인 구현 (0) | 2023.11.17 |
[Java] 카카오톡 앱 서버 자바 코드 리팩터링 (2) | 2023.11.13 |
[Mysql] 전체 테이블의 Row Count를 구하는 방법 (2) | 2023.09.06 |
코프링으로 개발할 때 도움이 될만한 글 + Spring Framework & Boot (0) | 2023.08.18 |
댓글
공지사항