데이터베이스 개발자 질문과 답변 게시판
데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.
안녕하세요^^
항상 많은 도움 받아가고 있습니다.
프로파일러로 시간에 대해서 추적을 하고 있습니다.
(시간, 프로시져, cpu, write, read)
여러 프로시저들이 간헐적으로 수행시간이 많이 길게 나오는데요.. 한 2초~ 최대 4초?
제일 많은 데이터가 들어있는 테이블이 100만개 정도구요.
테이블별 데이터가 대체적으로 10만개에서 20만개 정도 됩니다.
인덱스는 다들 설정이 되어있는 상태이구요.
가끔 간헐적으로 튀는 프로시져의 추적 상태를 보면
duringtime 4124, cpu 0, read 20, write 3
1초도 안걸려야되는 수행시간이 4초가 넘게 나올때가 있습니다.
정확하게 무엇때문에 기다리는건지? 혹은 무엇때문에 시간이 오래걸린건지 조사를 해야되는데
어떤것들을 확인을 해야되는지 감이 잘 안옵니다..
전체 테이블들의 삭제와 생성이 빈번히 일어납니다.
테이블의 데이터 입력시 항상 id값이 자동으로 발급되는 형태구요.
1. 이런경우 어떤식으로 조사를 하구 추적을 해야되는지
2. 삭제와 관련해서도 궁금한게 실시간으로 데이터를 삭제하는것 과
삭제될 데이터에 체크만 해놓고(테이블에 업데이트를 하겟죠.) 점검때나 스케쥴로러로 일괄적으로 삭제를 하는것
두개중 어떤게 더 나은 방법인지도 궁금합니다.
조언좀 부탁드립니다.
감사합니다^^