2010-02-24 5 views
3

테이블에 많은 업데이트 (> 100,000)를 수행하는 프로세스를 실행하고 있습니다. 모든 업데이트를 단일 트랜잭션에 넣거나 1,000 분마다 트랜잭션을 커밋하는 것 중에서 선택할 수 있습니다.Postgres의 최적 트랜잭션 크기는 무엇입니까?

트랜잭션이 실패하고 중단되는 순간을 무시하십시오. 메모리 및 속도 효율성을위한 최적의 트랜잭션 크기에 관심이 있습니다.

답변

2

트랜잭션의 경우를 무시하면 일괄 처리로 분할 할 때 메모리가 적게 사용됩니다.

전체 업데이트를 수행하는 데 걸리는 총 시간에는 약간의 오버 헤드가 추가 될 수 있지만 동시에 실행되는 다른 작업에는 전반적인 압박감이 줄어들 수 있습니다.

+0

비과학적인 테스트에서 쿼리를 1 또는 2 킬로바이트로 간주하는 배치로 분할하면 합리적인 성능을 제공하는 것으로 보입니다. – Joe

관련 문제