JoinEnrichment 2025.5.31.15¶
Bundle¶
org.apache.nifi | nifi-standard-nar
Beschreibung¶
Fügt Datensätze aus zwei verschiedenen FlowFiles zusammen, wobei ein FlowFile, das „Original“, beliebige Datensätze enthält und das zweite FlowFile, die „Anreicherung“, zusätzliche Daten enthält, die zur Anreicherung des ersten verwendet werden sollen. Weitere Informationen zur Konfiguration dieses Prozessors und zu den verschiedenen Anwendungsfällen, für die er vorgesehen ist, finden Sie unter „Weitere Details“.
Eingabeanforderung¶
REQUIRED
Unterstützt sensible dynamische Eigenschaften¶
false
Eigenschaften¶
Eigenschaft |
Beschreibung |
---|---|
Enrichment Record Reader |
Der Record Reader zum Lesen des „Anreicherungs“-FlowFile |
Insertion Record Path |
Gibt an, an welcher Stelle im „Original“-Datensatz die Felder des „Erweiterungs“-Datensatzes eingefügt werden sollen. Beachten Sie, dass die Anreicherung nicht eingefügt wird, wenn die RecordPath auf kein bestehendes Feld im ursprünglichen Datensatz verweist. |
Join Strategy |
Gibt an, wie die beiden FlowFiles zu einem einzigen FlowFile zusammengefügt werden. |
Maximale Anzahl von Bins |
Gibt die maximale Anzahl von Bins an, die gleichzeitig im Speicher gehalten werden können |
Original Record Reader |
Der Record Reader zum Lesen des Original-FlowFile |
Record Writer |
Der Record Writer, der zum Schreiben der Ergebnisse verwendet wird. Wenn der Record Writer so konfiguriert ist, dass er das Schema vom Datensatz erbt, ist das Schema, das er erbt, das Ergebnis der Verschmelzung des „Original“-Datensatzschemas und des „Anreicherungs“-Datensatzschemas. |
SQL |
Die zu bewertende SQL SELECT-Anweisung. Expression Language kann bereitgestellt werden, aber dies kann zu einer schlechteren Leistung führen. Da dieser Prozessor mit zwei FlowFiles gleichzeitig arbeitet, ist es auch wichtig zu verstehen, wie die Attribute referenziert werden. Wenn beide FlowFiles ein Attribut mit demselben Namen, aber unterschiedlichen Werten haben, löst die Expression Language den Wert auf, der vom „enrichment“-FlowFile bereitgestellt wird. |
Timeout |
Gibt an, wie lange maximal auf das zweite FlowFile gewartet werden soll, sobald das erste beim Prozessor eintrifft. Danach wird das erste FlowFile an die Beziehung „timeout“ weitergeleitet. |
dbf-default-precision |
Wenn ein DECIMAL-/NUMBER- Wert als Avro-Logik-Typ „decimal“ geschrieben wird, ist eine bestimmte „precision“ (Genauigkeit) erforderlich, die die Anzahl der verfügbaren Ziffern angibt. Im Allgemeinen wird die Genauigkeit durch die Datentypdefinition der Spalte oder die Standardeinstellung der Datenbank-Engine festgelegt. Allerdings kann von einigen Datenbank-Engines eine undefinierte Genauigkeit (0) zurückgegeben werden. „Default Decimal Precision“ wird beim Schreiben dieser Zahlen mit undefinierter Genauigkeit verwendet. |
dbf-default-scale |
Wenn ein DECIMAL-/NUMBER-Wert als Avro-Logik-Typ „decimal“ geschrieben wird, ist eine bestimmte „scale“ (Skalierung) erforderlich, die die Anzahl der verfügbaren Dezimalstellen angibt. Im Allgemeinen wird die Skalierung durch die Datentypdefinition der Spalte oder die Standardeinstellung der Datenbank-Engine festgelegt. Wenn jedoch eine undefinierte Genauigkeit (0) zurückgegeben wird, kann die Skalierung bei einigen Datenbank-Engines ebenfalls ungewiss sein. „Default Decimal Scale“ wird beim Schreiben dieser undefinierten Zahlen verwendet. Wenn ein Wert mehr Dezimalstellen hat als in der angegebenen Skalierung, wird der Wert gerundet, z. B. wird 1,53 bei einer Skalierung von 0 zu 2 und bei einer Skalierung von 1 zu 1,5. |
Beziehungen¶
Name |
Beschreibung |
---|---|
failure |
Wenn sowohl das „original“- als auch die „enrichment“-FlowFiles beim Prozessor ankommen, aber ein Fehler beim Zusammenfügen der Datensätze aufgetreten ist, werden beide FlowFiles an diese Beziehung weitergeleitet. |
joined |
Das Ergebnis-FlowFile mit Datensätzen, die sowohl aus dem Original- als auch aus dem angereicherten FlowFiles zusammengefügt wurden, wird an diese Beziehung weitergeleitet. |
original |
Beide eingehenden FlowFiles („original“ und „enrichment“) werden an diese Beziehung weitergeleitet. D. h., dies ist die „Original“-Version dieser beiden FlowFiles. |
timeout |
Wenn eines der eingehenden FlowFiles (d. h. das „ursprüngliche“ FlowFile oder das „enrichment“-FlowFile) bei diesem Prozessor eintrifft, das andere aber nicht innerhalb der konfigurierten Timeout-Periode eintrifft, wird das eingetroffene FlowFile 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 |