JsonTreeReader¶
설명¶
JSON 을 개별 레코드 오브젝트로 구문 분석합니다. 독자는 각 레코드가 잘 구성된 JSON 이길 기대하지만, FlowFile 의 내용은 여러 레코드로 구성될 수 있으며, 각각은 잘 구성된 JSON 배열 또는 일반적인 ‘라인마다 JSON’ 형식과 같이 레코드 사이에 선택적 공백이 있는 JSON 오브젝트로 구성될 수 있습니다. 배열이 발생하면 해당 배열의 각 요소는 별도의 레코드로 처리됩니다. 구성된 스키마에 JSON 에 없는 필드가 포함된 경우 null 값이 사용됩니다. JSON 에 스키마에 없는 필드가 포함된 경우 해당 필드는 건너뜁니다. 자세한 내용과 예시는 컨트롤러 서비스 사용법을 참조하십시오.
속성¶
아래 목록에서 필수 속성에는 별표(*)가 표시되어 있습니다. 다른 속성은 선택 사항으로 간주됩니다. 이 테이블에는 기본값과 속성이 NiFi 식 언어를 지원하는지 여부도 표시됩니다.
표시 이름 |
API 이름 |
기본값 |
허용되는 값 |
설명 |
---|---|---|---|---|
설명 허용 * |
설명 허용 |
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 |
|
데이터 해석에 사용할 스키마를 가져오는 방법을 지정합니다. |
Schema Application Strategy * |
schema-application-strategy |
SELECTED_PART |
|
스키마가 전체 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 |
|
루트 노드 또는 지정된 중첩 노드에서 처리를 시작합니다. |
상태 관리¶
이 구성 요소는 상태를 저장하지 않습니다.
제한됨¶
이 구성 요소는 제한되지 않습니다.
시스템 리소스 고려 사항¶
이 구성 요소는 시스템 리소스 고려 사항을 지정하지 않습니다.