N+1 문제는 ORM(Object-Relational Mapping)에서 연관된 엔티티를 조회할 때 발생한다. 기본적으로 1개의 쿼리로 주 엔티티를 조회하고, 각 엔티티에 대한 연관된 엔티티를 조회하기 위해 추가로 N번의 쿼리가 실행된다.
사용 시점: 주 엔티티와 연관된 엔티티가 항상 함께 사용되는 경우.
특징: 주 엔티티를 조회할 때 연관된 엔티티도 함께 조회한다.
사용 시점: 연관된 엔티티가 항상 필요하지 않은 경우.
특징: 연관된 엔티티는 필요할 때 실제로 사용될 때까지 로딩을 지연한다.
즉시로딩은 데이터 접근 패턴이 예측 가능할 때, 지연로딩은 추가적인 성능 최적화가 필요한 경우에 유용하다.