JsonTreeReader
Описание
Анализирует JSON в отдельные объекты Record. Хотя ридер ожидает, что каждая запись будет корректно сформированным JSON, содержимое FlowFile может состоять из многих записей, каждая из которых является корректно сформированным массивом JSON или объектом JSON с необязательными пробелами между ними, например, в формате 'JSON-per-line'. Если встречается массив, каждый элемент этого массива будет рассматриваться как отдельная запись. Если в настроенной схеме содержится поле, отсутствующее в JSON, будет использовано значение null. Если JSON содержит поле, отсутствующее в схеме, это поле будет пропущено. См. использование службы контроллера для получения дополнительной информации и примеров.
Теги
json, tree, record, reader, parser
Свойства
Название | Описание |
---|---|
Schema Access Strategy | Указывает, как получить схему, которая будет использоваться для интерпретации данных. |
Schema Registry | Указывает службу контроллера, которую следует использовать для реестра схемThis Property is only considered if the [Schema Access Strategy] Property is set to one of the following values: [Schema Reference Reader], [Use 'Schema Name' Property] |
Schema Name | Указывает имя схемы для поиска в свойстве реестра схем Поддерживает язык выражений: true (будет оцениваться с использованием атрибутов файла потока и переменных среды)This Property is only considered if the [Schema Access Strategy] Property has a value of "Use 'Schema Name' Property". |
Schema Version | Указывает версию схемы для поиска в реестре схем. Если не указано, будет получена последняя версия схемы. Поддерживает язык выражений: true (будет оцениваться с использованием атрибутов файл а потока и переменных среды)This Property is only considered if the [Schema Access Strategy] Property has a value of "Use 'Schema Name' Property". |
Schema Branch | Указывает имя ветки, которую нужно использовать при поиске схемы в реестре схем. Если выбранный реестр схем не поддерживает ветки, это значение будет проигнорировано. Поддерживает язык выражений: true (будет оцениваться с использованием атрибутов файла потока и переменных среды)This Property is only considered if the [Schema Access Strategy] Property has a value of "Use 'Schema Name' Property". |
Schema Text | Текст схемы в формате Avro Поддерживает язык выражений: true (будет оцениваться с использованием атрибутов файла потока и переменных среды)This Property is only considered if the [Schema Access Strategy] Property has a value of "Use 'Schema Text' Property". |
Schema Reference Reader | Реализация сервиса, отвечающая за чтение атрибутов или содержимого FlowFile для определения идентификатора ссылки на схемуThis Property is only considered if the [Schema Access Strategy] Property has a value of "Schema Reference Reader". |
Schema Inference Cache | Specifies a Schema Cache to use when inferring the schema. If not populated, the schema will be inferred each time. However, if a cache is specified, the cache will first be consulted and if the applicable schema can be found, it will be used instead of inferring the schema.This Property is only considered if the [Schema Access Strategy] Property has a value of "Infer Schema". |
Starting Field Strategy | Начать обработку с корневого узла или с указанного вложенного узла. |
Starting Field Name | Позволяет перейти к заданному вложенному JSON-полю (массиву или объекту), чтобы начать обработку.This Property is only considered if the [Starting Field Strategy] Property has a value of "Nested Field". |
Schema Application Strategy | Specifies whether the schema is defined for the whole JSON or for the selected part starting from "Starting Field Name".This Property is only considered if all of the following conditions are met:The [Starting Field Strategy] Property has a value of "Nested Field".The [Schema Access Strategy] Property is set to one of the following values: [Schema Reference Reader], [Use 'Schema Name' Property], [Use 'Schema Text' Property] |
Max String Length | Максимально допустимая длина строкового значения при синтаксическом анализе документа JSON. |
Allow Comments | Разрешать ли комментарии при синтаксическом анализе документа JSON. |
Date Format | Указывает формат, который следует использовать при чтении/записи полей даты. Если не указано, поля даты будут считаться количеством миллисекунд с начала эпохи (полночь 1 января 1970 года по Гринвичу). Если указано, значение должно соответствовать простому формату даты Java (например, MM/dd/yyyy для двухзначного месяца, за которым следует двухзначный день, за которым следует четырёхзначный год, разделённые символами «/», как в 01/01/2017). |
Time Format | Указывает формат, используемый при чтении/записи полей времени. Если не указано, то поля Time будут содержать количество миллисекунд с начала эпохи (полночь 1 января 1970 года по Гринвичу). Если указано, то значение должно соответствовать формату Simple Date в Java (например, HH:mm:ss для двухзначного часа в 24-часовом формате, за которым следует двухзначная минута, за которой следует двухзначная секунда, разделенные символами ':', как в 18:04:15). |
Timestamp Format | Указывает формат, используемый при чтении/записи полей Timestamp. Если не указано, поля Timestamp будут считаться количеством миллисекунд с начала эпохи (полночь 1 января 1970 года по Гринвичу). Если указано, значение должно соответствовать формату Java Simple Date (например, MM/dd/yyyy HH:mm:ss для двухзначного месяца, за которым следует двухзначный день, за которым следует четырехз начный год, разделенные символами «/»; затем следует двухзначный час в 24-часовом формате, за которым следует двухзначная минута, за которой следует двухзначная секунда, разделенные символами «:», как в 01/01/2017 18:04:15). |