database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 38541 게시물 읽기
No. 38541
트리거 3초에 200-300회 작동시 DB 과부하가 일어날까요?
작성자
이민수(yms0405)
작성일
2011-05-06 11:45
조회수
5,229

현재 구성안을 그리고 있는데

하나의 장비A에서 3초에 한번씩 히스토리 테이블에 에 값을 삽입 합니다.

히스토리 테이블에 insert 발생시 장비A의 상태값을  

현재장비상태 라는테이블에서 장비A의 값을 update 하는 트리거 를 작성 하려고 합니다

최대 장비 갯수는 300쯤 된다면 3-4초에  300번의 트리거 작동시 DB 서버에 과부하가 걸리지 않을까요?

과부하가 걸린다면 혹여 다른방법이 있을까요?

이 글에 대한 댓글이 총 2건 있습니다.

 서버 스펙에 따라 틀리겠죠.

 

300개의 장비에서 동시에 3초에 한번씩 INSERT 하고 INSERT 대상 테이블에는 트리거가 걸려있음.

 

예상 가능한 부하는...

 

동시에 여러 세션에서 하나의 테이블에 DML 작업이 벌어지므로 대상 테이블을 HASH Partition하는 것이 부하 분산에 좋을 것 같습니다. 관리까지 염두에 둔다면 RANGE+HASH로 하는 것도 괜찮겠죠.

 

또 하나 대량의 DML 발생에 따라 다량의 Redo 발생, lgwr 에 병목이 생길 확률이 큽니다.

그리고 그 정도 TR이면 log file sync 대기가 높게 나올 수 있습니다.

따라서 redo, arch log는 RAID5 처럼 쓰기 성능이 느린 곳에 두지 말고 다른 I/O와 겹치지 않도록 가장 빠른 저장장치를 사용하시기 바랍니다.

(만약 instance crash시 약간의 데이터 유실을 감내할 수 있다면 10g R2부터 추가된 async commit, batch commit 기능을 사용해보시기 바랍니다. 다만 갑자기 DB가 죽을 경우 이미 commit된 TR 일부가 손실될 수 있습니다.)

 

김주현님이 2011-05-15 12:26에 작성한 댓글입니다. Edit

 

async commit은 아래 링크를 참고 바랍니다.

파라미터 레벨 설정보다는 새로 추가된 commit write nowait batch 구문을 사용하시기 바랍니다.

주의 사항은 위에 적었다시피 이미 Commit된 데이터라도 DB가 갑자기 죽을 경우 일부 유실될 수 있다는겁니다.

실재로 제가 테스트 해본 결과 commit한 TR이 Redo log에 async하게 Write되므로 최근 일부가 유실되는 것을 관측하였습니다.  약간의 데이터 유실은 감내할 수 있다거나 수작업 복구가 가능하다면 사용해보시기 바랍니다. log file sync에 대한 대기를 획기적으로 줄일 수 있습니다.

http://www.orafaq.com/node/93

김주현님이 2011-05-15 12:32에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
38544분할 배분 하는 쿼리 질문입니다. [3]
무심도
2011-05-06
5294
38543속도때문에 union을 빼고 싶은데 잘안되네요... 방법이 없을까요? [3]
이재호
2011-05-06
4673
38542파티션 테이블 TRUNCATE 후 INSERT시 에러 [3]
김진국
2011-05-06
5940
38541트리거 3초에 200-300회 작동시 DB 과부하가 일어날까요? [2]
이민수
2011-05-06
5229
38540문자열이 포함되어 있는 컬럼에 데이터형 셀렉트 질문입니다... [3]
박경배
2011-05-06
3993
38539토드 같은 디비툴에서 다중 디비 접속 재질문...db link 말고는 방법이 없는지요? [1]
아이니
2011-05-04
3644
38538ALETER TABLE .. PARTITION TRUNCATE 명령 실행시 권한문제 [3]
오완규
2011-05-03
11835
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.019초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다