CaptureChangeMySQL 2025.5.31.15¶
번들¶
com.snowflake.openflow.runtime | runtime-database-cdc-processors-nar
설명¶
MySQL 데이터베이스에서 CDC 이벤트를 읽습니다. 프로세서는 바이너리 로그 파일에서 지속적으로 이벤트를 읽고, TableStateService 에서 제공한 테이블과 관련된 이벤트를 필터링하고 나머지는 삭제합니다. 프로세서는 다음 두 가지 유형의 플로우 파일을 출력합니다. - 테이블의 스키마(초기 스키마 및 모든 스키마 변경 시 새 스키마)를 포함하는 DDLs - 테이블의 데이터 변경을 나타내는 레코드가 포함된 DMLs - 하나의 플로우 파일은 항상 단일 테이블과 관련된 데이터를 나타내며, 스키마가 포함된 DDL 은 FlowFile 내용에 JSON 오브젝트({ “columns”: [ { “name”: “<columnName>”, “type”: “<snowflakeType>”, “nullable”: <true|false>, “scale”: <scale>, “precision”: <precision> }, … ], “primaryKeys”: [“<primaryKey1>”, “<primaryKey2>”, …]}Structure of the FlowFiles containing the DML records:{ “primaryKeys”: { “<column>”: <value>, … }, “payload”: { “<column>”: <value>, … }, “metadata”: { “<column>”: <value>, … }})로 기록됩니다.
입력 요구 사항¶
FORBIDDEN
민감한 동적 속성 지원¶
false
속성¶
속성 |
설명 |
---|---|
열 필터 저장소ㄴ |
테이블별 열 필터링 설정을 저장하는 서비스입니다. |
Connection Timeout |
소스 데이터베이스에 대한 연결 시간 제한 |
JDBC Driver Location |
쉼표로 구분된 파일/폴더 목록 및/또는 URLs 드라이버 JAR 및 종속성(있는 경우)이 포함된 목록입니다. 예: ‘/var/tmp/mariadb-java-client-3.4.1.jar’ |
JDBC URL |
데이터베이스 연결의 JDBC URL (예: jdbc:mariadb://localhost:3306/mysql) |
Max Batch Size |
단일 반복에서 처리할 최대 레코드 수입니다. 마지막 빈로그 이벤트에 행이 2개 이상 포함된 경우 레코드 수가 최대 배치 크기를 초과할 수 있습니다. |
Max Batch Wait Time |
빈로그에 데이터가 표시될 때까지 대기할 수 있는 최대 시간입니다. |
Max Queue Size |
리더 스레드가 onTrigger를 기다릴 때까지 빈로그에서 읽은 최대 요소 수 |
비밀번호 |
MySQL 데이터베이스에 액세스하기 위한 비밀번호 |
Record Writer |
Record Writer는 DML 이벤트를 직렬화하는 데 사용됩니다 |
SSL 컨텍스트 서비스 |
암호화된 소켓 통신을 지원하는 SSL 컨텍스트 서비스 |
SSL Mode |
SSL 컨텍스트 서비스가 인증서 확인 옵션을 지원할 수 있도록 구성되었을 때 사용되는 SSL 모드 |
Server ID |
서버 ID (1 ~ 2^32 - 1 범위). 이 값은 전체 복제 그룹에서 고유해야 합니다(즉, 마스터 또는 슬레이브가 사용 중인 다른 서버 ID 와 달라야 함). 각 이진 로그 클라이언트는 단순화된 슬레이브로 취급되어야 하므로 다른 서버 ID 를 사용해야 합니다. |
Server ID Strategy |
서버 ID 가 선택되는 방법을 결정합니다 |
Table State Store |
복제된 테이블의 상태를 보관하는 공유 저장소입니다. |
사용자 이름 |
MySQL 데이터베이스에 액세스하기 위한 사용자 이름 |
상태 관리¶
범위 |
설명 |
---|---|
CLUSTER |
데이터베이스의 현재 CDC 이벤트에 대한 ‘포인터’와 같은 정보는 이 프로세서에 저장되므로 다시 시작하면 같은 위치에서 계속 진행할 수 있습니다. |
관계¶
이름 |
설명 |
---|---|
성공 |
CDC 스트림 이벤트에서 FlowFile 을 성공적으로 생성했습니다 |
Writes 특성¶
이름 |
설명 |
---|---|
source.schema.name |
이벤트가 발생한 테이블의 스키마 이름 |
source.table.name |
이벤트가 발생한 테이블의 이름 |
cdc.event.type |
플로우 파일이 전달하는 이벤트 유형: ddl 또는 dml |
cdc.most.significant.position |
ddl 스트림에서 가장 중요한 ddl의 위치 |
cdc.least.significant.position |
디렉터리 스트림에서 ddl의 가장 중요하지 않은 위치 |
cdc.event.seen.at |
프로세서가 ddl 이벤트를 읽은 시간으로부터의 타임스탬프 |