JsonTreeReader

설명

JSON 을 개별 레코드 오브젝트로 구문 분석합니다. 독자는 각 레코드가 잘 구성된 JSON 이길 기대하지만, FlowFile 의 내용은 여러 레코드로 구성될 수 있으며, 각각은 잘 구성된 JSON 배열 또는 일반적인 ‘라인마다 JSON’ 형식과 같이 레코드 사이에 선택적 공백이 있는 JSON 오브젝트로 구성될 수 있습니다. 배열이 발생하면 해당 배열의 각 요소는 별도의 레코드로 처리됩니다. 구성된 스키마에 JSON 에 없는 필드가 포함된 경우 null 값이 사용됩니다. JSON 에 스키마에 없는 필드가 포함된 경우 해당 필드는 건너뜁니다. 자세한 내용과 예시는 컨트롤러 서비스 사용법을 참조하십시오.

태그

json, parser, reader, record, tree

속성

아래 목록에서 필수 속성에는 별표(*)가 표시되어 있습니다. 다른 속성은 선택 사항으로 간주됩니다. 이 테이블에는 기본값과 속성이 NiFi 식 언어를 지원하는지 여부도 표시됩니다.

표시 이름

API 이름

기본값

허용되는 값

설명

설명 허용 *

설명 허용

false

  • true

  • false

JSON 문서를 구문 분석할 때 설명을 허용할지 여부

Date Format

Date Format

날짜 필드를 읽거나 쓸 때 사용할 형식을 지정합니다. 지정하지 않으면 날짜 필드는 epoch(1970년 1월 1일 자정, GMT 시간) 이후의 밀리초 수로 간주됩니다. 지정한 경우 값은 Java java.time.format과 일치해야 합니다. DateTimeFormatter 형식(예: 01/01/2017과 같이 두 자릿수의 월을 MM/d d/yyyy로 표시한 후, 두 자릿수의 일을 이어서 표시하고, 네 자릿수의 연도를 추가하며, 모든 숫자는 ‘/’ 기호로 구분됨)입니다.

최대 문자열 길이 *

Max String Length

20 MB

JSON 문서를 구문 분석할 때 허용되는 문자열 값의 최대 길이입니다

시간 형식

시간 형식

시간 필드를 읽거나 쓸 때 사용할 형식을 지정합니다. 지정하지 않으면 시간 필드는 epoch(1970년 1월 1일 자정, GMT 시간) 이후의 밀리초 수로 간주됩니다. 지정하는 경우 값은 Java java.time.format과 일치해야 합니다. DateTimeFormatter 형식(예: 18:04:15와 같이 24시간 형식의 두 자리 시, 두 자리 분, 두 자리 초를 모두 ‘:’ 문자로 구분한 HH:mm:ss)입니다.

타임스탬프 형식

타임스탬프 형식

타임스탬프 필드를 읽거나 쓸 때 사용할 형식을 지정합니다. 지정하지 않으면 타임스탬프 필드는 epoch(1970년 1월 1일 자정, GMT 시간) 이후 밀리초 수로 간주됩니다. 지정된 경우, 값은 Java java.time.format.DateTimeFormatter 형식입니다(예: MM/dd/yyyy HH:mm:ss는 두 자리의 월, 그 다음에 두 자리의 일, 그 다음에 네 자리의 연도이며, 모두 ‘/’ 문자로 구분됩니다. 01/01/2017 18:04:15와 같이 그 다음에는 24시간 형식의 두 자리의 시간이, 그 다음에 두 자리의 분, 그 다음에 두 자리의 초가 ‘:’ 문자로 구분되어 이어집니다).

Schema Access Strategy *

schema-access-strategy

infer-schema

  • Infer Schema

  • ‘Schema Name’ 속성 사용

  • ‘Schema Text’ 속성 사용

  • Schema Reference Reader

데이터 해석에 사용할 스키마를 가져오는 방법을 지정합니다.

Schema Application Strategy *

schema-application-strategy

SELECTED_PART

  • 전체 JSON

  • 선택한 부품

스키마가 전체 JSON 또는 “Starting Field Name”에서 시작하는 선택된 부분에 대해 정의될지 여부를 지정합니다.

Schema Branch

schema-branch

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

Schema Inference Cache

schema-inference-cache

스키마를 추론할 때 사용할 스키마 캐시를 지정합니다. 스키마가 채워지지 않으면 매번 추론됩니다. 그러나 캐시를 지정하면 먼저 캐시를 참조하고 해당 애플리케이션 스키마를 찾을 수 있으면 스키마를 추론하는 대신 캐시를 사용합니다.

Schema Name

schema-name

${schema.name}

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

Schema Reference Reader *

schema-reference-reader

스키마 참조 식별자를 결정하기 위해 FlowFile 특성 또는 내용을 읽는 역할을 담당하는 서비스 구현

Schema Registry

schema-registry

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

Schema Text

schema-text

${avro.schema}

Avro 형식의 스키마 텍스트

Schema Version

schema-version

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

Starting Field Name

starting-field-name

지정된 중첩된 JSON 필드(배열 또는 오브젝트)로 건너뛰어 처리를 시작합니다.

Starting Field Strategy *

starting-field-strategy

ROOT_NODE

  • 루트 노드

  • 중첩 필드

루트 노드 또는 지정된 중첩 노드에서 처리를 시작합니다.

상태 관리

이 구성 요소는 상태를 저장하지 않습니다.

제한됨

이 구성 요소는 제한되지 않습니다.

시스템 리소스 고려 사항

이 구성 요소는 시스템 리소스 고려 사항을 지정하지 않습니다.