MongoDB (Eingangsagent Cron)
Einführung: Eine Beschreibung dieser Phase finden Sie im Abschnitt Phase 1 (Einführung).
Hinweis: Auf dem Integration Server muss der MongoDBConnectionService aktiviert werden, um diesen Eingangsagenten benutzen zu können.
Hinweis: Die Dokumentenart wird bei Verwendung dieses Eingangsagenten automatisch auf JSON gesetzt.
(1) Alias für die Verbindung zur Datenbank. Ein Datenbank-Alias ist eine konfigurierte Verbindung zu einem Datenbanksystem (siehe Abschnitt MongoDBConnectionService). Zusätzlich stehen alle im Profil definierten Variablen mit Präfix MSG_CALL_ zur Auswahl zur Verfügung. Dadurch ist es möglich, den Alias aus einem triggernden Profil oder mit einem HTTP-Aufruf zu übergeben. Hinweis: Im Interesse einer einfachen Prüfbarkeit sollten die Variablen mit einem Defaultwert definiert werden.
(2) Die Database, auf die sich die Abfrage bezieht (analog zu einem Schema in einer SQL-Datenbank). Hinweis: Im Alias ist zwar bereits eine Database angegeben über den Parameter catalogName, aber Sie können den Wert für diese Verbindung hier im Eingangsagenten überschreiben.
(3) Die Collection, auf die sich die Abfrage bezieht (analog zu einer Tabelle in einer SQL-Datenbank).
(4) Eine MongoDB speichert Datensätze als BSON-Dokumente. BSON ist eine binäre Darstellung von JSON-Dokumenten, enthält jedoch mehr Datentypen als JSON. Wenn Sie hier BSON wählen, dann werden Ihnen BSON-spezifische Datentypen im zurückgegebenen JSON Dokument angezeigt. Siehe Abschnitt unten. Hinweis: Siehe zum Thema auch den MongoPostexecutor.
(5) Liefert eine Abfrage mehr als die hier angegebene Zahl von Dokumenten zurück, dann wird nur die angegebene Anzahl an Dokumenten eingelesen (hier 20), alle weitere werden ignoriert. Liefert die Abfrage also 22 Dokumente zurück, dann werden Dokument 21 und 22 ignoriert. Es wird dadurch aber kein Fehler erzeugt.
(6) Ist diese Checkbox gesetzt, dann werden alle von der Abfrage gefundenen Dokumente zu einem einzigen JSON Dokument zusammengefasst und es wird lediglich ein Job gestartet. Ist die Checkbox nicht gesetzt, dann wird jedes von der Abfrage gefundenen Dokument einzeln zurückgegeben und für jedes ein eigener Job gestartet.
(7) Die auszuführende Abfrage. Auf die Abfragesprache wird hier nicht eingegangen, siehe hierzu die Dokumentation des Herstellers.
(8) Führt die Abfrage (7) testweise aus. Hinweis: Es wird im Test nur der erste Ergebnis-Datensatz angezeigt.
(9) Erzeugt eine zur Abfrage passende Quellstruktur. Achtung: Eine bereits vorhandene Quellstruktur wird dabei überschrieben!
Ausgabeformat BSON und JSON
Siehe Punkt (4). Folgend ein beliebiges Beispiel-Dokument zur Veranschaulichung der Unterschiede der beiden Ausgabeformate.
JSON
[{
"_id": "5ea94c0cfcba7e213485e8a4",
"JOB": 0,
"PROFILE": "httpin",
"PROFILE_ID": "6f6fbe3d:171c4d6b593:-7f28.d19731995bc0c589:6f6fbe3d:171c4d6b593:-8000",
"START": "2020-04-29T11:42:36.930Z",
"END": "2020-04-29T11:42:36.944Z",
"FAILED": false,
"FILENAME": "n.a.",
"BACKUP": "Job_0",
"CLIENT": "-1",
"ROLE": "",
"DISPLAY1": "",
"DISPLAY2": "",
"DISPLAY3": "",
"LOGPOOL": "STANDARD"
}]
BSON
[{
"_id": {
"$oid": "5ea94c0cfcba7e213485e8a4"
},
"JOB": {
"$numberLong": "0"
},
"PROFILE": "httpin",
"PROFILE_ID": "6f6fbe3d:171c4d6b593:-7f28.d19731995bc0c589:6f6fbe3d:171c4d6b593:-8000",
"START": {
"$date": {
"$numberLong": "1588153356930"
}
},
"END": {
"$date": {
"$numberLong": "1588153356944"
}
},
"FAILED": false,
"FILENAME": "n.a.",
"BACKUP": "Job_0",
"CLIENT": "-1",
"ROLE": "",
"DISPLAY1": "",
"DISPLAY2": "",
"DISPLAY3": "",
"LOGPOOL": "STANDARD"
}]
SQL auf MongoDB
Es ist möglich SQL-Abfragen auf einer MongoDB auszuführen im Eingangsagenten des Typs DB. Siehe hierzu den Abschnitt MongoDB-Einrichtung.