ValidateRecord 2025.5.31.15¶
Bundle¶
org.apache.nifi | nifi-standard-nar
Beschreibung¶
Überprüft die Datensätze eines eingehenden FlowFile anhand eines bestimmten Schemas. Alle Datensätze, die dem Schema entsprechen, werden an die Beziehung „vaild“ weitergeleitet, während Datensätze, die dem Schema nicht entsprechen, an die „ungültige“ Beziehung weitergeleitet werden. Es ist daher möglich, dass ein einzelner eingehender FlowFile in zwei einzelne FlowFiles aufgeteilt wird, wenn einige Datensätze gemäß dem Schema gültig sind und andere nicht. Jedes FlowFile, das an die Beziehung „invalid“ weitergeleitet wird, sendet ein ROUTE Provenance Event mit dem Feld „Details“, um zu erklären, warum die Datensätze ungültig waren. Um weitere Erklärungen dafür zu erhalten, warum Datensätze ungültig waren, kann außerdem der Protokolliergrad DEBUGfür den Logger „org.apache.nifi.processors.standard.ValidateRecord“ aktiviert werden.
Eingabeanforderung¶
REQUIRED
Unterstützt sensible dynamische Eigenschaften¶
false
Eigenschaften¶
Eigenschaft |
Beschreibung |
---|---|
allow-extra-fields |
Wenn die eingehenden Daten Felder enthalten, die nicht im Schema vorhanden sind, bestimmt diese Eigenschaft, ob der Datensatz gültig ist oder nicht. Wenn ja, ist der Datensatz noch gültig. Bei „false“ ist der Datensatz aufgrund der zusätzlichen Felder ungültig. |
coerce-types |
Wenn diese Option aktiviert ist, zwingt der Prozessor jedes Feld in den Typ, der im Schema des Readers angegeben ist. Wenn der Wert eines Feldes nicht dem Typ zugeordnet werden kann, wird das Feld übersprungen (es wird nicht aus den Eingabedaten gelesen) und erscheint daher nicht in der Ausgabe. Wenn diese Option nicht aktiviert ist, werden alle Felder in der Ausgabe angezeigt, ihre Typen können jedoch von den im Schema angegebenen Typen abweichen. Einzelheiten finden Sie auf der Seite „Weitere Details“ in der Hilfe des Prozessors. Diese Eigenschaft steuert, wie die Daten von dem angegebenen Record Reader gelesen werden. |
invalid-record-writer |
Falls angegeben, wird dieser Controller Service verwendet, um alle ungültigen Datensätze zu löschen. Wenn nicht angegeben, wird der Writer, der in der Eigenschaft „Record Writer“ angegeben ist, mit dem Schema verwendet, das zum Lesen der Eingabedatensätze verwendet wird. Dies ist beispielsweise nützlich, wenn der konfigurierte Record Writer keine Daten schreiben kann, die nicht seinem Schema entsprechen (wie bei Avro), oder wenn es wünschenswert ist, ungültige Datensätze in ihrem ursprünglichen Format beizubehalten, während gültige Datensätze in ein anderes Format konvertiert werden. |
maximum-validation-details-length |
Gibt die maximale Anzahl von Zeichen an, die der Wert für die Validierungsdetails enthalten darf. Alle Zeichen, die über das Maximum hinausgehen, werden abgeschnitten. Diese Eigenschaft wird nur verwendet, wenn „Validation Details Attribute Name“ festgelegt ist. |
record-reader |
Gibt den Controller Service an, der zum Lesen eingehender Daten verwendet werden soll |
record-writer |
Gibt den Controller Service an, der für das Schreiben der Datensätze verwendet werden soll. Unabhängig von der Schemazugriffskonfiguration des Controller Service wird das Schema, das zur Validierung von Datensätzen verwendet wird, auch zum Schreiben der gültigen Ergebnisse verwendet. |
schema-access-strategy |
Gibt an, wie Sie das Schema abrufen, das für die Überprüfung von Datensätzen verwendet werden soll. |
schema-branch |
Gibt den Namen des Zweigs an, der beim Suchen des Schemas in der Eigenschaft „Schema Registry“ verwendet werden soll. Wenn die gewählte „Schema Registry“ keine Verzweigungen unterstützt, wird dieser Wert ignoriert. |
schema-name |
Gibt den Namen des Schemas an, das in der Eigenschaft Schema Registry gesucht werden soll. |
schema-registry |
Gibt den Controller Service an, der für die Schema Registry verwendet werden soll |
schema-text |
Der Text eines Avro-formatierten Schemas |
schema-version |
Gibt die Version des Schemas an, die in der Schema Registry gesucht werden soll. Wenn nicht angegeben, wird die neueste Version des Schemas abgerufen. |
strict-type-checking |
Wenn die eingehenden Daten einen Datensatz enthalten, bei dem ein Feld nicht vom richtigen Typ ist, bestimmt diese Eigenschaft, wie der Datensatz behandelt werden soll. Bei „true“ wird der Datensatz als ungültig betrachtet. Bei „false“ wird der Datensatz als gültig betrachtet und das Feld wird in den richtigen Typ umgewandelt (wenn möglich, gemäß der vom Record Writer unterstützten Typumwandlung). Diese Eigenschaft steuert, wie die Daten anhand des Validierungsschemas validiert werden. |
validierung-details-attribut-name |
Wenn angegeben, wird dieser Attributname verwendet, um die Details zu hinterlassen, wenn ein Validierungsfehler auftritt. Die Anzahl der Zeichen wird durch die Eigenschaft „Maximum Validation Details Length“ begrenzt. |
Beziehungen¶
Name |
Beschreibung |
---|---|
failure |
Wenn die Datensätze aus irgendeinem Grund nicht gelesen, validiert oder geschrieben werden können, wird das OriginalFlowFile an diese Beziehung weitergeleitet. |
invalid |
Datensätze, die nach dem Schema nicht gültig sind, werden an diese Beziehung weitergeleitet. |
gültig |
Datensätze, die gemäß dem Schema gültig sind, werden an diese Beziehung weitergeleitet. |
Schreibt Attribute¶
Name |
Beschreibung |
---|---|
mime.type |
Setzt das Attribut „mime.type“ auf den vom Record Writer angegebenen MIME-Typ |
record.count |
Die Anzahl der Datensätze im FlowFile, die an eine Beziehung weitergeleitet wurden |