Daten mit SaaS-Datenexport synchronisieren
Wenn Sie einen Commerce-Dienst installieren, der einen Datenexport erfordert, z. B. Catalog Service, Live Search oder Product Recommendations, wird eine Sammlung von Saas-Datenexportmodulen installiert, um den Datenerfassungs- und Synchronisierungsprozess zu verwalten.
Der SAAS-Datenexport verschiebt Produktdaten laufend von einer Adobe Commerce-Instanz auf die Commerce Services-Plattform, um die Daten auf dem neuesten Stand zu halten. Beispielsweise erfordert Product Recommendations die aktuellen Kataloginformationen, um Empfehlungen mit korrekten Namen, Preisen und Verfügbarkeit exakt zurückzugeben. Verwenden Sie das Dashboard "Datenverwaltung", um den Synchronisierungsprozess zu beobachten und zu verwalten, oder die Befehlszeilenschnittstelle, um eine Synchronisierung Trigger und Produktdaten für die Verwendung durch Commerce Services neu zu indizieren.
Das folgende Diagramm zeigt den SaaS-Datenexport-Fluss.
{width="900" modal="regular"}
Zu den Hauptkomponenten des SAAS-Datenexportflusses gehören:
- SaaS-Datenexportmodule, die die Daten für Feeds aus Adobe Commerce erfassen, Feed-Elemente assemblieren, auf Aktualisierungen warten und den Feed-Status beibehalten.
- SaaS-Exportmodule, die Daten exportieren, Routing konfigurieren und die Feeds in verbundenen Diensten veröffentlichen.
- Der Adobe Commerce-Dienst verwaltet den Datenerfassungsprozess, um eingehende Feeds zu validieren und Aktualisierungen an verbundenen Diensten beizubehalten.
Synchronisierungsmodi
Der SaaS-Datenexport verfügt über zwei Modi zur Verarbeitung von Entitäts-Feeds:
-
Sofortiger Exportmodus: In diesem Modus werden Daten erfasst und in einer einzigen Iteration sofort an den Commerce-Dienst gesendet. Dieser Modus beschleunigt die Bereitstellung von Entitätsaktualisierungen für den Commerce-Dienst und verringert die Speichergröße der Feed-Tabellen.
-
Legacy export mode: In diesem Modus werden Daten in einem einzigen Prozess erfasst. Dann sendet ein Cron-Auftrag die erfassten Daten an die verbundenen Commerce-Dienste. In Datenexport-Protokolleinträgen werden Feeds, die den alten Modus verwenden, als
(legacy)
bezeichnet.
Synchronisierungstypen
Der SAAS-Datenexport unterstützt die Synchronisierung von drei Synchronisierungstypen: vollständige Synchronisierung, teilweise Synchronisierung und Wiederholung der Synchronisierung fehlgeschlagener Elemente.
Vollständige Synchronisierung
Nachdem Sie eine Adobe Commerce-Instanz mit Commerce Service verbunden haben, führen Sie eine vollständige Synchronisierung durch, um Entitäts-Feed-Daten von Adobe Commerce an den verbundenen Dienst zu senden.
Teilsynchronisierung
Bei teilweiser Synchronisierung sendet der SaaS-Datenexport automatisch Aktualisierungen von der Commerce-Anwendung, wie z. B. Produktnamensänderungen oder Preisaktualisierungen, an verbundene Commerce-Dienste.
Der Datenexportprozess verwendet die folgenden Cron-Aufträge, um den Teilsynchronisierungsvorgang zu automatisieren.
-
Cron-Gruppenaufträge "index":
- Der
indexer_reindex_all_invalid
-Auftrag deklariert alle ungültigen Feeds neu. Es handelt sich um einen standardmäßigen Adobe Commerce-Cron-Auftrag. - Der
saas_data_exporter
-Auftrag ist für veraltete Export-Feeds bestimmt. - Der Auftrag
sales_data_exporter
ist spezifisch für den Export-Feed für Verkaufsdaten.
- Der
Diese Aufträge werden jede Minute ausgeführt.
Damit die teilweise Synchronisierung funktioniert, muss die Commerce-Anwendung wie folgt konfiguriert werden:
-
Alle SaaS-Datenexport-Indexer werden im
Update by Schedule
-Modus konfiguriert.In der SaaS-Datenexportversion 103.1.0 und höher ist der
Update by Schedule
-Modus standardmäßig aktiviert. Sie können die Indexkonfiguration auf dem Server mithilfe des Commerce CLI-Befehlsbin/magento indexer:show-mode | grep -i feed
überprüfen.
Synchronisation fehlgeschlagener Elemente wiederholen
Die Synchronisierung fehlgeschlagener Elemente erneut versuchen verwendet einen separaten Prozess, um Elemente erneut zu senden, die während des Synchronisierungsprozesses aufgrund von Fehlern nicht synchronisiert werden konnten, z. B. einen Anwendungsfehler, eine Netzwerkunterbrechung oder einen SaaS-Dienstfehler. Die Implementierung für diese Synchronisierung basiert auch auf Cron-Aufträgen.
resync_failed_feeds_data_exporter
Cron-Gruppenaufträge:- Der Auftrag
<feed name>_feed_resend_failed_feeds_items
sendet erneut Elemente, die nicht synchronisiert werden konnten, z. B.products_feed_resend_failed_items
.
- Der Auftrag
Synchronisierungsprozess anzeigen und verwalten
Die meisten Synchronisierungsaktivitäten werden automatisch auf der Basis der Anwendungskonfiguration verarbeitet. Der SaaS-Datenexport bietet jedoch auch Tools zur Verwaltung des Prozesses.
-
Admin-Benutzer können den Synchronisierungsfortschritt anzeigen und verfolgen und Informationen zu den Daten aus dem Data Management Dashboard abrufen.
-
Entwickler, Systemintegratoren oder Administratoren mit Zugriff auf den Commerce-Anwendungsserver können den Synchronisierungsprozess und die Daten-Feeds mithilfe des Befehlszeilen-Tools (CLI) von Adobe Commerce verwalten. Siehe Referenz zum Datenexport-Befehl.
Commerce-Anwendungskonfiguration überprüfen
Die Synchronisierung fehlerhafter Elemente teilweise synchronisieren und erneut versuchen funktioniert nur, wenn die Commerce-Instanz richtig konfiguriert wurde. In der Regel wird die Konfiguration beim Einrichten des Commerce-Dienstes abgeschlossen. Wenn der Datenexport nicht ordnungsgemäß funktioniert, überprüfen Sie die folgende Konfiguration.
-
Vergewissern Sie sich, dass Cron-Aufträge ausgeführt werden.
-
Stellen Sie sicher, dass die Indexer über den Befehl Admin oder den Commerce-CLI-Befehl
bin/magento indexer:info
ausgeführt werden. -
Stellen Sie sicher, dass die Indexer für die folgenden Feeds auf "
Update by Schedule
" eingestellt sind: Katalogattribute, Produkt, Produktüberschreibungen und Produktvarianten. Sie können die Indexer über die Indexverwaltung im Admin oder über die CLI (bin/magento indexer:show-mode | grep -i feed
) überprüfen.
Benachrichtigungen des Ereignismanagers für die Datenübertragungsprotokollierung
In Version 103.3.4 und höher sendet der SaaS-Datenexport das data_sent_outside
-Ereignis, wenn Daten von der Commerce-Instanz an Adobe Commerce-Dienste gesendet werden.
$this->eventManager->dispatch(
"data_sent_outside",
[
"timestamp" => time(),
"type" => $metadata->getFeedName(),
"data" => $data
]
);