UpdateSnowflakeDatabase 프로세서

UpdateSnowflakeDatabase 프로세서

Openflow의 UpdateSnowflakeDatabase 프로세서는 들어오는 FlowFile의 스키마를 기준으로 Snowflake 테이블 정의를 업데이트하는 데 사용합니다. 이 문서에서 프로세서의 번들, 설명, 속성, 관계 등을 확인할 수 있습니다.

출처: Snowflake 문서

본문

번들 (Bundle)

com.snowflake.openflow.runtime | runtime-snowflake-processors-nar

설명 (Description)

들어오는 FlowFile에 제공된 스키마를 기준으로 Snowflake 테이블의 정의를 업데이트합니다. 스키마는 FlowFile 내용으로 제공되든 속성으로 지정되든 관계없이 다음 형식의 JSON이어야 합니다: { "columns": [ { "name": "<column name>", "type": "<column type>", "nullable": <true/false>, "precision": <precision, only for numeric type>, "scale": <scale, only for numeric type> }, … ], "primaryKeys": ["<name of first primary key column>", "<name of second primary key column>", …] }

태그 (Tags)

입력 요구사항 (Input Requirement)

REQUIRED

민감한 동적 속성 지원 (Supports Sensitive Dynamic Properties)

false

속성 (Properties)

속성 (Property) 설명 (Description)
Add Column Strategy 들어오는 스키마에 기존 테이블에는 없는 열이 있을 때 사용할 전략입니다.
Add Not Null Strategy 들어오는 스키마에 기존 테이블에는 없는 not-null 제약이 있을 때 사용할 전략입니다.
Alter Column Type Strategy 기존 테이블의 열 유형이 들어오는 스키마와 다를 때 사용할 전략입니다.
Column Name Transformation 스키마에 정의된 열 이름에 적용할 수 있는 선택적 변환입니다. 이 변환은 열 이름을 테이블의 기존 열과 비교하기 전에 적용됩니다. 이 속성은 속성 외에도 Expression Language를 통해 column.name, column.type, column.nullable, column.precision, column.scale, column.primaryKey 변수를 참조할 수 있습니다.
Column Removal Strategy 기존 테이블에 들어오는 스키마에는 없는 열이 있을 때 사용할 전략입니다.
Connection Pool Snowflake에 연결하는 데 사용할 연결 풀입니다.
Create Stream 테이블에 대한 Snowflake Stream을 생성할지 여부입니다.
Creation Parameters CREATE TABLE 문에 포함할 추가 매개변수입니다. 예: CLUSTER BY (column_name)
Desired Schema 원하는 스키마/테이블 정의입니다.
Drop Column Strategy 기존 테이블에 들어오는 스키마에는 없는 열이 있을 때 사용할 전략입니다.
Drop Not Null Strategy 기존 테이블에 들어오는 스키마에는 없는 not-null 제약이 있을 때 사용할 전략입니다.
Include Default Values CREATE TABLE 또는 ALTER TABLE ADD COLUMN 문에 DEFAULT 값을 포함할지 여부입니다.
Include Not Null Constraints CREATE TABLE 또는 ALTER TABLE ADD COLUMN 문에 NOT NULL 제약을 포함할지 여부입니다.
Include Primary Key Constraints 생성 문에 기본 키 제약을 포함할지 여부입니다.
Max Batch Size 주어진 테이블에 대해 단일 실행에서 처리할 수 있는 최대 FlowFile 수입니다.
Modify Primary Key Strategy 들어오는 스키마의 기본 키가 기존 기본 키와 다를 때 사용할 전략입니다. 기본 키를 수정하려면 기존 기본 키(있는 경우)를 삭제하고 새 기본 키를 추가해야 합니다.
Record Reader 원하는 스키마를 얻는 데 사용할 Record Reader입니다.
Removed Column Name Suffix 제거된 열에 추가할 접미사입니다. 예를 들어 열 foo를 foo__deleted로 이름 바꾸려면 이 속성을 __deleted로 설정할 수 있습니다.
Schema Name 업데이트할 스키마의 이름입니다.
Stream Creation Parameters CREATE STREAM 문에 포함할 추가 매개변수입니다. 예: APPEND_ONLY=TRUE
Stream Name 스트림의 이름입니다.
Table Metadata Cache Expiration Time 캐시 항목이 제거된 후의 시간(초)입니다.
Table Name 업데이트할 테이블의 이름 또는 스트림을 생성할 테이블 이름입니다.
Table Schema Strategy 원하는 스키마/테이블 정의를 얻는 방법을 지정합니다.
Table Stream Creation Parameters CREATE STREAM 문에 포함할 매개변수입니다. 예: APPEND_ONLY=TRUE. 스트림이 원본으로 삼는 테이블과 함께 생성됩니다.
Table Stream Name 테이블과 함께 생성되는 스트림의 이름입니다. 스트림 소스는 생성된 테이블입니다.
Update Type 수행할 업데이트 유형입니다.
Use Table Metadata Cache Snowflake에서 직접 읽는 대신 테이블의 메타데이터를 캐시할지 여부입니다. [Create Table If Not Exists, Alter Table]에 적용됩니다.

관계 (Relationships)

이름 (Name) 설명 (Description)
failure 테이블을 업데이트할 수 없으면 들어오는 FlowFile이 이 관계로 라우팅됩니다.
success 테이블이 성공적으로 업데이트된 후 들어오는 FlowFile이 이 관계로 라우팅됩니다.

기록하는 속성 (Writes attributes)

이름 (Name) 설명 (Description)
schema.hash 모든 업데이트 완료 후 최종 테이블 스키마의 SHA-256 해시입니다. 변경 감지와 캐싱 목적으로 사용할 수 있습니다.

더 알아보기 (Learn more)