SampleRecord
SampleRecord
지정한 샘플링 전략(예: Reservoir Sampling)에 따라 FlowFile의 레코드를 샘플링하는 프로세서예요. 전략에 따라 고정 개수, 확률적 부분 집합, 또는 일정 간격 레코드를 출력해요.
출처: Snowflake 문서
본문
번들 (Bundle)
org.apache.nifi | nifi-standard-nar
설명 (Description)
지정한 샘플링 전략(예: Reservoir Sampling)에 따라 FlowFile의 레코드를 샘플링합니다. 결과 FlowFile은 고정된 수의 레코드(reservoir 기반 알고리즘의 경우) 또는 전체 레코드 수의 부분 집합(확률적 샘플링의 경우), 또는 결정적 수의 레코드(간격 샘플링의 경우)일 수 있습니다.
태그 (Tags)
interval, range, record, reservoir, sample
입력 요구사항 (Input Requirement)
REQUIRED
민감 동적 속성 지원 (Supports Sensitive Dynamic Properties)
false
속성 (Properties)
| 속성 (Property) | 설명 (Description) |
|---|---|
| record-reader | 들어오는 데이터를 파싱하고 데이터의 스키마를 결정하는 데 사용할 Controller Service를 지정합니다. |
| record-writer | 결과를 FlowFile에 쓰는 데 사용할 Controller Service를 지정합니다. |
| sample-record-interval | 출력 FlowFile에 레코드를 쓰기 전에 건너뛸 레코드 수를 지정합니다. 이 속성은 Sampling Strategy가 Interval Sampling으로 설정된 경우에만 사용됩니다. 값 0은 출력 FlowFile에 레코드가 포함되지 않도록 하고, 값 1은 모든 레코드가 포함되도록 하며, 값 2는 절반의 레코드가 포함되도록 하는 식입니다. |
| sample-record-probability | 레코드가 출력 FlowFile에 포함될 확률(0-100의 퍼센트)을 지정합니다. 이 속성은 Sampling Strategy가 Probabilistic Sampling으로 설정된 경우에만 사용됩니다. 값 0은 출력 FlowFile에 레코드가 포함되지 않도록 하고, 값 100은 모든 레코드가 출력 FlowFile에 포함되도록 합니다. |
| sample-record-random-seed | 난수 생성기의 시드로 사용할 특정 숫자를 지정합니다(확률적 전략에 사용). 이 속성을 설정하면 확률적 전략을 사용할 때도 같은 레코드가 선택되도록 보장합니다. |
| sample-record-range | 샘플에 포함할 레코드 범위(1부터 전체 레코드 수까지)를 지정합니다. 예로 '3,6-8,20-'는 세 번째 레코드, 여섯·일곱·여덟 번째 레코드, 스무 번째 레코드부터 모든 레코드를 포함합니다. 쉼표는 겹치지 않는 간격을 구분하며, 간격은 두 숫자 사이(예: 6-8)이거나 특정 숫자까지(예: -5)이거나 특정 숫자부터 마지막 레코드까지(예: 20-)일 수 있습니다. 이 속성을 설정하지 않으면 모든 레코드가 포함됩니다. |
| sample-record-reservoir | 출력 FlowFile에 쓸 레코드 수를 지정합니다. 이 속성은 Sampling Strategy가 Reservoir Sampling 같은 reservoir 기반 전략으로 설정된 경우에만 사용됩니다. |
| sample-record-sampling-strategy | 들어오는 FlowFile에서 레코드를 샘플링하는 데 사용할 방법을 지정합니다. |
관계 (Relationships)
| 이름 (Name) | 설명 (Description) |
|---|---|
| failure | 어떤 이유로든 FlowFile 처리가 실패하면(예: 레코드가 유효하지 않은 경우) 원본 FlowFile이 이 관계로 라우팅됩니다. |
| original | 샘플링이 성공하면 원본 FlowFile이 이 관계로 라우팅됩니다. |
| success | 샘플링이 성공적으로 완료되면 FlowFile이 이 관계로 라우팅됩니다. |
쓰는 속성 (Writes attributes)
| 이름 (Name) | 설명 (Description) |
|---|---|
| mime.type | record writer가 나타내는 MIME type입니다. |
| record.count | 결과 flow file의 레코드 수입니다. |