개발 Q&A

제목 서브쿼리와 foreach문 속도 차이.
카테고리 기타
글쓴이 davincl 작성시각 2017/06/09 15:40:49
댓글 : 3 추천 : 0 스크랩 : 0 조회수 : 9646   RSS

1만줄 되는 데이터베이스를 서브쿼리(4~6개)를 통해 통계를 내는게 속도면에서 좋을까요? (인덱스를 모두 정상적으로 탄다는 전제)

서브 쿼리 없이 한번에 데이터를 가져와서 PHP단에서 foreach문을 3번정도 태워서 결과를 출력하는게 빠를까요? 

구글링으로 계속 찾아보니 서브 쿼리에 대한 속도 개선 및 피하는게 좋다라는 말만 나와서요.. 

어떤 방법이 속도 개선에 좋은지 알수가 없어서요. 혹시 저와 같은 상황에 대면을 해보신분있으시면 조언 부탁드립니다.

 

 

 다음글 리눅스 NFS 에서 트래픽 개념이 ?? (6)
 이전글 uploadify 파일 업로드 오류에 관하여 (2)

댓글

변종원(웅파) / 2017/06/09 15:51:45 / 추천 0

정확한 결과는 두가지 케이스 모두 걸리는 시간과 cpu, 메모리량을 측정해봐야 합니다.

일반적으로(경험상) 말씀드리면 한방 쿼리(서브쿼리 포함)로 작성했다가 분리를 하기도 합니다.

단순 건수로 비교는 힘들고 어떤 조건인지 모르는 상태에서는 정답은 없습니다.

davincl / 2017/06/09 16:03:15 / 추천 0

답변 감사합니다.

제가 여건을 많이 놓치고 단순한 상황만 설명해드렸네요.  개발 환경을 설명하기가 그래서.. 

여튼 많은 참고 하겠습니다. 

kaido / 2017/06/09 16:09:30 / 추천 0

상황에따라 다릅니다

과거에는 웹서버가 바쁘고 [당시 컴퓨터 사양이 평균적으로 낮아서] 데이터베이스가 널널했습니다.

그래서 가르칠때도 데이터베이스가 다 처리 하는 방법을 배웠다면

지금은 반대로 데이터베이스의 데이터가 방대해져서 데이터베이스를 혹사 시키지 않는 방법으로 가고 있습니다.

두 가지 모두 만들어 보고 벤치마킹 해서 좀더 빠르다 싶은 방법을 선택 하세요.