트랜잭션 동시성 및 격리

ANSI/ISO SQL 표준에서는 커미트되지 않은 데이터도 읽기(UR), 커미트된 읽기(CR), 반복 가능한 읽기(RR) 및 직렬화 가능이라는 네 가지 레벨의 트랜잭션 격리를 정의합니다. ' Netezza Performance Server '을 ' Cloud Pak for Data'로 ' 및 ' Netezza Performance Server '을 ' Cloud Pak for Data System'로 ' ' 시스템은 직렬화 가능한 트랜잭션 격리를 구현하여 최고 수준의 일관성을 제공합니다.

동시 트랜잭션에서 이 격리 레벨은 다음을 예방합니다.
  • 트랜잭션이 동시 커미트되지 않은 트랜잭션에 의해 쓰여진 데이터를 읽는 더티 읽기(DR)
  • 트랜잭션이 이전에 읽은 데이터를 다시 읽고 다른 트랜잭션에 의해 데이터가 수정되었음을 발견하는 비반복 가능한 읽기
  • 트랜잭션이 검색 조건을 만족하는 행 세트를 리턴하는 쿼리를 다시 실행하고 최근에 커미트된 다른 트랜잭션으로 인해 행 세트가 변경되었음을 발견하는 팬텀 읽기
Netezza Performance Server 시스템은 동시에 실행 중인 트랜잭션 간에 일관성을 유지하기 위해 기존의 잠금을 사용하지 않고, 대신 다중 버전 및 직렬화 종속성 검사를 조합하여 사용합니다.
  • 각 트랜잭션은 멀티 버전화를 사용하여 커미트되지 않은 다른 트랜잭션으로부터 격리된 일관성 있는 상태를 확인합니다. Netezza Performance Server 하드웨어는 시스템이 각 트랜잭션에 올바른 보기를 신속하게 제공할 수 있도록 보장합니다.
  • 직렬화 종속성 검사를 사용하면 비직렬화 가능한 실행이 예방됩니다. 2개의 동시 트랜잭션이 동일한 데이터를 수정하려고 시도하는 경우 시스템은 가장 최근의 트랜잭션을 자동으로 롤백합니다. 이 방식은 데이터 웨어하우스와 같은 저충돌 환경에 적합한 동시처리 제어입니다.