MergeRecord 2025.5.31.15

번들

org.apache.nifi | nifi-standard-nar

설명

이 프로세서는 여러 개의 레코드 지향 FlowFiles 을 입력된 FlowFiles 의 모든 레코드를 포함하는 단일 FlowFile 로 병합합니다. 이 프로세서는 ‘빈’을 생성한 다음 이 빈이 가득 찰 때까지 FlowFiles 을 추가하는 방식으로 작동합니다. 빈이 가득 차면 FlowFiles 은 모두 단일 출력 FlowFile 로 합쳐지고 해당 FlowFile 은 ‘병합’ 관계로 라우팅됩니다. 빈은 잠재적으로 많은 ‘like FlowFiles’로 구성됩니다. 2개의 FlowFiles가 ‘like FlowFiles’로 간주되려면, 2개의 스키마가 동일해야 하며(Record Reader가 식별한 대로), <Correlation Attribute Name> 속성이 설정된 경우 지정된 특성에 대해 동일한 값을 가져야 합니다. 자세한 내용은 프로세서 사용 및 추가 세부 정보를 참조하십시오. 참고: 이 프로세서는 Scheduling Strategy에 대해 cron 구동으로 구성되지 않아야 합니다.

태그

content, correlation, event, merge, record, stream

입력 요구 사항

REQUIRED

민감한 동적 속성 지원

false

속성

속성

설명

Attribute Strategy

번들에 추가할 FlowFile 특성을 결정합니다. ‘Keep All Unique Attributes’를 선택하면 번들로 제공되는 FlowFile 의 모든 특성은 해당 값이 다른 FlowFile 의 값과 충돌하지 않는 한 유지됩니다. ‘Keep Only Common Attributes’를 선택하면 번들의 모든 FlowFiles 에 동일한 값으로 존재하는 특성만 보존됩니다.

correlation-attribute-name

지정하면 이 특성의 값이 같은 경우에만 2개의 FlowFiles 이 함께 묶입니다. 지정하지 않으면 FlowFiles 이 큐에서 가져온 순서대로 번들링됩니다.

max-bin-age

빈이 완료되도록 트리거하는 빈의 최대 보관 기간입니다. 예상 형식은 <기간> <시간 단위>이며, 여기서 <기간> 은 양의 정수이고 시간 단위는 초, 분, 시간 중 하나입니다

max-bin-size

번들의 최대 크기입니다. 지정하지 않으면 최대값이 없습니다. 이는’소프트 제한’으로, FlowFile 을 빈에 추가하면 해당 FlowFile 의 모든 레코드가 추가되므로 이 제한은 마지막 입력 FlowFile 의 바이트 수까지 초과할 수 있습니다.

max-records

빈에 포함할 최대 레코드 수입니다. 이는 ‘소프트 제한’으로, FlowFIle 을 빈에 추가하면 해당 FlowFile 의 모든 레코드가 추가되므로 이 제한은 마지막 입력 FlowFile 의 레코드 수까지 초과될 수 있습니다.

max.bin.count

한 번에 메모리에 보관할 수 있는 최대 빈 수를 지정합니다. 이 숫자는 이 프로세서의 최대 동시 스레드 수보다 작아서는 안 되며, 그렇지 않으면 생성되는 빈은 1개의 수신 FlowFile 로만 구성되는 경우가 많습니다.

merge-strategy

레코드를 병합하는 데 사용되는 알고리즘을 지정합니다. ‘Defragment’ 알고리즘은 특성별로 연관된 조각을 다시 1개의 응집력 있는 FlowFile 로 결합합니다. ‘빈 패킹 알고리즘’은 임의로 선택한 FlowFile 로 채워진 FlowFiles

min-bin-size

빈의 최소 크기

min-records

빈에 포함할 최소 레코드 수입니다

record-reader

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

record-writer

레코드 작성에 사용할 컨트롤러 서비스를 지정합니다

관계

이름

설명

실패

번들을 생성할 수 없는 경우 번들을 생성하는 데 사용되었던 모든 FlowFiles 은 이 실패로 변환됩니다

병합

병합된 레코드가 포함된 FlowFile

원본

번들 생성에 사용되는 FlowFiles

Writes 특성

이름

설명

record.count

병합된 FlowFile 에는 FlowFile 에 기록된 레코드의 수를 나타내는 ‘record.count’ 특성이 있습니다.

mime.type

Record Writer가 나타내는 MIME 유형

merge.count

이 번들에 병합된 FlowFiles 의 수입니다

merge.bin.age

병합되어 출력된 빈의 수명(밀리초 단위)입니다. 실제로 이것은 이 번들의 FlowFile 이 출력되기 전에 이 프로세서에서 대기한 가장 긴 시간입니다

merge.uuid

원래 FlowFiles 특성에 추가될 병합된 FlowFile 의 UUID

merge.completion.reason

이 프로세서를 사용하면 FlowFiles 병합을 위해 여러 임계값을 구성할 수 있습니다. 이 특성은 임계값 중 어떤 임계값으로 인해 FlowFiles 이 병합되었는지를 나타냅니다. 사용 가능한 각 값과 그 의미에 대한 설명은 프로세서의 사용법/설명서를 참조하고 ‘추가 세부 정보’ 페이지를 참조하십시오.

<Record Writer의 특성>

구성된 Record Writer가 반환하는 모든 특성은 FlowFile 에 추가됩니다.

사용 사례

여러 개의 임의의 레코드를 결합하여 1개의 큰 파일을 생성합니다

다른 구성 요소가 포함된 사용 사례

데이터의 특정 필드에 대해 동일한 값을 가진 많은 레코드를 결합하여 더 큰 단일 파일을 생성합니다

참고 항목