UpdateByQueryElasticsearch 프로세서

UpdateByQueryElasticsearch 프로세서

Openflow의 UpdateByQueryElasticsearch 프로세서는 쿼리를 사용하여 Elasticsearch 문서를 업데이트하는 데 사용합니다. 이 문서에서 프로세서의 번들, 설명, 속성, 관계 등을 확인할 수 있습니다.

출처: Snowflake 문서

본문

번들 (Bundle)

org.apache.nifi | nifi-elasticsearch-restapi-nar

설명 (Description)

쿼리를 사용하여 Elasticsearch 인덱스의 문서를 업데이트합니다. 쿼리는 flowfile 본문 또는 Query 매개변수에서 불러올 수 있습니다. 불러온 쿼리는 Elasticsearch의 _update_by_query API가 받아들이는 모든 JSON을 포함할 수 있습니다. 예를 들어 업데이트할 문서를 식별하는 query 객체와 수행할 업데이트를 정의하는 script가 그렇습니다.

태그 (Tags)

elastic, elasticsearch, elasticsearch7, elasticsearch8, elasticsearch9, query, update

입력 요구사항 (Input Requirement)

REQUIRED

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

false

속성 (Properties)

속성 (Property) 설명 (Description)
Client Service 쿼리 실행에 사용할 Elasticsearch 클라이언트 서비스입니다.
Index 사용할 인덱스의 이름입니다.
Max JSON Field String Length JSON 문서나 속성을 파싱할 때 문자열 값의 최대 허용 길이입니다.
Query Lucene 문법이 아닌 JSON 문법의 쿼리입니다. 예: {"query":{"match":{"somefield":"somevalue"}}}. 이 매개변수를 설정하지 않으면 쿼리는 flowfile 내용에서 읽습니다. 쿼리(속성과 flowfile 내용)가 비어 있으면 기본 빈 JSON Object가 사용되어 Elasticsearch에서 match_all 쿼리가 됩니다.
Query Attribute 설정하면 실행된 쿼리가 지정된 속성으로 각 결과 flowfile에 설정됩니다.
Query Clause Lucene 문법이 아닌 JSON 문법의 query 절입니다. 예: {"match":{"somefield":"somevalue"}}. 쿼리가 비어 있으면 기본 JSON Object가 사용되어 Elasticsearch에서 match_all 쿼리가 됩니다.
Query Definition Style JSON 쿼리가 프로세서에서 사용될 수 있도록 정의되는 방식입니다.
Script 작업 중 실행할 JSON 문법의 script입니다. 예: {"source": "ctx._source.count++", "lang": "painless"}
Type 이 문서의 유형입니다(Elasticsearch에서 인덱싱과 검색에 사용).

관계 (Relationships)

이름 (Name) 설명 (Description)
failure by query 작업이 실패하고 flowfile을 읽었다면 이 관계로 전송됩니다.
retry 서버/클러스터 가용성으로 인해 실패한 모든 flowfile이 이 관계로 전송됩니다.
success by query 작업이 성공하고 flowfile을 읽었다면 이 관계로 전송됩니다.

기록하는 속성 (Writes attributes)

이름 (Name) 설명 (Description)
elasticsearch.update.took 업데이트 작업을 완료하는 데 걸린 시간(밀리초)입니다.
elasticsearch.update.error 업데이트 실행 중 오류가 있을 때 Elasticsearch가 제공한 오류 메시지입니다.

더 알아보기 (Learn more)