Daten mithilfe von Projektvariablen, Cloud-Caching oder temporärem Speicher im Jitterbit Integration Studio dauerhaft speichern
Einführung
Zum Speichern von Daten in der Harmony-Cloud können mehrere Methoden verwendet werden, z. B. die Verwendung von Projektvariablen, die Verwendung von Cloud-Caching-Funktionen oder die Verwendung von temporärem Speicher.
Projektvariablen
Projektvariablen sind vorinitialisierte statische Variablen, die man sich als Projektkonstanten vorstellen kann. Sie können von beiden bearbeitet werden Integration Studio(siehe Projektvariablen) oder die Management Console (siehe Projekte).
Ein Beispiel für die Verwendung von Projektvariablen sind Endpoint. Durch die Verwendung von Projektvariablen können verschiedene Endpoint (die normalerweise unterschiedliche Anmeldeinformationen haben) auf verschiedene Harmony-Umgebungen angewendet werden und über die Management Console bearbeitet werden. Dies ermöglicht einen Geschäftsprozess, bei dem ein Benutzer mit Management Console Rechten Anmeldeinformationen ändern kann, ohne Zugriff auf Integration Studio und der Projektdesigner.
Ein zweites Beispiel ist die Verwendung von Projektvariablen, um Flags zu speichern, die von der Integrationslogik verwendet werden, mit der das Verhalten der Integration angepasst werden kann. Wenn ein einzelnes Projekt entwickelt, aber für verschiedene Endpoints verwendet wird, könnte eine boolesche Projektvariable (wie Send_PO_Number) von der Logik der Transformation für das Feld PO Number überprüft werden. Wenn der Wert der Projektvariablen false
, dann die UnMap
Funktion könnte verwendet werden, um dieses Feld „auszuschalten“ und es nicht in eine relevante Transformation einzubeziehen.
Cloud-Caching-Funktionen
Die Cloud-Caching-Funktionen ReadCache
Und WriteCache
werden verwendet, um Datenräume zuzuweisen, die projekt- und umgebungsübergreifend verfügbar sind. Ein zwischengespeicherter Wert ist für alle Vorgänge sichtbar, die im selben Bereich ausgeführt werden, bis er abläuft, unabhängig davon, wie dieser Operation gestartet wurde oder auf welchem Agenten er ausgeführt wird. Durch das Zwischenspeichern von Daten in Harmony, anstatt sich auf lokale oder agentenspezifische Datenspeicher wie Temporary Storage zu verlassen können Daten zwischen einzelnen Vorgängen und über Projekte hinweg gemeinsam genutzt werden.
Dies sind weitere Einsatzmöglichkeiten von Cloud-Caching:
- Daten können zwischen asynchronen Vorgängen innerhalb eines Projekts geteilt werden.
- Fehler, die bei verschiedenen Vorgängen auftreten, können in einem gemeinsamen Cache gespeichert werden. Durch die Ansammlung von Operation auf diese Weise können umfassendere Warnungen erstellt werden.
- Anmeldetoken können betriebsübergreifend genutzt werden.
Zwischenspeicherung
Temporärer Speicher Endpoints werden häufig in Operationen sowohl auf Cloud- als auch auf privaten Agenten verwendet. Diese unterscheiden sich von Local Storage Endpoints, die nur auf privaten Agenten verwendet werden können.
Bei Verwendung eines Endpoint für den temporären Speicher werden temporäre Dateien in das temporäre Verzeichnis des Standardbetriebssystems auf dem Agenten geschrieben und von dort gelesen, der die Arbeit ausführt:
- Im Fall eines einzelnen privaten Agenten ist das temporäre Speicherverzeichnis das Standard-Temp-Verzeichnis dieses privaten Agent-Servers.
- Wenn Sie mehr als einen privaten Agenten verwenden, die in einer privaten Agentengruppe zusammengefasst sind, ist das temporäre Speicherverzeichnis das temporäre Standardverzeichnis des spezifischen privaten Agentenservers, der die Arbeit ausführt.
- Da Cloud-Agenten in einer Cloud-Agenten-Gruppe gruppiert sind, ist das temporäre Speicherverzeichnis das temporäre Standardverzeichnis des spezifischen Cloud-Agenten-Servers, der die Arbeit ausführt.
In einer geclusterten Agentengruppe (private oder Cloud-Agenten) werden alle Lese- und Schreibvorgänge im temporären Speicher auf demselben Agentenserver ausgeführt, solange die Vorgänge, die den temporären Speicher verwenden, miteinander verknüpft (verkettet) sind. Wenn jedoch Kette A in ihren temporären Speicher schreibt myfile
und Chain B liest aus seinem temporären Speicher myfile
, und die beiden Ketten selbst nicht miteinander verkettet sind, kann die Leseaktion des temporären Speichers in Kette B möglicherweise nicht vom selben Agenten gelesen werden, in den von Kette A geschrieben wurde.
Beachten Sie bei der Verwendung von temporärem Speicher die folgenden Richtlinien:
-
Um Ihr Projekt bei der Verwendung privater Agenten aktualisierungssicher zu machen, nutzen Sie den temporären Speicher so, dass für die Verschiebung von einem einzelnen privaten Agenten zu einer Agentengruppe mit mehreren Agenten kein Refactoring erforderlich ist.
-
Um bei Verwendung einer geclusterten Agentengruppe (private oder Cloud-Agenten) sicherzustellen, dass der Agentenserver, auf den der temporäre Speicher geschrieben wird, derselbe Server ist, von dem der temporäre Speicher gelesen wird, achten Sie darauf, dass sich alle Verweise auf die Lese- und Schreib-Aktivitäten des temporären Speichers in derselben Operation befinden.
-
Temporärer Speicher auf privaten Agenten wird standardmäßig nach 24 Stunden durch den [Jitterbit-Dateibereinigungsdienst]/agent/cleanuprules/ gelöscht. Die Häufigkeit des Bereinigungsdienstes kann über die Konfigurationsdatei des privaten Agenten konfiguriert werden unter dem
[FileCleanup]
Abschnitt. Auf Cloud-Agenten können temporäre Dateien jedoch sofort gelöscht werden. -
Cloud-Agenten haben eine Dateigrößenbeschränkung für den temporären Speicher von 50 GB pro Datei. Temporäre Dateien größer als 50 GB sind nur bei Verwendung privater Agenten möglich.
-
Beim Schreiben in den temporären Speicher werden Dateien standardmäßig überschrieben. Dies kann mit dem Kontrollkästchen An Datei anhängen in einer Aktivität „Schreiben in temporären Speicher“ geändert werden. Normalerweise erfordert dies, dass die Datei nach dem Lesen der Quelle gelöscht oder archiviert wird. Eine einfache Möglichkeit hierfür ist die Verwendung der Nachbearbeitungsoptionen Datei löschen oder Datei umbenennen in einer Aktivität zum Lesen des temporären Speichers.
-
Dateinamen-Schlüsselwörter stehen zur Verfügung, die beim Erstellen eines Dateinamens verwendet werden können.
-
Eine Datei im temporären Speicher kann gelesen werden, indem ein Script mit dem
ReadFile
Funktion. Beispiel:ReadFile("<TAG>activity:tempstorage/Temporary Storage/tempstorage_read/Read</TAG>")
. Bedenken Sie, dass dies nur zuverlässig funktioniert, wenn es einen einzigen privaten Agenten gibt.
In einigen Fällen kann es vorteilhaft sein, eine Variable zu verwenden Endpoint anstelle eines Endpoint für temporären Speicher. Siehe den Abschnitt Variabler versus temporärer Speicher in Globale Variable versus Temporärer Speicher für einen Vergleich dieser beiden unterschiedlichen Ansätze und für Empfehlungen, wann welcher angemessen ist.