MergeContent 2025.10.2.19¶
Bundle¶
org.apache.nifi | nifi-standard-nar
Description¶
Fusionne un groupe de FlowFiles sur la base d’une stratégie définie par l’utilisateur et les regroupe en un seul FlowFile. Il est recommandé de configurer le Processeur avec une seule connectivité entrante, car le groupe des FlowFiles ne sera pas créé à partir de FlowFiles dans des connexions différentes. Ce processeur met à jour l’attribut mime.type le cas échéant. NOTE : ce processeur ne doit PAS être configuré avec Cron Driven comme Stratégie de planification.
Exigences en matière d’entrées¶
REQUIRED
Prend en charge les propriétés dynamiques sensibles¶
false
Propriétés¶
Propriété |
Description |
|---|---|
Attribute Strategy |
Détermine quels attributs du FlowFile doivent être ajoutés au bundle. Si “Keep All Unique Attributes” est sélectionné, tout attribut présent sur un FlowFile bundlé sera conservé, sauf si sa valeur est en conflit avec celle provenant d’un autre FlowFile. Si “Keep Only Common Attributes” est sélectionné, seuls les attributs présents sur tous les FlowFiles du groupe, avec la même valeur, seront conservés. |
Bin Termination Check |
Specifies an Expression Language Expression that is to be evaluated against each FlowFile. If the result of the expression is “true”, the bin that the FlowFile corresponds to will be terminated, even if the bin has not met the minimum number of entries or minimum size. Note that if the FlowFile that triggers the termination of the bin is itself larger than the Maximum Bin Size, it will be placed into its own bin without triggering the termination of any other bin. When using this property, it is recommended to use Prioritizers in the flow’s connections to ensure that the ordering is as desired. |
Compression Level |
Spécifie le niveau de compression à utiliser lors de l’utilisation du Zip Merge Format ; si le Zip Merge Format n’est pas utilisé, cette valeur est ignorée. |
Correlation Attribute Name |
Si elle est spécifiée, les FlowFiles similaires seront regroupés dans le même bac, où “like FlowFiles” signifie des FlowFiles ayant la même valeur pour cet attribut. Si elle n’est pas spécifiée, les FlowFiles sont bundlés selon l’ordre dans lequel ils sont extraits de la file d’attente. |
Delimiter Strategy |
Détermine si l’en-tête, le pied de page et le Demarcator doivent pointer vers des fichiers contenant le contenu correspondant, ou si les valeurs des propriétés doivent être utilisées comme contenu. |
Demarcator File |
Nom de fichier ou texte spécifiant le démarcateur à utiliser. S’il n’est pas spécifié, aucun Demarcator n’est fourni. |
FlowFile Insertion Strategy |
Si un FlowFile donné ferme le bac en fonction de la propriété <Bin Termination Check>, spécifie où le FlowFile doit être inclus dans le bac. |
Footer File |
Nom de fichier ou texte spécifiant le pied de page à utiliser. S’il n’est pas spécifié, aucun pied de page n’est fourni. |
Header File |
Nom de fichier ou texte spécifiant l’en-tête à utiliser. S’il n’est pas spécifié, aucun en-tête n’est fourni. |
Keep Path |
Si vous utilisez le format de fusion Zip ou Tar, spécifie si les chemins des FlowFiles doivent ou non être inclus dans leurs noms d’entrée. |
Max Bin Age |
Âge maximal d’un bac qui entraînera la complétion d’un bac. Le format attendu est <duration> <time unit>, où <duration> est un entier positif et où <time unit> est l’une des unités suivantes : secondes, minutes, heures. |
Maximum Group Size |
La taille maximale de la bundle. Si elle n’est pas spécifiée, aucune limite n’est appliquée. |
Maximum Number of Entries |
Le nombre maximum de fichiers à inclure dans une bundle |
Nombre maximal de bacs |
Spécifie le nombre maximum de bacs qui peuvent être conservés en mémoire à un moment donné |
Merge Format |
Détermine le format qui sera utilisé pour fusionner le contenu. |
Merge Strategy |
Spécifie l’algorithme utilisé pour fusionner le contenu. L’algorithme “Defragment” combine les fragments associés par attributs en un FlowFile unique et cohérent. L’algorithme “Bin-Packing Algorithm” génère un FlowFile rempli par des FlowFiles choisis de manière arbitraire. |
Minimum Group Size |
La taille minimale de la bundle |
Minimum Number of Entries |
Le nombre minimum de fichiers à inclure dans une bundle |
Tar Modified Time |
If using the Tar Merge Format, specifies if the Tar entry should store the modified timestamp either by expression (e.g. ${file.lastModifiedTime} or static value, both of which must match the ISO8601 format “yyyy-MM-dd’T “HH:mm:ssZ”. |
mergecontent-metadata-strategy |
Pour les FlowFiles dont le format d’entrée prend en charge les métadonnées (par ex. Avro), cette propriété détermine quelles métadonnées doivent être ajoutées au bundle. Si “Use First Metadata” est sélectionné, les clés/valeurs de métadonnées du premier FlowFile à bundler seront utilisées. Si “Keep Only Common Metadata” est sélectionné, seules les métadonnées présentes sur tous les FlowFiles du bundle, avec la même valeur, seront conservées. Si “Ignore Metadata” est sélectionné, aucune métadonnée n’est transférée vers le FlowFile bundlé sortant. Si “Do Not Merge Uncommon Metadata” est sélectionné, tout FlowFile dont les valeurs de métadonnées ne correspondent pas à celles du premier FlowFile bundlé ne sera pas fusionné. |
Relations¶
Nom |
Description |
|---|---|
failure |
Si le bundle ne peut pas être créé, tous les FlowFiles qui auraient servi à créer le bundle seront routés vers failure. |
merged |
Le FlowFile contenant le contenu fusionné |
original |
Les FlowFiles qui ont été utilisés pour créer la bundle |
Écrit les attributs¶
Nom |
Description |
|---|---|
filename |
Lorsque plus d’un fichier est fusionné, le nom de fichier provient de l’attribut segment.original.filename. Si cet attribut n’existe pas dans le FlowFiles source, le nom de fichier est défini sur le nombre de nanosecondes correspondant à l’heure système. Une extension de nom de fichier peut ensuite être appliquée : si Merge Format est TAR, le nom de fichier sera suffixé par .tar ; si Merge Format est ZIP, il sera suffixé par .zip ; si Merge Format est FlowFileStream, il sera suffixé par .pkg. |
merge.count |
Le nombre de FlowFiles qui ont été fusionnés dans ce bundle |
merge.bin.age |
L’âge du bac, en millisecondes, au moment de sa fusion et de sa sortie. Il s’agit en pratique de la durée maximale pendant laquelle un FlowFile de ce bundle est resté en attente dans ce processeur avant d’être envoyé en sortie. |
merge.uuid |
UUID du FlowFile fusionné qui sera ajouté aux attributs des FlowFiles originaux. |
merge.reason |
Ce processeur permet de configurer plusieurs seuils pour la fusion de FlowFiles. Cet attribut indique lequel des seuils a entraîné la fusion de FlowFiles. Pour une explication de chacune des valeurs possibles et de leur signification, reportez-vous à la documentation / Utilisation du processeur et à la page “Détails supplémentaires”. |
Cas d’utilisation¶
Concaténer FlowFiles avec du contenu textuel afin de créer des FlowFiles moins nombreux et plus volumineux. |
Concaténer FlowFiles avec un contenu binaire afin de créer un plus petit nombre de FlowFiles. |
Réassembler un FlowFile qui a été précédemment fractionné en plusieurs FlowFiles par un processeur tel que SplitText, UnpackContext, SplitRecord, etc. |