SQLP › 🤖 [예시문제] (2026-08-15)

4. [예시문제] OLTP(온라인 트랜잭션 처리) 환경에서 특정 테이블의 대량 UPDATE 작업 시, Deadlock 발생 가능성을 줄이고 성능을 향상시키기 위한 가장 적절한 조치로 거리가 먼 것은?

  1. UPDATE 범위를 작게 나누어 여러 트랜잭션으로 분리 실행한다.
  2. INDEX를 적절히 활용하여 UPDATE 대상 레코드 탐색 시간을 줄인다.
  3. 트랜잭션 내부에서 UPDATE 구문 앞에 LOCK TABLE 문을 사용하여 테이블 전체를 잠근다.
  4. 불필요한 트리거나 제약 조건을 비활성화하여 오버헤드를 줄인다.

정답: 3번

대량 UPDATE 시 LOCK TABLE을 사용하여 테이블 전체를 잠그는 것은 오히려 동시성을 저해하고 다른 트랜잭션의 대기를 유발하여 Deadlock 발생 가능성을 높이거나 시스템 전반의 성능을 저하시킬 수 있습니다. Deadlock을 줄이고 성능을 향상시키려면 갱신 범위를 작게 나누거나, 인덱스를 활용하여 잠금 시간을 최소화하고, 불필요한 트리거/제약 조건을 비활성화하는 것이 좋습니다.