다음을 통해 공유


복제 유형

적용 대상: SQL Server Azure SQL 데이터베이스 Azure SQL Managed Instance

Microsoft SQL Server는 다음과 같이 분산 애플리케이션에서 사용할 수 있는 다양한 유형의 복제를 제공합니다.

Type 설명
트랜잭션 복제 게시자의 변경 사항은 거의 실시간으로 구독자에게 전달됩니다. 데이터 변경 내용은 게시자에서 발생한 것과 동일한 순서 및 동일한 트랜잭션 경계 내에서 구독자에 적용됩니다.
병합 복제 게시자와 구독자 모두에서 데이터를 변경할 수 있으며 트리거를 사용 하여 추적할 수 있습니다. 구독자는 네트워크에 연결될 때 게시자와 동기화하여 마지막 동기화 이후 게시자와 구독자 간에 변경된 모든 행을 교환합니다.
스냅샷 복제 게시자에서 구독자에게 스냅샷을 적용하며 특정 시간에 나타나는 그대로 데이터를 배포하고 데이터 업데이트를 모니터링하지 않습니다. 동기화가 발생하면 전체 스냅샷이 생성되어 구독자에게 전송됩니다.
피어 투 피어 트랜잭션 복제를 기반으로 구축된 피어 투 피어 복제는 여러 서버 인스턴스 간에 거의 실시간으로 트랜잭션 일치 변경 내용을 전파합니다.
양방향 양방향 트랜잭션 복제는 두 개의 서버가 서로 변경 내용을 교환할 수 있는 특수 트랜잭션 복제 토폴로지입니다. 각 서버는 데이터를 게시한 다음 상대 서버에서 게시한 것과 동일한 데이터가 포함된 게시를 구독합니다.
업데이트 가능 구독 업데이트 가능 구독에 대한 구독자에서 데이터가 업데이트될 때 트랜잭션 복제의 기초를 기반으로 구축된 데이터는 먼저 게시자에 전파된 다음 다른 구독자에게 전파됩니다.

애플리케이션에 대해 선택하는 복제 유형은 실제 복제 환경, 복제할 데이터의 형식 및 수량, 구독자에서 데이터가 업데이트되는지 여부 등 다양한 요인에 따라 달라집니다. 물리적 환경에는 복제와 관련된 컴퓨터 수 및 위치와 이러한 컴퓨터가 클라이언트(워크스테이션, 랩톱 또는 핸드헬드 디바이스)인지 또는 서버인지 여부가 포함됩니다.

각 복제 유형은 일반적으로 게시자와 구독자 간에 게시된 개체의 초기 동기화로 시작됩니다. 이러한 초기 동기화는 게시에 의해 지정된 모든 개체 및 데이터의 복사본인 스냅샷이 있는 복제로 수행할 수 있습니다. 스냅샷이 만들어지면 구독자에게 전달됩니다. 일부 애플리케이션의 경우 스냅샷 복제가 모두 필요합니다. 다른 유형의 애플리케이션의 경우 후속 데이터 변경 내용이 시간이 지남에 따라 구독자에게 증분 방식으로 이동하는 것이 중요합니다. 일부 애플리케이션에서는 변경 내용이 구독자에서 게시자로 다시 전달되어야 합니다. 트랜잭션 복제 및 병합 복제는 이러한 유형의 애플리케이션에 대한 옵션을 제공합니다.