SQL Server 복제 작업에서 스키마 변경

이 페이지에서는 Microsoft SQL Server 데이터베이스에서 BigQuery 테이블로 데이터를 복제할 때 Cloud Data Fusion에서 스키마를 변경하는 방법을 설명합니다. 스키마 변경 후 복제 작업이 SQL Server 소스에서 데이터를 계속 복제하도록 하려면 다음 단계를 수행합니다.

스키마 변경

  1. 인스턴스로 이동합니다.

    1. Google Cloud 콘솔에서 Cloud Data Fusion 페이지로 이동합니다.

    2. Cloud Data Fusion 웹 인터페이스에서 인스턴스를 열려면 인스턴스를 클릭한 후 인스턴스 보기를 클릭합니다.

      인스턴스로 이동

  2. Cloud Data Fusion 웹 인터페이스에서 복제를 클릭합니다.

  3. 복제 작업을 중지합니다.

  4. null 허용 열 추가와 같이 지원되는 스키마 변경을 소스 테이블에 적용합니다.

  5. 매개변수 @capture_instance에 대한 고유한 값이 있는 sys.sp_cdc_enable_table 프로시져를 사용하여 새 캡처 테이블을 만듭니다.

  6. BigQuery의 대상 테이블에 동일한 스키마 변경을 적용합니다.

  7. 복제 작업을 다시 시작합니다.

  8. 선택사항: 작업을 중지한 후 발생한 새 변경사항을 작업에서 스트리밍하기 시작하면 sys.sp_cdc_disable_table 저장 프로시져를 사용하여 이전 캡처 테이블을 삭제할 수 있습니다. @capture_instance 매개변수를 이전 캡처 인스턴스 이름으로 설정합니다.

소스 테이블에 스키마 변경을 적용하고 (이전 단계에서 수행한 것처럼) 새 캡처 테이블을 만들기 전에 모든 변경사항이 이전 스키마가 포함된 이전 캡처로 캡처됩니다. 열을 추가한 경우 해당 기간 동안의 변경 이벤트에는 새 열의 데이터가 포함되지 않습니다. 애플리케이션이 이러한 전환을 처리할 수 없는 경우 다음 단계를 따르세요.

  1. 데이터베이스 레코드를 생성하는 모든 애플리케이션을 정지합니다.

  2. 복제 작업이 모든 기존 이벤트를 처리했는지 확인합니다.

  3. 복제 작업을 중지합니다.

  4. Null 허용 열 추가와 같은 스키마 변경을 소스 테이블에 적용합니다.

  5. 매개변수 @capture_instance에 대한 고유한 값이 있는 sys.sp_cdc_enable_table 프로시져를 사용하여 새 캡처 테이블을 만듭니다.

  6. 첫 번째 단계에서 정지한 애플리케이션을 재개합니다.

  7. BigQuery의 대상 테이블에 동일한 스키마 변경을 적용합니다.

  8. 복제 작업을 다시 시작합니다.

  9. 선택사항: 이전 단계에서 새 캡처 테이블을 만든 후 발생한 새 변경사항을 작업에서 스트리밍하기 시작하면 sys.sp_cdc_disable_table 저장 프로시져를 사용하여 이전 캡처 테이블을 삭제할 수 있습니다. @capture_instance 매개변수를 이전 캡처 인스턴스 이름으로 설정합니다.

다음 단계