• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

페치 조인의 사용 기준이 고민됩니다.

23.03.15 14:09 작성 23.03.15 14:19 수정 조회수 399

0

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.

1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)

[질문 내용]
안녕하세요. 좋은 강의 잘 듣고 즐겁게 공부하고 있습니다.

개인적으로 토이프로젝트를 하던 중에 쿼리 최적화(?) 기준에 관해서 고민이 생겼습니다. 현재 회원의 모든 게시물을 조회하는 로직이 있는데, 회원를 조회하고(1) 회원의 모든 게시물을 조회하고(2) 이렇게 총 2번의 쿼리가 발생합니다.

이런 상황에 페치 조인을 통해 회원을 조회할 때 게시글도 한번에 페치 조인해오는 코드를 만드는 것이 더 효율적인지, 이정도는 괜찮은지 잘 결정하지 못하겠습니다. 해당 코드를 개발하더라도 사용하는 경우가 더 생길지 안생길지는 모르는 상황입니다.

물론 정답은 없겠지만, 영한님의 의견을 들어보고 싶어서 질문 남깁니다! 좋은 강의 항상 감사합니다!

+) 애초에 해당 접근방식의 문제가 아니여서 다르게 해결은 했습니다. 그래도 기준이 궁금하여 질문은 남겨두겠습니다. comment.getPost().getMember() 처럼 타고타고 들어가는 상황일 때마다 페치조인을 해주는 것이 가장 좋은지 궁금합니다!

답변 1

답변을 작성해보세요.

1

안녕하세요. 789456jang님

항상 그런 것은 아니지만 대부분의 경우에는 쿼리를 줄이는 것이 성능이 최적화 됩니다.

그런데 또 성능이 크게 중요하지 않는 곳 까지 성능 최적화를 무리하게 하는 것도 효과적이지는 않습니다.

사용자 요청이 많은 곳이라면 쿼리 수를 줄여서 최적화 하는 것을 처음부터 목표로 하고, 그렇지 않은 곳이라면 사용하면서 느린 곳을 점진적으로 최적화 하는 방법이 괜찮습니다.

감사합니다.

789456jang님의 프로필

789456jang

질문자

2023.03.17

감사합니다. 처음부터 다시 복습하며 올라오니 놓친 부분도 많고, 새롭게 보이고 궁금해지는 것도 많이지네요.

열심히 공부해서 꼭 원하는 것을 이루도록 하겠습니다. 좋은강의 감사합니다!