Apache NiFi - Prozessor-Beziehung
In einem Apache NiFi-Datenfluss werden Flussdateien über eine Verbindung, die anhand einer Beziehung zwischen Prozessoren überprüft wird, von einem Prozessor zu einem anderen Prozessor verschoben. Immer wenn eine Verbindung hergestellt wird, wählt ein Entwickler eine oder mehrere Beziehungen zwischen diesen Prozessoren aus.
Wie Sie im obigen Bild sehen können, sind die Kontrollkästchen im schwarzen Rechteck Beziehungen. Wenn ein Entwickler diese Kontrollkästchen aktiviert, wird die Flussdatei in diesem bestimmten Prozessor beendet, wenn die Beziehung erfolgreich ist oder fehlschlägt oder beides.
Erfolg
Wenn ein Prozessor eine Flussdatei wie das Speichern oder Abrufen von Daten aus einer Datenquelle erfolgreich verarbeitet, ohne eine Verbindung, Authentifizierung oder einen anderen Fehler zu erhalten, wechselt die Flussdatei zur Erfolgsbeziehung.
Fehler
Wenn ein Prozessor eine Flussdatei nicht ohne Fehler wie Authentifizierungsfehler oder Verbindungsprobleme usw. verarbeiten kann, geht die Flussdatei in eine Fehlerbeziehung über.
Ein Entwickler kann die Flussdateien auch über Verbindungen auf andere Prozessoren übertragen. Der Entwickler kann es auswählen und auch ausgleichen. Der Lastausgleich wird jedoch erst in Version 1.8 veröffentlicht, die in diesem Lernprogramm nicht behandelt wird.
Wie Sie im obigen Bild sehen können, weist die rot markierte Verbindung eine Fehlerbeziehung auf. Dies bedeutet, dass alle fehlerhaften Flussdateien links an den Prozessor gesendet werden und alle fehlerfreien Flussdateien an die grün markierte Verbindung übertragen werden.
Fahren wir nun mit den anderen Beziehungen fort.
comms.failure
Diese Beziehung ist erfüllt, wenn eine Flow-Datei aufgrund eines Kommunikationsfehlers nicht vom Remote-Server abgerufen werden konnte.
nicht gefunden
Alle Flowfiles, für die wir vom Remote-Server die Nachricht "Nicht gefunden" erhalten, werden nach verschoben not.found Beziehung.
Erlaubnis verweigert
Wenn NiFi aufgrund unzureichender Berechtigungen keine Flussdatei vom Remoteserver abrufen kann, wird diese Beziehung durchlaufen.