study/SQLAlchemy1 [SQLAlchemy] N+1 문제를 넘어 최적의 Eager Loading 전략 수립하기 SQLAlchemy ORM을 사용하면서 N+1 문제를 방지하기 위해 selectinload를 사용하는 것은 흔한 접근입니다. 저 역시 초기에는연관관계의 유형과 상관없이 모든 관계에 selectinload를 적용했습니다. 하지만 실제 생성되는 SQL을 분석해 보니 이 방식이 항상 최적은 아니었습니다. 결과적으로 연관관계의 성격과 쿼리의 목적(필터링 vs 로딩)에 따라 전략을 명확히 분리해야 한다는 결론에 도달했습니다. 1. SQLAlchemy Eager Loading 전략의 역할Eager Loading은 연관 엔티티를 실제 접근하기 전, 부모 엔티티 조회 과정에서 미리 로딩하는 전략입니다.- 목적: Lazy Loading으로 인한 추가 SELECT(N+1) 방지- 대표 전략: selectinload, jo.. 2026. 1. 18. 이전 1 다음