Openflow Connector for SQL Server 정보¶
참고
커넥터에는 커넥터 약관 이 적용됩니다.
이 항목에서는 Openflow Connector for SQL Server 의 기본 개념, 워크플로 및 제한 사항에 대해 설명합니다.
Openflow Connector for SQL Server 는 SQL 서버 데이터베이스 인스턴스를 Snowflake에 연결하고 선택한 테이블의 데이터를 거의 실시간으로 또는 지정된 일정에 따라 복제합니다.
다음 작업을 수행하려는 경우 이 커넥터를 사용하십시오.
- 포괄적인 중앙 집중식 보고를 위해 Snowflake를 사용해 Microsoft SQL Server의 CDC 복제 
워크플로¶
- SQL 서버 데이터베이스 관리자는 다음 작업을 수행합니다. - SQL 데이터베이스 복제 설정을 구성하고 데이터베이스 및 테이블에 대한 변경 추적을 활성화합니다. 
- 커넥터에 대한 자격 증명을 생성합니다. 
- (선택 사항) SSL 인증서를 제공합니다. 
 
- Snowflake 계정 관리자는 다음 작업을 수행합니다. - 커넥터에 대한 서비스 사용자, 커넥터를 위한 웨어하우스, 복제할 대상 데이터베이스를 생성합니다. 
- 커넥터를 설치합니다. 
- 커넥터 플로우 정의의 필수 매개 변수를 지정합니다. 
- 플로우를 실행합니다. 커넥터는 Openflow에서 실행될 때 다음을 수행합니다. - 저널 테이블에 대한 스키마를 생성합니다. 
- 복제를 위해 구성된 소스 테이블과 일치하는 스키마 및 대상 테이블을 생성합니다. 
- 테이블 복제 방법 에 설명된 대로 테이블 복제 수명 주기에 따라 복제를 시작합니다. 
 
 
테이블이 복제되는 방법¶
테이블은 다음 스테이지에서 복제됩니다.
- 스키마 검사: 커넥터는 열 이름과 유형을 포함하여 소스 테이블의 열을 검색한 다음 Snowflake 및 커넥터의 제한 사항에 따라 열의 유효성을 검사합니다. 유효성 검사에 실패하면 이 스테이지가 실패하고 사이클이 완료됩니다. 이 스테이지가 성공적으로 완료되면 커넥터는 빈 대상 테이블을 생성합니다. 
- 스냅샷 로딩: 커넥터는 소스 테이블에서 사용 가능한 모든 데이터를 대상 테이블에 복사본으로 복사합니다. 이 스테이지에 실패하면 더 이상 데이터가 복제되지 않습니다. 성공적으로 완료되면 소스 테이블의 데이터를 대상 테이블에서 사용할 수 있습니다. 
- 증분 로딩: 커넥터는 소스 테이블의 변경 사항을 추적하고 해당 변경 사항을 대상 테이블에 적용합니다. 이 프로세스는 테이블이 복제에서 제거될 때까지 계속됩니다. 이 스테이지에서 실패하면 문제가 해결될 때까지 소스 테이블의 복제가 영구적으로 중지됩니다. 
참고
연결 오류와 같은 중간 장애가 발생해도 테이블이 복제되지 않습니다. 그러나 영구적인 오류(예: 지원되지 않는 데이터 타입)가 발생하면 테이블이 복제되지 않습니다. 영구 장애로 인해 테이블을 복제할 수 없는 경우 복제할 테이블 목록에서 해당 테이블을 제거합니다. 장애를 일으킨 문제를 해결한 후 복제할 테이블 목록에 테이블을 다시 추가할 수 있습니다.
지원되는 SQL 서버 버전¶
다음 테이블에는 테스트를 거쳐 공식적으로 지원되는 SQL 서버 버전이 나열되어 있습니다.
| 플랫폼 | 서비스 및 버전 | 에디션 및 티어 | 지원됨 | 
|---|---|---|---|
| 온프레미스 | Developer, Enterprise, Standard | ✔ 지원 | |
| Microsoft SQL Server 2019 | Developer, Enterprise, Standard | ✔ 지원 | |
| Microsoft SQL Server 2017 | Developer, Enterprise, Standard | ✔ 지원 | |
| Microsoft SQL Server 2016 | Developer, Enterprise, Standard | ✔ 지원 | |
| Microsoft SQL Server 2014 | 모두 | 테스트되지 않음 | |
| Microsoft SQL Server 2012 | 모두 | 테스트되지 않음 | |
| Azure | `Azure SQL Database<https://learn.microsoft.com/azure/azure-sql/database/?view=azuresql>`_ | 모든 인스턴스 유형 | ✔ 지원 | 
| 모든 인스턴스 유형 | ✔ 지원 | ||
| Azure VM의 SQL Server | 모두 | 테스트되지 않음 | |
| AWS | `SQL Server용 AWS RDS<https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_SQLServer.html>`_ | 모든 인스턴스 유형 | ✔ 지원 | 
| Amazon EC2용 SQL Server | 모두 | 테스트되지 않음 | |
| Google Cloud | SQL Server용 Google Cloud SQL | 모두 | 테스트되지 않음 | 
Openflow 요구사항¶
제한 사항¶
- 커넥터는 SQL 서버를 통한 사용자 이름 및 비밀번호 인증만 지원합니다. 
- 커넥터는 Snowflake에서 지원하는 데이터 타입을 가진 테이블만 복제합니다. 이러한 데이터 타입의 목록은 데이터 타입 요약 섹션을 참조하십시오. 
- 커넥터는 복제된 모든 테이블에 기본 키가 있어야 합니다. 
- 기본값이 기본값인 새 NOT NULL 열이 소스 데이터베이스에 추가될 때 커넥터는 Snowflake 데이터베이스의 기존 레코드를 업데이트하지 않습니다. 
- 커넥터는 열 필터 JSON 에 포함된 목록에 새 열이 추가될 때 Snowflake 데이터베이스의 기존 레코드를 업데이트하지 않습니다. 
- 소스 데이터베이스에서 열을 삭제한 후 같은 이름으로 다시 추가하면 추가 삭제 시 오류가 발생합니다. 
- 열 필터 JSON 에 열을 포함했다가 제외한 후 추가로 포함을 시도하면 오류가 발생합니다. 
- 커넥터는 기본 키 정의 변경, 전체 자릿수 변경 또는 숫자 열의 스케일 변경을 제외한 소스 테이블 스키마 변경을 지원합니다. 
- 커넥터는 테이블 잘라내기 작업을 지원하지 않습니다. 
참고
특정 테이블 열에 영향을 미치는 제한은 이러한 특정 열을 복제에서 제외하여 우회할 수 있습니다.