Kurz: nahe Echtzeit
Um die Frage ordentlich zu beantworten, müssen wir den Ablauf der Synchronisation näher betrachten, ohne dabei zu sehr ins Detail zu gehen. Der grundlegende Ablauf ist ausreichend, wobei wir von der Aktivierung bis zum Abschluss in nur drei Phasen unterscheiden.
- Trigger
- Ausführungsstart
- Ausführungsdauer
Für die drei Phasen haben wir eine Auswertung über 239.653 Planausführungen erstellt (siehe Grafik, Stand 2021-03). Hinweis: In jeder Ausführung werden alle Daten synchronisiert, die über die Bedingungen berücksichtigt werden sollen. Es können also mit einer Ausführung nur wenige oder auch sehr viele Daten synchronisiert werden.
1. HubEngine-Plan Trigger
Die Ausführung eines HubEngine-Plans kann über verschiedene Methoden angestoßen werden (Trigger: time|hook|manual). Trigger werden in Echtzeit angenommen. In dieser Phase gibt es also keine Verzögerung.
2. HubEngine-Plan Ausführungsstart
Die Synchronisationen werden parallel und effizient bearbeitet. Dennoch ist es häufig nicht möglich, die Anfragen sofort zu bedienen. In unserem Betrachtungsintervall wird die tatsächliche Ausführung im Mittel nach 19,0 Sekunden gestartet (vgl. Grafik, „Plans Start Delay – Average“).
3. HubEngine-Plan Ausführungsdauer
Unter diesem Punkt fassen wir zur Vereinfachung die vollständige Synchronisierung der Daten zusammen. Dazu zählen die Interaktionen mit den angebundenen Systemen und die Ausführung der Planlogik. Die interne Bearbeitung können wir vernachlässigen. Das sind in der Regel nur wenige Millisekunden, wobei komplexe Bedingungen und Mappings auch mehr Zeit beanspruchen. Die Interaktion mit den Systemen kostet hingegen die meiste Zeit (Latenzen). Im Mittel benötigen wir rund 8,5 Sekunden (vgl. Grafik, „Plan Execution Time – Average“).
Fazit: Im Betrachtungsintervall haben wir im Mittel 27,5 Sekunden für eine vollständige Synchronisation benötigt. Es kann sein, dass eine Synchronisation mit sehr vielen Daten oder mit einer hohen Komplexität auch länger dauert – oder bei einer niedrigen Komplexität mit einem geringen Volumen eben schneller läuft.