X라는 과금 프로시져가 있습니다.
X는 B(할인이력),C(포인트잔액),D(포인트사용),E(최종과금) 테이블에 대하여 DML작업을 합니다.
E에는 insert만 하며 현재 약 8억건 정도가 있습니다.
B에도 insert만 하며 현재 약 3.5억건 정도가 있습니다.
C에는 update만 하며 230만건 정도가 있습니다.
D에는 insert만 하며 약 3억건 정도가 있습니다.
최초에 dataset은 한번에 select를 하며 각 dml은 어쩔 수 없이 한건씩 진행하는 프로시져 입니다.
모든 테이블에는 월별로 파티셔닝이 되어 있으며 메인인 E테이블에는 현재 하루 135만건씩 insert되고 있습니다.
조금씩 느려지는 것은 이해할 수 있습니다만 현상이 아주 신기합니다.
아래와 같이 시간이 지날수록 속도가 엄청 떨어집니다..24시간 후에는 최초의10~15%정도밖에 성능 발휘를 못 합니다.
처음에는 index등의 문제라 생각하여 이런 저런 튜닝을 했고, 어느정도 효과를 봤습니다.
그런데 느려지는 현상이 다음날 실행하면 또 동일하게 처음 한시간에는 15만~20만건 정도를 insert하다가 시간이 지날수록 insert성능이 엄청 떨어집니다.
extent 확장등의 문제라고 하기에는 다음날 실행이 빨라 지는 것을 설명할 수가 없을 것 같습니다.
어떤 설정등의 문제일 것 같은데 혹시 비슷한 경험을 하시거나 확인해봐야 할 사항이 있을까요?
운영서버이다보니 함부로 건들지는 못합니다.ㅜ.ㅜ
@마농님, 이런것도 해결해주시나요? ㅎㅎ
일자 |
입력시간 |
건수 |
20180131 |
2018013100 |
192503 |
20180131 |
2018013101 |
175125 |
20180131 |
2018013102 |
128761 |
20180131 |
2018013103 |
96069 |
20180131 |
2018013104 |
75074 |
20180131 |
2018013105 |
58415 |
20180131 |
2018013106 |
49621 |
20180131 |
2018013107 |
45337 |
20180131 |
2018013108 |
40863 |
20180131 |
2018013109 |
38813 |
20180131 |
2018013110 |
36984 |
20180131 |
2018013111 |
33351 |
20180131 |
2018013112 |
31876 |
20180131 |
2018013113 |
31287 |
20180131 |
2018013114 |
29557 |
20180131 |
2018013115 |
28433 |
20180131 |
2018013116 |
27431 |
20180131 |
2018013117 |
25959 |
20180131 |
2018013118 |
25376 |
20180131 |
2018013119 |
24468 |
20180131 |
2018013120 |
24012 |
20180131 |
2018013121 |
23646 |
20180131 |
2018013122 |
22203 |
20180131 |
2018013123 |
23126 |
20180131 |
2018020100 |
21729 |
20180131 |
2018020101 |
21241 |
20180131 |
2018020102 |
20836 |
20180131 |
2018020103 |
12935 |
|