ValidateRecord 2025.5.31.15¶
Bundle¶
org.apache.nifi | nifi-standard-nar
Description¶
Valide les enregistrements d’un FlowFile entrant par rapport à un schéma donné. Tous les enregistrements qui respectent le schéma sont routés vers la relation « valide », tandis que les enregistrements qui ne respectent pas le schéma sont routés vers la relation « non valide ». Il est donc possible qu’un seul FlowFile entrant soit divisé en deux FlowFiles individuels si certains enregistrements sont valides selon le schéma et d’autres non. Tout FlowFile routé vers la relation « invalide » émettra un événement de provenance ROUTE avec le champ Détails rempli pour expliquer pourquoi les enregistrements n’étaient pas valides. En outre, pour obtenir des explications supplémentaires sur la raison pour laquelle les enregistrements sont invalides, il est possible d’activer la journalisation au niveau DEBUG pour le logger « org.apache.nifi.processors.standard.ValidateRecord ».
Exigences en matière d’entrées¶
REQUIRED
Prend en charge les propriétés dynamiques sensibles¶
false
Propriétés¶
Propriété |
Description |
---|---|
allow-extra-fields |
Si les données entrantes comportent des champs qui ne sont pas présents dans le schéma, cette propriété détermine si l’enregistrement est valide ou non. Si c’est le cas, l’enregistrement est toujours valide. S’il est faux, l’enregistrement sera invalide en raison des champs supplémentaires. |
coerce-types |
Si cette option est activée, le processeur contraindra chaque champ à respecter le type spécifié dans le schéma du lecteur. Si la valeur d’un champ ne peut pas être associée au type, le champ est ignoré (il n’est pas lu à partir des données d’entrée) et n’apparaît donc pas dans la sortie. Si cette option n’est pas activée, tous les champs apparaîtront dans la sortie, mais leurs types peuvent différer de ceux spécifiés dans le schéma. Pour plus de détails, veuillez consulter la page Détails supplémentaires de l’Aide processeur. Cette propriété contrôle la manière dont les données sont lues par le Record Reader spécifié. |
invalid-record-writer |
S’il est spécifié, ce Controller Service sera utilisé pour supprimer tous les enregistrements non valides. S’il n’est pas spécifié, le Record Writer indiqué par la propriété « Record Writer » sera utilisé avec le schéma ayant servi à lire les enregistrements d’entrée. Ceci est utile, par exemple, lorsque le Record Writer configuré ne peut pas écrire des données qui ne respectent pas son schéma (comme c’est le cas avec Avro) ou lorsqu’il est souhaitable de conserver les enregistrements invalides dans leur format d’origine tout en convertissant les enregistrements valides dans un autre format. |
maximum-validation-details-length |
Spécifie le nombre maximum de caractères que peut contenir la valeur des détails de validation. Tous les caractères au-delà de la limite maximale seront tronqués. Cette propriété n’est utilisée que si “Validation Details Attribute Name” est défini. |
record-reader |
Spécifie le Controller Service à utiliser pour la lecture des données entrantes |
record-writer |
Indique le Controller Service à utiliser pour l’extraction des enregistrements. Quelle que soit la configuration de l’accès au schéma du Controller Service, le schéma utilisé pour valider l’enregistrement est également utilisé pour écrire les résultats valides. |
schema-access-strategy |
Spécifie comment obtenir le schéma qui doit être utilisé pour valider les enregistrements. |
schema-branch |
Spécifie le nom de la branche à utiliser lors de la recherche du schéma dans la propriété Schema Registry. Si le registre de schémas choisi ne prend pas en charge la ramification, cette valeur sera ignorée. |
schema-name |
Spécifie le nom du schéma à rechercher dans la propriété Schema Registry |
schema-registry |
Spécifie le Controller Service à utiliser pour le registre des schémas |
schema-text |
Le texte d’un schéma formaté par Avro |
schema-version |
Spécifie la version du schéma à rechercher dans le registre des schémas. Si elle n’est pas spécifiée, c’est la dernière version du schéma qui sera récupérée. |
strict-type-checking |
Si les données entrantes comportent un enregistrement dont un champ n’est pas du bon type, cette propriété détermine comment traiter l’enregistrement. Si “true”, l’enregistrement sera considéré comme invalide. Si “false”, l’enregistrement sera considéré comme valide et le champ sera converti au type correct (si possible, selon la conversion de type prise en charge par le Record Writer). Cette propriété contrôle la manière dont les données sont validées par rapport au schéma de validation. |
validation-details-attribute-name |
Si spécifié, lorsqu’une erreur de validation se produit, le nom de cet attribut sera utilisé pour enregistrer les détails. Le nombre de caractères est limité par la propriété “Maximum Validation Details Length”. |
Relations¶
Nom |
Description |
---|---|
failure |
Si les enregistrements ne peuvent pas être lus, validés ou écrits, pour quelque raison que ce soit, le FlowFile original sera routé vers cette relation. |
invalid |
Les enregistrements qui ne sont pas valides selon le schéma seront routés vers cette relation. |
valid |
Les enregistrements valides selon le schéma seront routés vers cette relation |
Écrit les attributs¶
Nom |
Description |
---|---|
mime.type |
Définit l’attribut mime.type sur le type MIME spécifié par le Record Writer |
record.count |
Le nombre d’enregistrements dans le FlowFile routé vers une relation. |