Streams
Verwenden Sie die Seite "Streams", um Jobs zu verwalten, die kontinuierlich ausgeführt werden sollen. Wenn ein Job als Stream ausgeführt wird, wird er automatisch neu gestartet, unabhängig davon, ob der Job erfolgreich abgeschlossen wurde, fehlgeschlagen ist oder der Server abgestürzt ist oder heruntergefahren wurde.
Von Streams betriebene Workspaces verfügen normalerweise über eine Ereigniswarteschlange oder einen Nachrichtenbroker als Quelle. Nachrichten werden von Transformern wie AzureQueueStorageConnector oder KafkaConnector verarbeitet, die im Modus: Stream ausgeführt werden können. Der Stream ermöglicht Ihnen die Integration und Analyse von Daten in Echtzeit, während sie produziert werden. Im Stream-Modus gibt es keinen Overhead für das Starten und Stoppen von Jobs, was bedeutet, dass eine sehr hohe Datenmenge mit geringer Latenz verarbeitet werden kann.
Streams bieten die folgenden zusätzlichen Vorteile gegenüber der kontinuierlichen Ausführung von Jobs über andere Schnittstellen:
- Wenn Sie einen Stream erstellen, werden die FME Engines, die Sie zur Ausführung seiner Jobs zuweisen, diesem Stream zugeordnet.
- Sie können den Verarbeitungsdurchsatz skalieren, indem Sie Jobs aus demselben Workspace gleichzeitig von mehreren Engines ausführen. Die Anzahl der Jobs, die ein Stream ausführt, entspricht der Anzahl der dem Stream zugewiesenen Engines.
- Sie können einen Stream konfigurieren und ihn dann anhalten.
- Auf der Seite "Streams" werden alle kontinuierlich ausgeführten Jobs angezeigt, so dass Sie diese bequem an einem Ort verwalten können.
Erste Schritte mit Streams
Um einen Stream zu erstellen, wählen Sie Streams > Stream erstellen. Oder wählen Sie Streams > Streams verwalten und klicken Sie auf Erstellen.
- Füllen Sie die folgenden Felder aus:
- Name: Geben Sie einen Namen für den Stream an.
- Beschreibung: (Optional) Geben Sie eine aussagekräftige Beschreibung des Streams an, z. B. den Workspace, den er ausführt, und warum er kontinuierlich laufen soll. Verwenden Sie bei Bedarf die Markdown-Werkzeuge.
- Repository: Geben Sie das Repository an, das den Workspace enthält, den Sie kontinuierlich ausführen möchten.
- Workspace: Geben Sie den Workspace an, der kontinuierlich ausgeführt werden soll.
- Offengelegte Parameter: Wenn der Workspace über offengelegte Parameter verfügt, geben Sie diese hier an.
- Klicken Sie auf OK.
- Es wird eine Seite geöffnet, die die Eigenschaften des von Ihnen erstellten Streams zusammenfasst. Der Stream ist bereit zur Ausführung, sobald Sie FME Engines zur Ausführung der Jobs zuweisen. Wenn Sie nicht wollen, dass der Stream sofort ausgeführt wird, klicken Sie auf Anhalten.
- Um FME Engines zur Ausführung der mit dem Stream verbundenen Jobs zuzuweisen, klicken Sie unter "Zugewiesene Engines" auf Verwalten. Wenn Sie einem Stream Engines zuweisen, sollten Sie Folgendes beachten:
- Durch das Zuweisen mehrerer Engines können Sie den Verarbeitungsdurchsatz skalieren, indem Sie denselben Job gleichzeitig ausführen. Die Anzahl der Jobs, die ein Stream ausführt, entspricht der Anzahl der dem Stream zugewiesenen Engines.
- Sie können nur Engines zuweisen, die nicht bereits anderen Streams zugewiesen sind.
- Wenn die FME Engines, die Sie für den Stream angeben, zu irgendwelchen Warteschlangen gehören, werden sie aus diesen Warteschlangen entfernt, so dass sie dem Stream zugeordnet sind.
- Wenn eine Engine von FME Flow getrennt wird (z.B. wenn ein Rechner, der eine separate FME Engine hostet, abstürzt), geht jeder laufende Job in einen Warteschlangen-Zustand über und wird an die Engine zurückgegeben, sobald sie wieder verfügbar ist.
- Geben Sie im Dialogfeld "Engine-Regel verwalten" Folgendes an:
- Typ : Gibt an, wie dem Stream FME Engines zugewiesen werden:
- Name: Die Engines werden dem Stream über den Engine-Namen zugewiesen.
- Eigenschaft: Engines werden dem Stream basierend auf ihren Eigenschaften zugewiesen.
- Engines: Wenn Typ auf Name gesetzt ist, wählen Sie eine oder mehrere Engines nach Namen aus, um sie dem Stream zuzuweisen.
- Regel: Wenn Typ auf Eigenschaft gesetzt ist, verwenden Sie boolesche Logik, um die Eigenschaften anzugeben, die bestimmen, wie Engines dem Stream zugewiesen werden.
- Dynamisch: FME Engines-Lizenztyp ist Dynamisch.
- Standard: FME Engines-Lizenztyp ist Standard.
- Physischer Speicher des Engine-Hosts: Menge an RAM auf dem Rechner, der eine FME Engine hostet.
- Prozessoranzahl des Engine-Hosts: Berechnet als: (Anzahl der CPUs) x (Anzahl der Kerne) x (Anzahl der Hyperthreads) auf dem Rechner, der eine FME Engine hostet.
Die folgenden Eigenschaften sind ohne manuelle Eingabe auswählbar:
Erweitern für Eigenschaften
Um eine dieser Eigenschaften hinzuzufügen, klicken Sie auf + Regel und wählen Sie sie aus.
Darüber hinaus können Sie auf der Registerkarte Engines weitere Engine-Eigenschaften hinzufügen, z. B. den Namen oder das Betriebssystem des Host-Rechners. Um der Dropdown-Liste Regel weitere Eigenschaften hinzuzufügen, klicken Sie auf + Eigenschaft erstellen. Geben Sie neben Typ die Option Benutzerdefiniert an und geben Sie eine Eigenschaft genau so ein, wie sie auf der Registerkarte Engines erscheint.
Sobald Sie eine Eigenschaft angeben, wird die Regel unter dem Dropdown-Menü Regel angezeigt. Um weitere Eigenschaften hinzuzufügen, klicken Sie auf + Regel. Um Eigenschaften in der Regel zu verschachteln, klicken Sie auf + Regelsatz.
Um beispielsweise eine beliebige Dynamic Engine auf dem Server WHISTLER (eine benutzerdefinierte Eigenschaft) anzugeben, geben Sie Dynamic AND WHISTLER an.
Klicken Sie abschließend auf OK.
- Typ : Gibt an, wie dem Stream FME Engines zugewiesen werden:
- Sobald Sie einem Stream Engines zuweisen, beginnt er zu laufen, sofern Sie ihn nicht vorher angehalten haben. Wenn Sie bereit sind, den Stream auszuführen, klicken Sie auf Start; oder wählen Sie auf der Seite "Streams verwalten" den Stream aus und klicken Sie auf Aktionen > Starten.
Verwalten von Streams
Wählen Sie Streams > Streams verwalten.
So starten, stoppen oder entfernen Sie Streams
Wählen Sie die Streams aus, klicken Sie auf Aktionen, und wählen Sie Starten, Anhalten, bzw. Entfernen.
Wenn ein Stream gestoppt wird, sendet der zugehörige Workspace keine Jobs an den Stream. Alle Jobs, die sich in der Warteschlange befinden oder ausgeführt werden, werden abgebrochen.
So zeigen Sie die laufenden oder in der Warteschlange befindlichen Jobs über einen Stream an
Klicken Sie auf den Stream, um ihn zu öffnen, und scrollen Sie zu Jobs. Klicken Sie auf einen Job, um ihn auf der Seite Jobs zu öffnen.
- Alle: In der Warteschlange und In Bearbeitung befindliche Jobs.
- In Bearbeitung: Jobs, die derzeit von einer Engine ausgeführt werden.
- In der Warteschlange: Jobs, die gesendet, aber noch nicht von einer Engine zur Ausführung abgeholt wurden.
So zeigen Sie alle Engines an, die Streams zugewiesen sind
Sie können alle Engines, die Streams zugewiesen sind, auf der Seite Engines anzeigen.
So ändern Sie die einem Stream zugewiesenen Engines
Klicken Sie auf den Stream, um ihn zu öffnen. Klicken Sie unter "Zugewiesene Engines" auf Verwalten, um Engines zuzuweisen. Neu zugewiesene Engines führen Jobs kurz nach der Zuweisung aus.