데이터베이스 개발자 질문과 답변 게시판

데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.

안녕하세요. 항상 궁금한 점을 해결하는데 도움주셔서 미리 감사드립니다.


다름이 아니라, 

같은 프로시져로 같은 파리미터 값을 주었을때 QA과 운영서버의 차이가 너무 납니다.


OS: 2012 R2

DB : 2014 ( SP2 )


QA서버는 SAN으로 되어 있고, 운영서버는 SSD 입니다.

QA서버에서 첫번째 수행할때 42초 걸리고 두번째부터 0.4초 .. 0.8초걸리며

운영서버에서는 첫번째 수행때 1.4초 걸리며 그 뒤로는 0.3초..세번재는 0.3초 걸리네요..






맨 처음 수행한 프로시져를 다시 수행할때는 모두 빠르구요..

어떤 테이블의 데이터를 읽어올때... 디스크에서 읽냐... 메모리에서 읽냐의 차이를 보았습니다.


물론 첫번째 생기는 파라미터 값에 의하여 bad plan으로 인한 플랜이 잘못되서 인지 알았는데...

플랜이 같은 것을 확인하고는...  데이터캐싱을 의심하게 되었습니다.





테이블 'Worktable'. 검색 수 3, 논리적 읽기 수 3235, 물리적 읽기 수 0, 미리 읽기 수 18, LOB 논리적 읽기 수 0, LOB 물리적 읽기 수 0, LOB 미리 읽기 수 0.

테이블 'A'. 검색 수 1557, 논리적 읽기 수 12570, 물리적 읽기 수 165, 미리 읽기 수 0, LOB 논리적 읽기 수 0, LOB 물리적 읽기 수 0, LOB 미리 읽기 수 0.

테이블 'B'. 검색 수 0, 논리적 읽기 수 7785, 물리적 읽기 수 1959, 미리 읽기 수 0, LOB 논리적 읽기 수 0, LOB 물리적 읽기 수 0, LOB 미리 읽기 수 0.

테이블 'C'. 검색 수 1, 논리적 읽기 수 159140, 물리적 읽기 수 0, 미리 읽기 수 0, LOB 논리적 읽기 수 0, LOB 물리적 읽기 수 0, LOB 미리 읽기 수 0.



테이블 'Worktable'. 검색 수 3, 논리적 읽기 수 3192, 물리적 읽기 수 0, 미리 읽기 수 0, LOB 논리적 읽기 수 0, LOB 물리적 읽기 수 0, LOB 미리 읽기 수 0.

테이블 'A'. 검색 수 1534, 논리적 읽기 수 12801, 물리적 읽기 수 0, 미리 읽기 수 0, LOB 논리적 읽기 수 0, LOB 물리적 읽기 수 0, LOB 미리 읽기 수 0.

테이블 'B'. 검색 수 0, 논리적 읽기 수 7774, 물리적 읽기 수 0, 미리 읽기 수 0, LOB 논리적 읽기 수 0, LOB 물리적 읽기 수 0, LOB 미리 읽기 수 0.

테이블 'C'. 검색 수 2, 논리적 읽기 수 28767, 물리적 읽기 수 1, 미리 읽기 수 20453, LOB 논리적 읽기 수 0, LOB 물리적 읽기 수 0, LOB 미리 읽기 수 0.

테이블 'Workfile'. 검색 수 0, 논리적 읽기 수 0, 물리적 읽기 수 0, 미리 읽기 수 0, LOB 논리적 읽기 수 0, LOB 물리적 읽기 수 0, LOB 미리 읽기 수 0.


---> SAN환경에서 첫번째 실행시 위에 있는게 물리적 읽기수가 있어 오래 걸린거 같은데요.
    아래껀.. SSD이라 물리적 읽기 수보다 미리 읽기 수가 좀 있네요.. 이건.. 이미 테이블이 데이터가 모두 메모리로 올라가 있다는 뜻인가요?  제가 생각하고 있는게 맛는지요?  .. 그리고 마지막에 SSD에서는 Workfile이 생겼네요? 이것의 영향일수 있나요?

혹시 현재 테이블들의 데이터들이 메모리에 올라가 있다는 것을 확인하는 방법이나 쿼리가 있는지요?
프로시져 테스트할때 수행시간이 QA와 운영서버 차이가 나서..

혹시 비교 할수 있는 방법이나. 아니면 제가 다른것을 체크 못한게 있는지요? 검토하는데 너무 이상해서요...

문의드려 봅니다.



프로시져 첫번째 수행
  1번쿼리 수행 (처음) 1번쿼리 수행 (2회) 1번쿼리 수행 (3회)
QA서버 42486 462 482
운영서버 1492 323 319
다른프로시져 수행
  2번쿼리 수행 (처음) 2번쿼리 수행 (2회) 2번쿼리 수행 (3회)
QA서버 44671 458 464
운영서버 361 316 315
제일처음 프로시져 다시 수행
  1번쿼리 수행 (처음) 1번쿼리 수행 (2회) 1번쿼리 수행 (3회)
QA서버 453 506 476
운영서버 315 316 315
No. Subject Author Date Views
» 데이터 캐싱에 대하여 ( 일반 SAN과 SSD차이가 이렇게 나는지요? [1] 공유맨 2018.05.23 787
10221 날짜별 합계인데 시간이 다른건 어떻게 해야 하나요.... [1] 똘스또이 2018.05.23 1247
10220 쿼리 문의드립니다! [2] szl0828 2018.05.21 871
10219 쿼리 질문입니다. [1] 얼음왕자 2018.05.21 762
10218 쿼리 문의 드립니다. [2] l1j2e3 2018.05.18 852
10217 특정 시간에 실행된 프로시저 내역 조회 방법이 궁급합니다. [1] vitill 2018.05.16 924
10216 중복된 값 select시 한행만 표시여부 [4] 노란하늘 2018.05.16 1181
10215 (Microsoft SQL Server, 오류: 950) 오류해결방법에 대한 문의입니다. [1] 목동의별 2018.05.16 1900
10214 쿼리 혹은 프로시저 작성 [2] 얼음왕자 2018.05.15 958
10213 row_number 질문입니다. [1] 데이지 2018.05.15 1004
10212 쿼리 질문드립니다. [1] 레저본능 2018.05.12 840
10211 mssql 2005 -> 2016 마이그레이션 fksngoqe 2018.05.09 1494
10210 백업/복구 했을 때 테이블 디자인 질문드립니다. [1] 베로 2018.05.08 824
10209 SQL Server 통신 암호화 [1] aamadeus 2018.05.08 1936
10208 쿼리 질문을 드립니다. [2] 머루달래 2018.05.03 1092
10207 쿼리 질문드립니다. [2] 파워유저 2018.05.03 1197
10206 순번 레코드 중 첫번째 NULL 이 아닌 값을 구하는 문제 [2] 으라타 2018.05.01 990
10205 다시 질문 올립니다 [4] sxcz00 2018.05.01 1343
10204 간단한 초보 SQL 질문입니다 DkMino 2018.05.01 1220
10203 데이터베이스 미러링 및 failover 구성 질문 Gusto 2018.04.30 844





XE Login