ValidateRecord 2025.10.2.19

Bundle

org.apache.nifi | nifi-standard-nar

Description

Validates the Records of an incoming FlowFile against a given schema. All records that adhere to the schema are routed to the « valid » relationship while records that do not adhere to the schema are routed to the « invalid » relationship. It is therefore possible for a single incoming FlowFile to be split into two individual FlowFiles if some records are valid according to the schema and others are not. Any FlowFile that is routed to the « invalid » relationship will emit a ROUTE Provenance Event with the Details field populated to explain why records were invalid. In addition, to gain further explanation of why records were invalid, DEBUG-level logging can be enabled for the « org.apache.nifi.processors.standard. ValidateRecord » logger.

Balises

record, schema, validate

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

If enabled, the processor will coerce every field to the type specified in the Reader “s schema. If the value of a field cannot be coerced to the type, the field will be skipped (will not be read from the input data), thus will not appear in the output. If not enabled, then every field will appear in the output but their types may differ from what is specified in the schema. For details please see the Additional Details page of the processor’s Help. This property controls how the data is read by the specified Record Reader.

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.