@EntityGraph

Spring boot

[query Optimization] LAZY 로딩과 N+1 문제

대부분의 경우, 어떠한 엔티티를 가져올 때 모든 연관된 엔티티도 함께 가져오는 eager fetch 대신, 그때 그때 필요한 엔티티만 join해서 가져오는 Lazy Fetch를 사용한다. 하지만 이러한 방법에는 N+1 문제가 발생하게 된다. [N+1 문제] N+1 문제는 데이터베이스에서 데이터를 조회할 때 발생할 수 있는 성능 이슈 중 하나다. N+1 문제는 한번의 쿼리로 가져올 수 있는 데이터를 가져오기 위해 N개의 쿼리를 더 실행하는 문제를 의미한다. 예를 들어, 게시물과 댓글을 저장하는 데이터베이스가 있다고 가정해보자. 각 게시물은 여러 개의 댓글을 가질 수 있다. 이때, 게시물과 그에 대한 댓글 정보를 모두 가져와야 한다고 가정하면, 다음과 같이 쿼리를 작성할 수 있다. SELECT * FROM ..

코앤미
'@EntityGraph' 태그의 글 목록