근근이 과제를 헤쳐나가고 있는 데이터 베이스 관리 초보입니다. ;;;
하루에 2천만건의 데이터가 쌓입니다.
계측 테이블에 대해서는 Insert, Select & Drop Table 가 이루어집니다.
하루 약 1백만건의 데이터 조작이 일어납니다.
마스터 테이블에 대해서는 Insert, Update, Delete 가 이루어집니다.
데이터 베이스가 사용하고 있는 디스크는 약 180G 정도입니다.
autovacuum을 쓸 때는, 아무리 백그라운드로 돈다하지만 서버에 부하가 걸립니다.
게다가, 설정탓인지 작업량이 많을 때 도는 경우가 많이 있습니다.
웹을 통해서 실시간으로 이용하는 사람들이 너무 느리다고... 말이 많아서 그만두었습니다.
그렇다고 않할 수도 없어서, 시일를 정해서 VACUUM 처리하는데, 시간이 너무 오래 걸립니다.
물론 이용자 분들도 불만입니다. ;;;
VACUUM로그를 보면 계측 테이블을 훝는데 시간이 많이 걸리는 것 같더군요.
계측테이블에 대해서는 VACUUM이 처리 된다고 한들 효과가 그다지 없을꺼라 생각됩니다.
물론, 트렌젝션(XID)문제때문에 어쩔수 없이 데이터베이스 단위 VACUUM처리를 하고있습니다.
좋은 해결 방법 없을까요? ㅜ.ㅜ 저로서는 해결 방법이 안보입니다. 이게 정상인가요? ;;;;
운영체제는 리눅스(커널2.6)입니다.
포스트그레버전은 8.2.X 입니다.
포스트그레설정은 maintenance_work_mem 올려봤다가 효과 없어서 기본설정으로 다시 바꾸었고.
vacuum_cost_delay = 1 이고, 이외는 모두 기본 설정 그대로입니다.
서버스펙은 제논CPU X 2개 2GHz 캐쉬4M, 메모리 2G,
하드정보는 잘 모르겠습니다만, 디비가 있는 하드는 500G입니다.
그러고보니 서버 스펙이 좀 낮아보이네요;;; 서버 성능을 더 높여달라고 해야할까요;; ㅜ.ㅜ;;
|