변경 데이터 캡처 리소스를 사용하여 Azure SQL Database에서 델타 싱크로의 스키마 발전을 통해 변경된 데이터를 캡처합니다.
적용 대상: Azure Data Factory Azure Synapse Analytics
팁
기업용 올인원 분석 솔루션인 Microsoft Fabric의 Data Factory를 사용해 보세요. Microsoft Fabric은 데이터 이동부터 데이터 과학, 실시간 분석, 비즈니스 인텔리전스 및 보고에 이르기까지 모든 것을 다룹니다. 무료로 새 평가판을 시작하는 방법을 알아봅니다!
이 문서에서는 Azure Data Factory 사용자 인터페이스를 사용하여 CDC(변경 데이터 캡처) 리소스를 만듭니다. 리소스는 Azure SQL Database 원본에서 변경된 데이터를 선택하여 Azure Data Lake Storage Gen2에 저장된 Delta Lake에 실시간으로 추가합니다. 이 작업에서는 원본과 싱크 사이에 CDC 리소스를 사용하여 스키마 발전을 지원하는 방법을 보여 줍니다.
이 문서에서는 다음 방법을 설명합니다.
- CDC 리소스를 만듭니다.
- 원본 테이블에 동적 스키마를 변경합니다.
- 대상 델타 싱크에서 스키마 변경 내용의 유효성을 검사합니다.
이 문서에서는 구성 패턴을 수정하고 확장할 수 있습니다.
필수 조건
이 문서의 절차를 시작하기 전에 다음 리소스가 있는지 확인합니다.
- Azure 구독. Azure 구독이 없는 경우 Azure 체험 계정을 만듭니다.
- SQL 데이터베이스. Azure SQL Database를 원본 데이터 저장소로 사용합니다. SQL 데이터베이스가 없으면 Azure Portal에서 만듭니다.
- 스토리지 계정. Azure Data Lake Storage Gen2에 저장된 Delta Lake를 대상 데이터 스토리지로 사용합니다. 스토리지 계정이 없는 경우 계정을 만드는 단계는 스토리지 계정 만들기를 참조하세요.
CDC 아티팩트 만들기
데이터 팩터리의 작성자 창으로 이동합니다. 파이프라인 아래에 변경 데이터 캡처(미리 보기)라는 새로운 최상위 아티팩트가 나타납니다.
세 개의 점이 나타날 때까지 변경 데이터 캡처(미리 보기) 위로 마우스를 가져갑니다. 그런 다음 변경 데이터 캡처(미리 보기) 작업을 선택합니다.
새 CDC(미리 보기)를 선택합니다. 이 단계에서는 단계별 프로세스를 시작하기 위한 플라이아웃이 열립니다.
CDC 리소스의 이름을 지정하라는 메시지가 표시됩니다. 기본적으로 이름은 "adfcdc"이며 숫자는 1씩 증가합니다. 이 기본 이름을 선택한 이름으로 바꿀 수 있습니다.
드롭다운 목록을 사용하여 데이터 원본을 선택합니다. 이 문서에서는 Azure SQL Database를 선택합니다.
연결된 서비스를 선택하라는 메시지가 표시됩니다. 새 연결된 서비스를 만들거나 기존 서비스를 선택합니다.
연결된 서비스를 선택하면 원본 테이블을 선택하라는 메시지가 표시됩니다. 확인란을 사용하여 원본 테이블을 선택한 다음 드롭다운 목록을 사용하여 증분 열 값을 선택합니다.
창에는 증분 열 데이터 형식을 지원하는 테이블만 나열됩니다.
참고 항목
Azure SQL Database 원본에서 스키마 발전을 통해 CDC를 사용하도록 설정하려면 네이티브 SQL CDC가 사용하도록 설정된 테이블이 아닌 워터마크 열을 기반으로 하는 테이블을 선택합니다.
원본 테이블을 선택한 후 계속을 선택하여 데이터 대상을 설정합니다.
드롭다운 목록을 사용하여 대상 유형 값을 선택합니다. 이 문서에서는 델타를 선택합니다.
연결된 서비스를 선택하라는 메시지가 표시됩니다. 새 연결된 서비스를 만들거나 기존 서비스를 선택합니다.
대상 데이터 폴더를 선택합니다. 다음 중 하나를 사용할 수 있습니다.
- 대상 기본 경로 아래의 찾아보기 단추. 원본에 대해 선택한 모든 새 테이블의 찾아보기 경로를 자동으로 채우는 데 도움이 됩니다.
- 폴더 경로를 개별적으로 선택하려면 외부의 찾아보기 단추를 누릅니다.
폴더 경로를 선택한 후 계속 단추를 선택합니다.
변경 데이터 캡처를 위한 새 탭이 나타납니다. 이 탭은 새 리소스를 구성할 수 있는 CDC 스튜디오입니다.
새 매핑이 자동으로 만들어집니다. 드롭다운 목록을 사용하여 매핑에 대한 원본 테이블 및 대상 테이블 선택을 업데이트할 수 있습니다.
테이블을 선택하면 해당 열은 기본적으로 자동 매핑 토글이 켜진 상태로 매핑됩니다. 자동 매핑은 싱크의 이름별로 열을 자동으로 매핑하고, 원본 스키마가 발전할 때 새로운 열 변경 내용을 선택하고, 이 정보를 지원되는 싱크 형식으로 전달합니다.
참고 항목
스키마 발전은 자동 맵 토글이 켜져 있는 경우에만 작동합니다. 열 매핑을 편집하거나 변환을 포함하는 방법을 알아보려면 변경 데이터 캡처 리소스를 사용하여 변경된 데이터 캡처를 참조하세요.
키 링크를 선택한 다음 삭제 작업을 추적하는 데 사용할 키 열을 선택합니다.
매핑이 완료된 후 대기 시간 설정 단추를 사용하여 CDC 대기 시간을 설정합니다.
CDC의 대기 시간을 선택한 다음 적용을 선택하여 변경합니다.
기본적으로 대기 시간은 15분으로 설정됩니다. 이 문서의 예에서는 대기 시간에 대해 실시간 옵션을 사용합니다. 실시간 대기 시간은 1분 미만의 간격으로 원본 데이터의 변경 내용을 지속적으로 포착합니다.
다른 대기 시간(예: 15분을 선택한 경우)의 경우 변경 데이터 캡처는 원본 데이터를 처리하고 마지막 처리 시간 이후 변경된 데이터를 선택합니다.
CDC 구성을 마친 후 모두 게시를 선택하여 변경 내용을 게시합니다.
참고 항목
변경 내용을 게시하지 않으면 CDC 리소스를 시작할 수 없습니다. 다음 단계에서는 시작 단추를 사용할 수 없습니다.
변경 데이터 캡처 실행을 시작하려면 시작을 선택합니다.
이제 변경 데이터 캡처가 실행 중이므로 다음을 수행할 수 있습니다.
모니터링 페이지를 사용하면 기타 진단 정보와 함께 읽고 쓴 변경 내용(삽입, 업데이트 또는 삭제) 수를 확인할 수 있습니다.
변경 데이터가 Azure Data Lake Storage Gen2에 델타 형식으로 저장된 Delta Lake에 도착했는지 유효성을 검사합니다.
도착한 변경 데이터의 스키마의 유효성을 검사합니다.
원본 테이블에 동적 스키마 수준 변경 수행
다음 예와 같이
ALTER TABLE
T-SQL 문을 사용하여 원본 테이블에 새 PersonalEmail 열을 추가합니다.새 PersonalEmail 열이 기존 테이블에 나타나는지 유효성을 검사합니다.
델타 싱크에서 스키마 변경 내용 유효성 검사
델타 싱크에 새 열 PersonalEmail이 표시되는지 확인합니다. 이제 스키마 변경이 포함된 변경 데이터가 대상에 도착했음을 알 수 있습니다.