반응형

mybatis 사용중에 5000건 정도를 조회해서 화면에 표현해야하는 업무가 있었습니다.


툴에서 조회시에는 0.5 초 정도 걸리는데 웹상에서 jdbc를 통해 조회를하면 10초를 넘기는 상황이 발생했습니다.


구글링을 통해 찾아보니 mybatis에 fetchSize라는 옵션이 있더군요. 아래 처럼 추가했더니 0.5 초 이하로 속도가 나옵니다. @.@


1
<select id="selectListByDate" resultMap="logRM" fetchSize="1000">



fetchSize 어떻게 작동하길래 이렇게 속도가 빨라지나 찾아보았습니다.


설정하지 않으면 기본 값은 10 이라고 합니다.


fetchSize 가 10 이면 5000건을 조회하면 실제 db에서 500번을 조회하게 되는 겁니다.


fetchSize 가 1000 이면 5번이면 되는 겁니다.


이해하기 쉽게 예를 들면 같은 결과 값을 조회하는데 쿼리를 500번 날려서 받는 것과 5번만 날려서 받는 것 중에 어떤게 빠를까요?

반응형

+ Recent posts