MergeContent 2025.5.31.15¶
Pacote¶
org.apache.nifi | nifi-standard-nar
Descrição¶
Mescla um grupo de FlowFiles com base em uma estratégia definida pelo usuário e os empacota em um único FlowFile. Recomenda-se que o processador seja configurado com apenas uma única conexão de entrada, pois o grupo de FlowFiles não será criado a partir de FlowFiles em conexões diferentes. Esse processador atualiza o atributo mime.type conforme apropriado. Observação: você não deve configurar esse processador com Cron Driven para a estratégia de agendamento.
Requisito de entrada¶
REQUIRED
Oferece suporte a propriedades dinâmicas confidenciais¶
falso
Propriedades¶
Propriedade |
Descrição |
---|---|
Estratégia de atributo |
Determina quais atributos do FlowFile devem ser adicionados ao pacote. Se a opção “Manter todos os atributos únicos” for selecionada, qualquer atributo em qualquer FlowFile que seja agrupado será mantido, a menos que seu valor entre em conflito com o valor de outro FlowFile. Se a opção “Manter todos os atributos únicos” for selecionada, somente os atributos existentes em todos os FlowFiles do pacote, com o mesmo valor, serão preservados. |
Verificação de término do compartimento |
Especifica uma expressão de linguagem de expressão que deve ser avaliada em cada FlowFile. Se o resultado da expressão for “verdadeira”, o compartimento ao qual o FlowFile corresponde será encerrado, mesmo que o compartimento não tenha atingido o número mínimo de entradas ou o tamanho mínimo. Observe que, se o FlowFile que aciona o encerramento do compartimento for maior do que o tamanho máximo do compartimento, ele será colocado em seu próprio compartimento sem acionar o encerramento de nenhum outro compartimento. Ao usar essa propriedade, é recomendável usar priorizadores nas conexões de fluxo para garantir que a ordenação seja a desejada. |
Nível de compressão |
Especifica o nível de compressão a ser usado ao usar o formato Zip Merge; se não estiver usando o formato Zip Merge, esse valor será ignorado |
Nome do atributo de correlação |
Se especificado, FlowFiles semelhantes serão agrupados, sendo que “semelhante a FlowFiles” significa FlowFiles que têm o mesmo valor para esse atributo. Se não for especificado, os FlowFiles serão agrupados pela ordem em que forem retirados da fila. |
Estratégia de delimitador |
Determina se cabeçalho, rodapé e demarcador devem apontar para arquivos que contêm o respectivo conteúdo ou se os valores das propriedades devem ser usados como conteúdo. |
Arquivo demarcador |
Nome de arquivo ou texto que especifica o demarcador a ser usado. Se não for especificado, nenhum demarcador será fornecido. |
Estratégia de inserção de FlowFile |
Se um determinado FlowFile encerrar o compartimento com base na propriedade <Verificação de término do compartimento>, especifica onde o FlowFile deve ser incluído no compartimento. |
Arquivo de rodapé |
Nome de arquivo ou texto que especifica o rodapé a ser usado. Se não for especificado, nenhum rodapé será fornecido. |
Arquivo de cabeçalho |
Nome de arquivo ou texto que especifica o cabeçalho a ser usado. Se não for especificado, nenhum cabeçalho será fornecido. |
Manter o caminho |
Se estiver usando o formato Zip ou Tar Merge, especifica se os caminhos dos FlowFiles devem ou não ser incluídos nos nomes das entradas. |
Idade máxima do compartimento |
A idade máxima de um compartimento que acionará um compartimento para ser concluído. O formato esperado é <duração> <unidade de tempo>, onde <duração> é um número inteiro positivo e a unidade de tempo é uma entre segundos, minutos e horas |
Tamanho máximo de grupo |
O tamanho máximo do pacote. Se não for especificado, não há máximo. |
Número máximo de entradas |
O número máximo de arquivos a serem incluídos em um pacote |
Número máximo de compartimentos |
Especifica o número máximo de compartimentos que podem ser mantidos na memória em um determinado momento |
Formato de mesclagem |
Determina o formato que será usado para mesclar o conteúdo. |
Estratégia de fusão |
Especifica o algoritmo usado para mesclar conteúdo. O algoritmo “Defragment” combina fragmentos associados por atributos em um único FlowFile coeso. O “Bin-Packing Algorithm” gera um FlowFile preenchido por FlowFiles |
Tamanho mínimo do grupo |
O tamanho mínimo do pacote |
Número mínimo de entradas |
O número mínimo de arquivos a serem incluídos em um pacote |
Hora da modificação do Tar |
Se estiver usando o formato Tar Merge, especifica se a entrada do Tar deve armazenar o carimbo de data/hora modificado por meio de expressão (por exemplo, ${file.lastModifiedTime} ou valor estático, sendo que ambos devem corresponder ao formato ISO8601 “yyyyy-MM-dd’T’HH:mm:ssZ”. |
mergecontent-metadata-strategy |
Para FlowFiles cujo formato de entrada é compatível com metadados (Avro, por exemplo), essa propriedade determina quais metadados devem ser adicionados ao pacote. Se a opção “Usar os primeiros metadados” for selecionada, serão usados os valores/chaves de metadados do primeiro FlowFile a ser agrupado. Se a opção “Manter apenas os metadados comuns” for selecionada, somente os metadados existentes em todos os FlowFiles do pacote, com o mesmo valor, serão preservados. Se a opção “Ignorar metadados” for selecionada, nenhum metadado será transferido para o FlowFile agrupado de saída. Se a opção “Não mesclar metadados incomuns” for selecionada, qualquer FlowFile cujos valores de metadados não correspondam aos do primeiro FlowFile agrupado não será mesclado. |
Relações¶
Nome |
Descrição |
---|---|
failure |
Se o pacote não puder ser criado, todos os FlowFiles usados para criar o pacote serão transferidos para a falha |
merged |
O FlowFile que contém o conteúdo mesclado |
original |
Os FlowFiles usados para criar o pacote |
Grava atributos¶
Nome |
Descrição |
---|---|
filename |
Quando mais de um arquivo é mesclado, o nome do arquivo vem do atributo segment.original.filename. Se esse atributo não existir nos FlowFiles de origem, o nome do arquivo será definido como o número de nanossegundos correspondente ao tempo do sistema. Em seguida, uma extensão de nome de arquivo pode ser aplicada: se Merge Format for TAR, o nome do arquivo será anexado a .tar; se Merge Format for ZIP, o nome do arquivo será anexado a .zip; e se Merge Format for FlowFileStream, o nome do arquivo será anexado a .pkg |
merge.count |
O número de FlowFiles mesclados nesse pacote |
merge.bin.age |
A idade do compartimento, em milissegundos, quando ele foi mesclado e gerado. Na verdade, esse é o maior período de tempo que qualquer FlowFile desse pacote permaneceu aguardando nesse processador antes de ser emitido |
merge.uuid |
UUID do FlowFile mesclado que será adicionado aos atributos dos FlowFiles originais. |
merge.reason |
Esse processador permite que vários limites sejam configurados para mesclar FlowFiles. Esse atributo indica qual dos limites fez com que os FlowFiles fossem mesclados. Para obter uma explicação de cada um dos valores possíveis e seus significados, consulte a documentação/uso do processador e a página “Detalhes adicionais”. |
Casos de uso¶
Concatene FlowFiles com conteúdo textual para criar um número menor de FlowFiles maiores. |
Concatene FlowFiles com conteúdo binário para criar um número menor de FlowFiles maiores. |
Remonte um FlowFile que foi previamente dividido em FlowFiles menores por um processador como SplitText, UnpackContext, SplitRecord etc. |