강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

tyiju님의 프로필 이미지
tyiju

작성한 질문수

김영한의 실전 데이터베이스 - 기본편

정리

JOIN 방향에 따른 결과 행수와 효율적 데이터 조회 방법 질문

작성

·

11

0

안녕하세요, 강사님.

데이터를 효율적으로 JOIN 하여 어떻게 가져올지에 대한 방안에 대해 고민하던 중, 궁금한 점이 있어 질문을 드립니다.

 

강사님의 강의를 들으며 JOIN 시 결과 행수 차이에 대해 아래와 같이 이해했습니다.

  • 부모 테이블에서 자식 테이블로 JOIN할 경우
    → 결과 행수가 부모 기준으로 유지된다.

  • 자식 테이블에서 부모 테이블로 JOIN할 경우
    → 결과 행수가 자식 행수에 따라 크게 늘어날 수 있다.

그렇다면 아래와 같은 상황에서 어떻게 처리하는 게 효율적일지 궁금합니다.


 

강의 상세 페이지처럼 여러 유형의 데이터를 한 번에 가져와야 하는 경우
> 예시) 강의 정보, 강사 정보, 강의 평점, 강의 리뷰 등

  • 부모 테이블(강의)에서 자식 테이블(강사 정보, 강의 평점)로 JOIN할 때, 결과 행수가 부모 테이블 기준으로 유지되거나 크게 늘어나지 않는 상황에서는 한 번의 쿼리로 모든 데이터를 조회하는 것이 좋은 방법일까요 ?

  • 반대로, 강의 리뷰처럼 자식 테이블의 데이터가 많아져서 결과 행수가 급격히 늘어날 경우에는 리뷰 데이터만 별도의 쿼리 또는 API로 분리해서 조회하는 것이 더 바람직할지 궁금합니다.

결국, 관계 방향과 데이터 양에 따라 결과 행수가 크게 늘어나지 않는 JOIN까지만 한 번에 처리하고,
행수가 많아지는 데이터(예: 리뷰)는 별도로 쿼리하거나 API를 분리하는 전략이 좋을지, 그리고 쿼리/API 분리 기준을 어떻게 결정하는게 좋을지 설명해주시면 큰 도움이 될 것 같습니다.

감사합니다.

답변

답변을 기다리고 있는 질문이에요
첫번째 답변을 남겨보세요!
tyiju님의 프로필 이미지
tyiju

작성한 질문수

질문하기