다음을 통해 공유


변경 데이터 캡처와 변경 내용 추적 비교

SQL Server 2008에서는 데이터베이스의 사용자 테이블에 적용된 DML 변경(삽입, 업데이트 및 삭제 작업)을 응용 프로그램에서 확인할 수 있는 두 개의 추적 기능을 제공합니다. 이러한 기능을 사용하려면 응용 프로그램에 사용자 지정 추적 메커니즘이 구현되어야 합니다. 이러한 사용자 지정 메커니즘의 경우 추적된 테이블의 스키마를 변경하거나 트리거를 사용해야 하는 경우가 있습니다. 변경 데이터 캡처 또는 변경 추적 모두 원본의 스키마를 변경하거나 트리거를 사용할 필요가 없습니다.

변경 데이터 캡처

변경 데이터 캡처는 DML 변경이 적용되었다는 사실과 변경된 실제 데이터 모두를 캡처하여 사용자 테이블에 대한 기록 변경 정보를 제공합니다. 트랜잭션 로그를 읽고 시스템에 대한 영향이 적은 비동기 프로세스를 사용하여 변경을 캡처합니다.

다음 그림과 같이 사용자 테이블에 적용된 변경은 해당 변경 테이블에서 캡처됩니다. 이러한 변경 테이블은 시간에 따라 변경을 기록하여 보여 줍니다. SQL Server에서 제공하는 변경 데이터 캡처 함수를 사용하면 변경 데이터를 쉽고 체계적으로 사용할 수 있습니다.

변경 데이터 캡처에 대한 개념 설명

변경 내용 추적

변경 내용 추적은 테이블 행을 변경했다는 사실을 캡처하지만 변경된 데이터를 캡처하지는 않습니다. 따라서 사용자 테이블에서 직접 가져온 최신 행 데이터를 사용하여 변경한 행을 응용 프로그램이 확인할 수 있습니다. 그러므로 변경 내용 추적은 시간에 따른 변경 기록을 표시하는 데 있어서는 변경 데이터 캡처와 비교해 볼 때 보다 제한적입니다. 그러나 기록 정보가 필요 없는 응용 프로그램의 경우 변경된 데이터를 캡처하지 않아 저장소 오버헤드가 훨씬 적습니다. 동기 추적 메커니즘을 사용하여 변경 내용을 추적합니다. 이 메커니즘은 DML 작업에 대한 오버헤드를 최소 수준으로 유지하도록 디자인되었습니다.

다음 그림에서는 변경 내용 추적을 사용하는 것이 좋은 동기화 시나리오를 보여 줍니다. 이 시나리오에서는 응용 프로그램에 마지막으로 테이블이 동기화된 이후 변경된 테이블의 모든 행 및 현재 행 데이터만 포함하는 정보가 필요합니다. 동기화 메커니즘을 사용하여 변경 내용을 추적하기 때문에 응용 프로그램에서는 양방향 동기화를 수행하고 발생할 수 있는 모든 충돌을 안정적으로 검색할 수 있습니다.

변경 내용 추적에 대한 개념 설명

변경 데이터 캡처와 변경 내용 추적 간의 기능 차이점

다음 목록에서는 변경 데이터 캡처와 변경 내용 추적 간의 기능 차이점을 보여 줍니다. 변경 데이터 캡처의 추적 메커니즘에는 트랜잭션 로그의 비동기 변경 캡처가 포함되어 있으므로 DML 작업 이후에 변경을 사용할 수 있습니다. 변경 내용 추적의 추적 메커니즘에는 DML 작업과 함께 동기 변경 내용 추적이 포함되어 있으므로 변경 정보를 즉시 사용할 수 있습니다.

기능

변경 데이터 캡처

변경 내용 추적

추적된 변경 내용

 

 

DML 변경

추적된 정보

 

 

기록 데이터

아니요

열 변경 여부

DML 유형

참고 항목

개념

관련 자료