tencent cloud

데이터 동기화 기능 설명
마지막 업데이트 시간:2022-10-19 18:25:37
데이터 동기화 기능 설명
마지막 업데이트 시간: 2022-10-19 18:25:37

기능 개요

데이터 동기화 기능은 두 데이터 원본 간의 데이터 실시간 동기화를 의미하며, 클라우드 온/오프 멀티액티브, 서로 다른 위치의 멀티액티브, 크로스보더 데이터 동기화, 실시간 데이터 웨어하우스 등의 업무 시나리오에 적용할 수 있습니다.
전체 데이터베이스를 마이그레이션하는 일회성 단기 작업인 데이터 마이그레이션과 달리 데이터 동기화는 지속적인 작업입니다. 마이그레이션이 완료되면 새 데이터베이스에 작업을 연결합니다. 작업이 생성된 후 데이터는 원본 데이터베이스와 타깃 데이터베이스 간의 일관성을 유지하기 위해 거의 실시간으로 지속적으로 동기화됩니다.
Tencent Cloud DTS는 자체 구축 데이터베이스, CDB 및 타사 클라우드 벤더 데이터베이스 등의 TencentDB로 동기화를 지원합니다.
온/오프 클라우드 동기화: 예를 들어 로컬 IDC 자체 구축 데이터베이스는 TencentDB 인스턴스로 동기화하고, 역동기화를 지원하여 온/오프 클라우드 양방향 동기화를 구현합니다.
다중 클라우드 벤더 간의 동기화: 타사 클라우드 벤더 데이터베이스를 TencentDB 인스턴스로 동기화하여 이중 클라우드 동기화를 구현합니다.
TencentDB 인스턴스 간의 동기화: 서로 다른 위치의 멀티액티브, 크로스보더 데이터 동기화, 다른 Tencent Cloud 계정에서의 데이터베이스 인스턴스 동기화 등.

구현 원리

다음은 데이터 동기화 기능을 설명하기 위해 MySQL 동기화를 예로 들어 설명합니다. 데이터를 원본 데이터베이스에서 내보내고 타깃 데이터베이스로 가져오는 주요 단계에는 구조 초기화, 전체 데이터 초기화 및 증분 데이터 처리가 포함됩니다.
구조 초기화 구조 초기화는 원본 데이터베이스와 동일한 테이블 구조 정보를 타깃 데이터베이스에 생성하는 것입니다. 동기화 작업을 설정할 때 테이블 구조의 동기화 여부를 선택할 수 있습니다. 타깃 데이터베이스에 이미 동일한 구조 정보가 포함된 경우 데이터를 동기화하기만 하면 됩니다. 그렇지 않으면 정보도 동기화해야 합니다.
전체 데이터 초기화 구조 초기화가 완료된 후 DTS는 기존 데이터를 초기화합니다. 즉, 원본 데이터베이스에서 모든 기존 데이터를 내보내고 타깃 데이터베이스로 가져옵니다.
증분 데이터 처리 증분 데이터 처리는 DTS는 원본 데이터베이스의 Binlog를 통해 지속적으로 증분 데이터를 가져오고 일련의 필터링 및 변환 작업 후에 이러한 데이터를 중간 저장소에 지속적으로 저장합니다. 전체 데이터를 가져온 후 원본 데이터베이스와 타깃 데이터베이스 간의 데이터 일관성을 보장하기 위해 중간 저장소에 저장된 변경된 증분 데이터를 타깃 데이터베이스로 지속적으로 재생합니다.


데이터 충돌 처리

DTS 동기화 작업 중 원본 데이터베이스와 대상 데이터베이스의 데이터가 충돌할 수 있으며, DTS는 동일한 이름의 테이블 충돌 및 기본 키 충돌 점검을 지원합니다.
동명 테이블 충돌
대상 데이터베이스와 원본 데이터베이스에 같은 이름의 테이블이 존재하는 경우, 사용자에게 상기시키기 위해 오류 보고 태스크를 선택할 수 있으며(사전 인증 및 오류 보고),또는 대상 데이터베이스에서 동일한 이름의 테이블에 원본 데이터베이스의 데이터를 추가할 수 있습니다(무시하고 계속).
기본 키 충돌
DTS는 기본 키 충돌 점검을 지원하고 다음과 같은 충돌 처리 메커니즘을 제공합니다. 구체적인 구현 예시는 데이터 동기화 충돌 정책 선택 방법을 참고하십시오.
충돌 오류 보고: 동기화 작업에서 원본 데이터베이스 삽입(INSERT) 기본 키 데이터가 대상 데이터베이스와 충돌하면 작업이 오류를 보고하고 일시 중지되며 사용자는 계속하기 전에 수동으로 처리해야 합니다.
충돌 무시: 동기화 작업에서 원본 데이터베이스의 기본 키 삽입(INSERT) 데이터가 대상 데이터베이스와 충돌을 감지하면 원본 데이터베이스의 기본 키 삽입 데이터는 무시되고 대상 데이터베이스의 콘텐츠가 우선합니다.
충돌 덮어쓰기: 동기화 작업에서 원본 데이터베이스의 기본 키 업데이트(INSERT 및 UPDATE) 데이터가 대상 데이터베이스와 충돌을 감지하면 원본 데이터베이스의 기본 키 데이터를 대상 데이터베이스의 기본 키 데이터로 덮어씁니다.

지원되는 토폴로지

동기화 서비스의 기본 단위는 단방향 동기화입니다. 설정하는 동안 동기화에 DDL(Data Definition Language) 또는 DML(Data Manipulation Language)을 사용하도록 선택할 수 있습니다. 단방향 동기화 작업을 결합하여 다양한 복잡한 토폴로지를 사용자 정의할 수 있습니다. 복잡한 토폴로지에서는 데이터 루프를 피하기 위해 DML 작업에 기술적 조치가 사용됩니다. 그러나 DDL의 경우 데이터 동기화 서비스는 DDL 루프 형성을 방지하기 위해 설정 중에 루프를 확인합니다.
다음은 사용자가 여러 동기화 인스턴스를 구입하여 사용자 정의할 수 있는 몇 가지 일반적인 토폴로지입니다. 복잡한 토폴로지 구축에 대한 자세한 지침은 양방향 동기화 데이터 구조 생성, 다대일 동기화 데이터 구조 생성멀티 사이트 Active-Active IDC 구축을 참고하십시오.
일대일 단방향 동기화

계단식 단방향 동기화

일대다 단방향 동기화

다대일 단방향 동기화

양방향 동기화

계단식 양방향 동기화


일반적인 사용 사례

DTS를 사용하면 여러 리전의 MySQL 데이터베이스 간에 데이터를 동기화하여 다중 사이트 활성-활성 배포를 구현할 수 있습니다. 각 리전의 데이터베이스 인스턴스는 클라우드 또는 자체 구축 IDC에서 실행할 수 있습니다.


제한

단방향 동기화 작업을 결합하여 양방향 동기화를 구현할 수 있지만 다음과 같은 제한 사항이 있습니다.
데이터 일관성 유지를 위해서는 사용자의 비즈니스 협력이 필요하며, 기본 키 충돌이나 상호 커버리지를 피하기 위해 두 노드에서 동일한 기본 키 데이터를 업데이트하지 마십시오. 예를 들어 노드 A는 1, 3, 5의 기본 키 데이터를 업데이트하고 노드 B는 2, 4, 6의 기본 키 데이터를 업데이트합니다.
데이터 동기화 충돌이 발생하면 DTS는 선택한 충돌 처리 정책에 따라 데이터를 엄격하게 처리합니다. 설정하는 동안 해당 정책이 비즈니스 기대치를 충족하는지 확인해야 합니다.
DML문은 양방향 동기화를 지원하지만 DDL 문은 단방향 동기화만 지원합니다. 양방향 동기화를 생성하려면 단방향 인스턴스 중 하나에서 DDL 동기화가 비활성화되어 있는지 확인하십시오.

지원되는 데이터베이스 유형

데이터 동기화에 지원되는 원본 및 타깃 데이터베이스 유형, 버전 및 동기화 유형에 대한 자세한 내용은 데이터 동기화에 지원되는 데이터베이스를 참고하십시오.

지원되는 고급 기능

기능
기능 설명
관련 문서
양방향 동기화, 링 동기화 및 다대일 동기화
복잡한 동기화 토폴로지, 양방향 동기화, 원형 동기화, 다대일 동기화 등을 지원합니다.
교차 계정 동기화 지원
다른 Tencent Cloud 계정 인스턴스 간의 데이터 동기화를 지원합니다.
대부분의 데이터베이스 버전 간 동기화
타깃 데이터베이스 버전은 원본 데이터베이스 버전 이상이어야 합니다. 예를 들어 v5.5.x의 데이터를 v5.5.x, v5.6.x 이상으로 동기화할 수 있습니다. 버전 번호의 마지막 숫자는 제한되지 않는 보조 버전 번호입니다.
-
테이블 충돌 확인
중복 테이블 이름 확인 정책이 제공됩니다.
-
기본 키 충돌 확인
다음 세 가지 기본 키 충돌 처리 정책이 지원됩니다.
보고: 데이터 동기화 중에 테이블의 기본 키 충돌이 발견되면 오류를 보고하고 데이터 동기화 작업을 일시 중지합니다.
무시: 데이터 동기화 중에 기본 키 충돌이 발견되면 타깃 데이터베이스에 기본 키 레코드를 유지합니다.
덮어쓰기: 데이터 동기화 중에 기본 키 충돌이 발견되면 원본 데이터베이스의 기본 키 레코드를 사용하여 타깃 데이터베이스의 기본 키 레코드를 덮어씁니다.
DML 및 DDL 필터링 지원
Insert, Update, Delete를 포함한 동기화 데이터 유형 선택을 지원합니다.
CREATE TABLE, CREATE VIEW, DROP INDEX 등과 같은 구체적인 DDL 작업 선택을 지원합니다.
Where 조건부 필터링 지원
단일 테이블에 대한 필터링 조건을 사용자 정의할 수 있습니다.
동기화된 뷰 및 고급 객체 지원
동기화 뷰, 스토리지 과정, 함수, 트리거 및 이벤트를 지원합니다.
-
작업 진행 시각화
동기화 단계 및 진행률과 같은 정보를 표시할 수 있습니다.
-
지표 모니터링 및 기본 알람 정책
데이터 동기화 메트릭을 모니터링할 수 있습니다.
데이터 동기화 이벤트 모니터링에 대해 기본 설정이 지원되어 예외적인 이벤트를 자동으로 알려줍니다.
데이터베이스 재시작 또는 업그레이드
증분 데이터 동기화 중에 원본 및 타깃 데이터베이스를 다시 시작하거나 업그레이드할 수 있습니다.
-
HA 스위치
GTID가 활성화된 경우 원본 데이터베이스의 HA 스위치가 지원됩니다.
타깃 데이터베이스의 HA 스위치가 지원됩니다.
-
문제 해결에 도움이 되었나요?
더 자세한 내용은 문의하기 또는 티켓 제출 을 통해 문의할 수 있습니다.
아니오

피드백