이 글은 AWS Database Blog에 게시된 Data consistency with AWS DMS data resync by Suchindranath Hegde, Mahesh Kansara, Sridhar Ramasubramanian을 한국어 번역 및 편집하였습니다. 이 글에서는 AWS Database Migration Service의 데이터 재동기화(Data Resync) 기능에 대해 자세히 살펴보겠습니다. 이 기능은 DMS 3.6.1버전에 도입되어 데이터베이스 마이그레이션 도중 데이터 불일치를 감지하고 해결함으로써 수동 개입을 없애 줍니다. 데이터 재동기화(Data Resync)를 […] ||
이 글은 AWS Database Blog에 게시된 Data consistency with AWS DMS data resync by Suchindranath Hegde, Mahesh Kansara, Sridhar Ramasubramanian을 한국어 번역 및 편집하였습니다.
이 글에서는 AWS Database Migration Service의 데이터 재동기화(Data Resync) 기능에 대해 자세히 살펴보겠습니다. 이 기능은 DMS 3.6.1버전에 도입되어 데이터베이스 마이그레이션 도중 데이터 불일치를 감지하고 해결함으로써 수동 개입을 없애 줍니다. 데이터 재동기화(Data Resync)를 사용하면 소스 데이터베이스와 타겟 데이터베이스 간의 데이터 검증(Validation)을 통해 확인된 모든 데이터 불일치를 식별하고 해결할 수 있습니다. 데이터 재동기화 기능을 활성화하는 단계와 데이터 불일치를 식별하는 방법의 예를 살펴보겠습니다. 데이터 재동기화 기능이 도입되기 전까지는 데이터 불일치가 발생하면 전체로드(Full load)나 변경 데이터 캡처(CDC) 작업 시 테이블 Reload를 실행하거나 타겟의 레코드를 수동으로 수정하는 등 사용자 수동 개입이 필요했습니다. 데이터 재동기화의 지원은 DMS에서 소스가 Oracle 이나 SQL Server 그리고 타겟은 PostgreSQL 또는 Amazon Aurora PostgreSQL 호환 버전(Amazon Aurora PostgreSQL-Compatible Edition)에서 지원되며 마이그레이션되는 모든 리전에서 사용할 수 있습니다.
DMS 데이터 재동기화(Data Resync) 설정
데이터 재동기화는 DMS 데이터 검증(Validation) 기능을 통해 식별된 불일치 데이터를 읽어 소스에서 현재 값을 검색하여 타겟에 적용하여 타겟의 레코드를 동기화하는 방식으로 작동합니다. 전체 로드 전용(Full-load only)의 경우 재동기화(Resync)가 활성화되면 모든 테이블의 검증(Validation)이 완료된 직후 실행됩니다. CDC가 포함된 Task의 경우 Task 설정을 통해 재동기화를 예약해야 하며, 이 시점에서 쓰기 작업 충돌을 최소화하기 위해 Task는 CDC 및 검증(Validation)을 일시 중지합니다. 모범 사례에서 권장하는 대로 소스 데이터베이스 워크로드가 최소인 기간에 대해 짧은 시간 동안 재동기화 스케쥴을 예약하는 것이 좋습니다. 이렇게 하면 CDC 일시 중지로 인해 발생되는 지연 시간 급증을 최소화할 수 있습니다. 데이터 재동기화를 구성하려면 Task를 생성하거나 수정하는 동안 활성화해야 합니다. 다음 스크린샷과 같이 AWS DMS 콘솔의 데이터 재동기화(Data Resync) 에서 재동기화 예약(Schedule Resync)을 선택합니다.
재동기화(Resync) 일정은 Cron 표현식을 사용하여 데이터 재동기화(Resync) 실행 일정을 예약합니다:
* * * * *
| | | | |
| | | | |
| | | | +---- Day of Week (0-6)
| | | +------ Month (1-12)
| | +-------- Day of Month (1-31)
| +---------- Hour (0-23)
+------------ Minute (0-59)
다음 설정은 토요일 자정에 데이터 재동기화(Re