즉시로딩과 지연로딩은 각각 언제 사용하면 좋은지 설명해주실 수 있을까요?

코코·2023년 10월 18일
0

기술면접 준비

목록 보기
17/42

즉시로딩과 지연로딩은 ORM(Object-Relational Mapping)에서 데이터를 가져오는 방식을 설명하는 용어입니다.

즉시로딩 (Eager Loading)

  • 즉시로딩은 관련된 모든 데이터를 한 번에 로드하는 방식입니다. 주로 관련된 데이터가 항상 함께 사용되는 경우 유용합니다.
  • 여러 개의 엔티티가 자주 함께 사용될 때 유용하며, 쿼리 수행 횟수를 줄여 성능을 향상시킬 수 있습니다.
  • 일대다 관계에서는 일부 엔티티를 항상 함께 사용할 때 즉시로딩을 고려할 수 있습니다.

지연로딩 (Lazy Loading)

  • 지연로딩은 데이터가 실제로 필요한 시점에만 로드하는 방식입니다. 주로 관련된 데이터가 사용되지 않는 경우에 유용합니다.
  • 많은 양의 데이터를 로드하지 않고 필요한 데이터만 로드하므로, 네트워크 트래픽을 줄이고 메모리 사용을 최적화할 수 있습니다.
  • 일대다 또는 다대다 관계에서는 대부분의 경우 지연로딩이 기본적으로 사용됩니다.

정리

  • 즉시로딩과 지연로딩은 각각의 장단점이 있으며, 사용 사례에 따라 상황에 맞게 선택해야 합니다.

  • 보통은 지연로딩을 기본으로 사용합니다. 대부분의 상황에서 적합하며, 데이터를 효율적으로 관리할 수 있는 방법 중 하나이기 때문입니다.

  • 성능 문제가 발생할 때는 즉시로딩을 고려할 수 있습니다. 특히 연관된 데이터가 항상 함께 사용될 때나 데이터가 적을 때는 즉시로딩을 고려할 수 있습니다.

profile
Just Do It

0개의 댓글