MergeRecord
Описание
Этот процессор объединяет несколько FlowFile, ориентированных на запись, в один FlowFile, содержащий все записи входных FlowFile. Процессор работает, создавая "корзины" и добавляя FlowFile в эти корзины до тех пор, пока корзина не будет заполнена. Как только корзина заполнена, все FlowFile объединяются в один выходной FlowFile, и этот FlowFile направляется в отношение 'merged'. Корзина может содержать множество одинаковых FlowFile. Чтобы два FlowFile считались одинаковыми, они должны иметь одинаковую схему (как определено Record Reader) и, если установлено свойство <Correlation Attribute Name>, одинаковое значение для указанного атрибута. Смотрите раздел Processor Usage и Additional Details для получения дополнительной информации. Примечание: этот процессор не должен быть настроен с Cron Driven для стратегии планирования.
Теги
merge, record, content, correlation, stream, event
Свойства
Название | Описание |
---|---|
Record Reader | Указывает службу контроллера для чтения входящих данных |
Record Writer | Указывает службу контроллера для записи данных |
Merge Strategy | Указывает алгоритм, используемый для объединения записей. Алгоритм «Объединение фрагментов» объединяет фрагменты, связанные атрибутами, в единый связный файл Flow. Алгоритм «Упаковка в контейнеры» генерирует файл Flow, заполненный произвольно выбранными файлами Flow. |
Correlation Attribute Name | Если указано, два файла Flow будут объединены в один контейнер, только если у них одинаковое значение этого атрибута. Если не указано иное, файлы Flow объединяются в пакеты в том порядке, в котором они извлекаются из очереди. |
Attribute Strategy | Определяет, какие атрибуты FlowFile следует добавить в пакет. Если выбрано «Сохранить все уникальные атрибуты», то любой атрибут любого FlowFile, который будет добавлен в пакет, будет сохранен, если только его значение не конфликтует со значением из другого FlowFile. Если выбрано «Сохранить только общие атрибуты», то будут сохранены только атрибуты, которые существуют во всех FlowFile в пакете и имеют одинаковое значение. |
Minimum Number of Records | Минимальное количество записей для включения в корзину. Поддерживает язык выражений: true (будет оцениваться только с использованием переменных среды) |
Maximum Number of Records | Максимальное количество записей для включения в корзину. Это «мягкое ограничение» в том смысле, что если в корзину добавляется файл FlowFIle, то добавляются все записи из этого файла FlowFile, поэтому это ограничение может быть превышено на количество записей в последнем входном файле FlowFile. Поддерживает язык выражений: true (будет оцениваться только с использованием переменных среды) |
Minimum Bin Size | Минимальный размер пакета. |
Maximum Bin Size | Максимальный размер пакета. Если не указано иное, максимальный размер не ограничен. Это «мягкий лимит», то есть если в корзину добавляется файл FlowFile, то добавляются все записи из этого файла FlowFile, поэтому этот лимит может быть превышен на количество байт в последнем входном файле FlowFile. |
Max Bin Age | Максимальный возраст корзины, по достижении которого корзина будет считаться завершенной. Ожидаемый формат: <продолжительность> <единица измерения времени>, где <продолжительность> — положительное целое число, а единица измерения времени — секунды, минуты, часы. |
Maximum Number of Bins | Указывает максимальное количество корзин, которые могут одновременно находиться в памяти. Это число не должно быть меньше максимального количества одновременно выполняемых потоков для этого процессора, иначе создаваемые корзины часто будут состоять только из одного входящего файла FlowFile. |
Взаимосвязи
- failure: Если пакет не может быть создан, все файлы Flow, которые использовались бы для создания пакета, буд ут перенесены в раздел «Ошибка»
- original: Файлы потока, которые использовались для создания пакета
- merged: Файл потока, содержащий объединенные записи