A

DB에서 데이터를 1000만개중에 10개 select하는거랑

DB에서 데이터를 1000만개중에 10개 select하는거랑
100개중에 10개 select하는거랑 비교하면
결론적으로 10개를 select 한다는면에서
해당 쿼리 처리가 서버에 미치는 부하량(처리 시간?)은
동일하다고 보면 될까요?
이 부분에 대해서 제가 이론적으론 잘 모르겠는데
전에 수천개 데이터를 페이징 없이 처리하면 웹페이지 로딩 속도가 굉장히 느렸는데
같은 데이터를 페이징을 나누니까 속도가 비교불가급으로 빨랐거든요.
그렇다면 DB select 처리시간도, 대상이 되는 테이블의 row 갯수랑은 완전 무관하게
select되어져오는 row의 갯수랑만 관련있는게 아닐까 싶어서
제가 생각하는게 맞는지 궁금해서 질문드립니다.
|

댓글 3개

데이터가 쌓여진 상태 그대로 천만건과 백개에서 앞 10개를 가져오는것의 속도차는 거의 없을겁니다.
그런데 그 10개를 가져옴에 있어서, 정렬이 들어간다던가, 검색이 들어간다던가 하는 등의 뭔가 부가적인 처리가 있을 경우에는 천만건과 100개에서 각각 10개를 가져오는데에는 시간차가 많이 있겠지요. ^^
select 문은 DB table에서 해당 field를 가져오겠죠. 문제는 from 테이블들과 where 조건문,having,group by
등에 따라 프로세스를 처리하는 쓰레드가 늘어 나고
row에 대한 한번의 처리 갯수 또한 처리량으로 소모하는 쓰레드도 늘어 난다고
생각되는데,,, 저는 개발자가 아니니 확실한건 아닙니다.
결과적으로 서버의 사양과 DB설계에 따라서 천차만별입니다.
그리고 검색되서 나오는 결과값이 얼마냐에 따라서 속도차이가 납니다.
1000만건이라도 무조건 느리지 않습니다.
오히려 적절한 설계에 인덱스의 효율성을 고려하면 0.0X 초 대의 속도로 뽑아오실 수 있습니다.
문제는 검색되는 결과값을 어떻게 하면 최대한 분배할 수 있는가의 문제겠네요.

예를 들면 1000만건 검색시 결과값이 100만건일때와 1만건일때는 확연히 차이를 보여줄겁니다.
일반적으로 페이징이 많을수록 뒤로갈수록 느려집니다.
최종적으로는 5000만건 이상일시에는 결과값에 대한 카운트쿼리만 날려도 느려질겁니다.
그렇지 않을려면 적절하게 설계를 해야되겠죠.

MySQL이 무료라지만 1000만건 정도에서는 0.0X초 정도가 나와야 정상입니다.
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

태그 필터 (최대 3개) 전체 개발자 소스 기타 mysql 팁자료실 javascript php linux flash 정규표현식 jquery node.js mobile 웹서버 os 프로그램 강좌 썸네일 이미지관련 도로명주소 그누보드5 기획자 견적서 계약서 기획서 마케팅 제안서 seo 통계 서식 통계자료 퍼블리셔 html css 반응형 웹접근성 퍼블리싱 표준화 반응형웹 홈페이지기초 부트스트랩 angularjs 포럼 스크린리더 센스리더 개발자톡 개발자팁 퍼블리셔톡 퍼블리셔팁 기획자톡 기획자팁 프로그램강좌 퍼블리싱강좌
+
제목 글쓴이 날짜 조회
12년 전 조회 2,158
12년 전 조회 1,911
12년 전 조회 2,560
12년 전 조회 2,125
12년 전 조회 2,794
12년 전 조회 2,113
12년 전 조회 2,552
12년 전 조회 2,666
12년 전 조회 2,017
12년 전 조회 2,276
12년 전 조회 5,932
12년 전 조회 2,363
12년 전 조회 1,678
12년 전 조회 2,039
12년 전 조회 3,181
12년 전 조회 1,818
12년 전 조회 2,072
12년 전 조회 2,493
12년 전 조회 1,870
12년 전 조회 1,201
12년 전 조회 2,383
12년 전 조회 1,978
12년 전 조회 8,422
12년 전 조회 2,880
12년 전 조회 2,672
12년 전 조회 2,721
12년 전 조회 3,326
12년 전 조회 1,329
12년 전 조회 4,447
12년 전 조회 2,079
12년 전 조회 7,203
12년 전 조회 1,724
12년 전 조회 1,727
12년 전 조회 1,805
12년 전 조회 1,417
12년 전 조회 3,694
12년 전 조회 2,167
12년 전 조회 2,200
12년 전 조회 1,701
12년 전 조회 3,471
12년 전 조회 2,390
12년 전 조회 1,157
12년 전 조회 4,349
12년 전 조회 1,736
12년 전 조회 1,491
12년 전 조회 1,925
12년 전 조회 6,238
12년 전 조회 1,863
12년 전 조회 3,516
12년 전 조회 2,959
12년 전 조회 1,209
12년 전 조회 3,668
12년 전 조회 2,092
12년 전 조회 1,988
12년 전 조회 2,106
12년 전 조회 4,020
12년 전 조회 2,820
12년 전 조회 4,443
12년 전 조회 9,338
12년 전 조회 4,879
12년 전 조회 4,507
12년 전 조회 2,095
12년 전 조회 2,140
12년 전 조회 3,895
12년 전 조회 4,731
12년 전 조회 5,120
12년 전 조회 2,365
12년 전 조회 2,036
12년 전 조회 1,605
12년 전 조회 1,680
12년 전 조회 3,481
12년 전 조회 3,463
12년 전 조회 1,990
12년 전 조회 3,522
12년 전 조회 2,009
12년 전 조회 9,299
12년 전 조회 2,260
12년 전 조회 4,477
12년 전 조회 7,137
12년 전 조회 2,293
12년 전 조회 3,561
12년 전 조회 1,294
12년 전 조회 1,993
12년 전 조회 1,871
12년 전 조회 2,051
12년 전 조회 4,034
12년 전 조회 1,808
12년 전 조회 2,558
12년 전 조회 1,997
12년 전 조회 1,634
12년 전 조회 2,053
12년 전 조회 2,802
12년 전 조회 2,097
12년 전 조회 1,932
12년 전 조회 2,447
12년 전 조회 1.5만
12년 전 조회 1,713
12년 전 조회 1,488
12년 전 조회 3,345
12년 전 조회 9,572