ValidateRecord 2025.5.31.15

번들

org.apache.nifi | nifi-standard-nar

설명

수신되는FlowFile의 레코드를 주어진 스키마와 비교하여 유효성을 검사합니다. 스키마를 준수하는 모든 레코드는 “유효한”관계로 라우팅되고 스키마를 준수하지 않는 레코드는 “유효하지 않은”관계로 라우팅됩니다. 따라서 스키마에 따라 일부 레코드가 유효하고 다른 레코드가 유효하지 않은 경우 단일 수신 FlowFile 을 2개의 개별 FlowFiles 로 분할할 수 있습니다. “유효하지 않은”관계로 라우팅된 FlowFile 은 세부 정보 필드가 채워진 ROUTE 소스 이벤트를 발생시켜 레코드가 유효하지 않은 이유를 설명합니다. 또한 레코드가 유효하지 않은 이유에 대한 자세한 설명을 얻으려면 “org.apache.nifi.processors.standard.ValidateRecord”로거에 대해 DEBUG 수준 로깅을 사용하도록 설정할 수 있습니다.

태그

record, schema, validate

입력 요구 사항

REQUIRED

민감한 동적 속성 지원

false

속성

속성

설명

allow-extra-fields

수신 데이터에 스키마에 없는 필드가 있는 경우 이 속성에 따라 레코드가 유효한지 여부가 결정됩니다. true이면 레코드가 여전히 유효합니다. false이면 추가 필드로 인해 레코드가 무효화됩니다.

coerce-types

활성화하면 프로세서는 모든 필드를 리더의 스키마에 지정된 유형으로 강제로 변환합니다. 필드 값을 강제로 타입에 맞출 수 없는 경우 해당 필드는 건너뛰기(입력 데이터에서 읽지 않음)되어 출력에 나타나지 않습니다. 활성화하지 않으면 모든 필드가 출력에 표시되지만 그 유형은 스키마에 지정된 것과 다를 수 있습니다. 자세한 내용은 프로세서 도움말의 추가 세부 정보 페이지를 참조하십시오. 이 속성은 지정된 Record Reader가 데이터를 읽는 방법을 제어합니다.

invalid-record-writer

지정하면 이 컨트롤러 서비스가 유효하지 않은 레코드를 기록하는 데 사용됩니다. 지정하지 않으면 “Record Writer” 속성에 지정된 작성기가 입력 레코드를 읽는 데 사용되는 스키마와 함께 사용됩니다. 이 기능은 예를 들어, 구성된 Record Writer가 스키마를 준수하지 않는 데이터를 쓸 수 없거나(Avro의 경우) 유효한 레코드를 다른 형식으로 변환하는 동안 유효하지 않은 레코드를 원래 형식으로 유지해야 할 때 유용합니다.

maximum-validation-details-length

유효성 검사 세부 정보 값에 포함할 수 있는 최대 문자 수를 지정합니다. 최대 길이를 초과하는 문자는 잘립니다. 이 속성은 ‘Validation Details Attribute Name’이 설정된 경우에만 사용됩니다

record-reader

수신 데이터를 읽는 데 사용할 컨트롤러 서비스를 지정합니다

record-writer

레코드 작성에 사용할 컨트롤러 서비스를 지정합니다. 컨트롤러 서비스 스키마 액세스 구성에 관계없이 레코드의 유효성을 검사하는 데 사용되는 스키마가 유효한 결과를 작성하는 데 사용됩니다.

schema-access-strategy

레코드의 유효성을 검사하는 데 사용해야 하는 스키마를 가져오는 방법을 지정합니다

schema-branch

Schema Registry 속성에서 스키마를 조회할 때 사용할 분기의 이름을 지정합니다. 선택한 Schema Registry가 분기를 지원하지 않는 경우 이 값은 무시됩니다.

schema-name

Schema Registry 속성에서 조회할 스키마의 이름을 지정합니다

schema-registry

Schema Registry에 사용할 컨트롤러 서비스를 지정합니다

schema-text

Avro 형식의 스키마 텍스트

schema-version

Schema Registry에서 조회할 스키마 버전을 지정합니다. 지정하지 않으면 최신 버전의 스키마가 검색됩니다.

strict-type-checking

수신 데이터에 필드가 올바른 타입이 아닌 레코드가 있는 경우 이 속성에 따라 레코드를 처리하는 방법이 결정됩니다. true이면 해당 레코드는 유효하지 않은 것으로 간주됩니다. false이면 레코드가 유효한 것으로 간주되고 필드가 올바른 유형으로 강제 입력됩니다(가능한 경우 Record Writer가 지원하는 유형 강제 입력에 따라). 이 속성은 유효성 검사 스키마에 대해 데이터의 유효성을 검사하는 방법을 제어합니다.

validation-details-attribute-name

지정하면 유효성 검사 오류가 발생하면 이 특성 이름을 사용하여 세부 정보를 남깁니다. 문자 수는 ‘Maximum Validation Details Length’ 속성에 의해 제한됩니다.

관계

이름

설명

실패

어떤 이유로든 레코드를 읽거나 유효성을 검사하거나 쓸 수 없는 경우 원본 FlowFile 은 이 관계로 라우팅됩니다

invalid

스키마에 따라 유효하지 않은 레코드는 이 관계로 라우팅됩니다

유효

스키마에 따라 유효한 레코드는 이 관계로 라우팅됩니다

Writes 특성

이름

설명

mime.type

Mime.type 특성을 Record Writer가 지정한 MIME 유형으로 설정합니다

record.count

관계로 라우팅된 FlowFile 의 레코드 수입니다