PreparedStatement와 Statement의 성능 > 기술자료 | 해피정닷컴

PreparedStatement와 Statement의 성능 > 기술자료

본문 바로가기

사이트 내 전체검색

PreparedStatement와 Statement의 성능 > 기술자료

JSP PreparedStatement와 Statement의 성능

페이지 정보


본문

오라클은 내부적으로 라이브러리 캐쉬를 유지합니다.
그리고 이 캐쉬내에는 실행된 SQL문장과 실행계획이 저장되어있습니다.
사용자가 SQL을 실행할때마다 오라클은 이 SQL이 라이브러리 캐쉬에 있는 SQL과
동일한지를 비교하고 만약 같다면 이미 기존에 있는 라이브러리 캐쉬의 실행계획을
가지고 SQL을 수행합니다.
 
이때 SQL문의 비교규칙은 간단합니다.
"모든 문자가 동일한가."
 
이는 대소문자, 라인피드, 탭, 스페이스 모두를 다 따지는것입니다.
 
일반적인 SQL문장에서
select * from emp where empno=1234;
select * from emp where empno=2345;
 
는 다르게 파싱됩니다. 다른문장으로 인식되기 때문이죠.
 
그러나 만약 비교할 값을 bind variable에 넣고
select * from emp where empno=:target_no;
 
이렇게 해주고 target_no를 변경하면서 실행되는 SQL문장은 모두같은것으로 인식됩니다.
 
PreparedStatement란 이처럼 바인드 변수의 사용을 가능케 하기 위해 사용됩니다. 
따라서 동일한 문장(위처럼 값만 바뀐다거나 할때)이 여러번 연속적으로 실행되거나 
비교적연속적(라이브러리 캐쉬에 있는 실행계획이 LRU에 의해 메모리에서 삭제되기 
직전에 다시 실행되기만 한다면)으로 실행된다면 월등한 성능향상을 얻을 수 있습니다.
 
라이브러리 캐쉬 hit ratio 보통 매우 높게(얼핏 기억으로는 hit가 90% 이상이어야
합니다.) 되도록 DB를 튜닝하는게 일반적입니다.
 
결론적으로 드릴 말씀은 "언제나 늘 PreparedStatement를 사용하십시오."라는 것입니다.


자료출처
http://www.okjsp.pe.kr/seq/11057  

댓글목록

등록된 댓글이 없습니다.


Total 30건 1 페이지
  • RSS
기술자료 목록
30
JSP   8619  2018-07-19 18:57 ~ 2017-10-06 00:00  
29
JSP   15785  2018-07-19 18:47 ~ 2018-07-26 19:25  
28
JSP   14057  2017-04-02 18:52  
27
JSP   11809  2017-04-01 17:19  
26
JSP   14528  2017-03-29 07:14  
25
JSP   82455  2017-03-20 06:21 ~ 2017-04-03 00:00  
24
JSP   12420  2017-03-19 22:21  
23
JSP   13121  2017-03-13 10:32  
22
JSP   12892  2017-02-17 23:15  
21
JSP   10691  2017-02-17 22:59  
20
JSP   12244  2017-02-17 21:19  
19
JSP   12774  2017-02-17 21:17  
18
JSP   14253  2017-02-17 21:02  
17
JSP   12645  2017-02-15 19:02  
16
JSP   12863  2017-02-15 12:59  
15
JSP   19262  2012-12-28 23:24 ~ 2017-04-10 00:00  
열람
JSP   18827  2012-10-09 20:13  
13
JSP   15310  2012-10-09 20:08  
12
JSP   14569  2012-09-27 19:01  
11
JSP   13252  2012-09-27 16:58  

검색

해피정닷컴 정보

회사소개 회사연혁 협력사 오시는길 서비스 이용약관 개인정보 처리방침

회사명: 해피정닷컴   대표: 정창용   전화: 070-7600-3500   팩스: 042-670-8272
주소: (34368) 대전시 대덕구 대화로 160 대전산업용재유통단지 1동 222호
개인정보보호책임자: 정창용   사업자번호: 119-05-36414
통신판매업신고: 제2024-대전대덕-0405호 [사업자등록확인]  
Copyright 2001~2024 해피정닷컴. All Rights Reserved.