RouteText

RouteText

사용자 정의 규칙 집합에 따라 텍스트 데이터를 라우팅하는 프로세서예요. 들어오는 FlowFile의 각 줄을 사용자 정의 속성 값과 비교하고, 일치 여부에 따라 각 줄을 개별적으로 라우팅해요.

출처: Snowflake 문서

본문

번들 (Bundle)

org.apache.nifi | nifi-standard-nar

설명 (Description)

사용자 정의 규칙 집합에 따라 텍스트 데이터를 라우팅합니다. 들어오는 FlowFile의 각 줄은 사용자 정의 속성에 지정된 값과 비교됩니다. 텍스트가 이러한 사용자 정의 속성과 비교되는 메커니즘은 'Matching Strategy'로 정의됩니다. 그런 다음 데이터는 이러한 규칙에 따라 라우팅되며, 텍스트의 각 줄이 개별적으로 라우팅됩니다.

태그 (Tags)

Expression Language, Regular Expression, attributes, csv, delimited, detect, filter, find, logs, regex, regexp, routing, search, string, text

입력 요구사항 (Input Requirement)

REQUIRED

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

false

속성 (Properties)

속성 (Property) 설명 (Description)
Character Set 들어오는 텍스트가 인코딩된 Character Set입니다.
Grouping Regular Expression 각 줄을 평가해 줄이 들어갈 그룹을 결정하는 데 사용할 Regular Expression을 지정합니다. 정규 표현식에는 줄의 그룹을 정의하는 캡처 그룹이 최소한 하나 있어야 합니다. 정규 표현식에 캡처 그룹이 여러 개 있으면 모든 캡처 그룹의 값이 연결됩니다. 두 줄이 같은 FlowFile에 들어가지 않으려면 두 줄 모두 그룹 값이 같아야 합니다(또는 두 줄 모두 정규 표현식과 일치하지 않아야 합니다). 예를 들어 CSV 파일의 모든 줄을 첫 열별로 그룹화하려면 이 값을 "(.?),."로 설정할 수 있습니다. 그룹은 같지만 관계가 다른 두 줄은 결코 같은 FlowFile에 들어가지 않습니다.
Ignore Case true면 값을 비교할 때 대소문자를 고려하지 않습니다. 예를 들어 'HELLO'와 'hello'에 대해 일치시킨 결과가 같습니다. 'Matching Strategy'가 'Satisfies Expression'으로 설정되면 이 속성은 무시됩니다.
Ignore Leading/Trailing Whitespace 줄을 평가할 때 줄 시작과 끝의 공백을 무시할지 여부를 나타냅니다.
Matching Strategy 들어오는 텍스트의 각 줄을 사용자 정의 속성에 대해 어떻게 평가할지 지정합니다.
Routing Strategy 들어오는 텍스트의 각 줄을 'Matching Strategy' 및 사용자 정의 속성에 대해 평가할 때 어떤 관계를 사용할지 결정하는 방법을 지정합니다.

관계 (Relationships)

이름 (Name) 설명 (Description)
original 줄이 하나 이상의 관계로 성공적으로 라우팅되면 원본 입력 파일이 이 대상으로 라우팅됩니다.
unmatched 필요한 사용자 정의 규칙을 충족하지 않는 데이터가 이 Relationship으로 라우팅됩니다.

쓰는 속성 (Writes attributes)

이름 (Name) 설명 (Description)
RouteText.Route FlowFile이 라우팅된 관계의 이름입니다.
RouteText.Group 'Grouping Regular Expression' 속성의 모든 캡처 그룹이 캡처한 값입니다. 이 속성이 설정되지 않았거나 캡처 그룹이 없으면 이 속성은 추가되지 않습니다.

사용 사례 (Use cases)

  • FlowFile 내용에서 공백 또는 빈 줄을 제거합니다.
  • 특정 단어를 포함하거나 특정 줄 길이를 초과하는 줄처럼, 파일에서 특정 텍스트 줄을 제거합니다.

더 알아보기 (Learn more)