Synchronisieren von Daten mit dem SaaS-Datenexport
Wenn Sie einen Adobe Commerce-Service installieren, für den ein Datenexport erforderlich ist, 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 benötigen Sie für Produktempfehlungen aktuelle Kataloginformationen, um Empfehlungen mit korrekten Namen, Preisen und Verfügbarkeit genau zurückzugeben. Einzelheiten zur Überwachung des Synchronisierungsprozesses finden Sie unter Synchronisierungsprozess anzeigen und verwalten.
Das folgende Diagramm zeigt den SaaS-Datenexportfluss.
Wenn sich Katalogdaten in Adobe Commerce ändern, durchläuft die Synchronisierung diese Phasen.
- Erkennung von Entitätsänderungen - Das Mview-System von Magento erkennt Zeilenänderungen in abonnierten Datenbanktabellen (z. B.
catalog_product_entity) und schreibt Einträge in eine Änderungsprotokolltabelle. - Feed-Indizierung - Der Feed-Indexer liest das Änderungsprotokoll, lädt Entitätsdaten aus den Quelltabellen und stellt Feed-Elemente zusammen.
- Datenerfassung und -umwandlung - Im Feed-Schema registrierte Anbieter
et_schema.xmlErfassen von Felddaten. - Hash-Deduplizierung - Für jedes Feed-Element wird ein Inhalts-Hash berechnet. Elemente, deren Hash seit dem letzten Export nicht geändert wurde, werden übersprungen, sodass nur geänderte Daten übertragen werden.
- HTTP-Übermittlung - Feed-Elemente werden als authentifizierte HTTP-POST-Batches an den Adobe SaaS-Feed-Aufnahme-Service gesendet.
- Status persistent - Der API-Antwortstatus wird für jedes Element zurück in die Feed-) geschrieben.
- Fehlgeschlagener Wiederholungsversuch - Elemente, die nicht exportiert werden konnten, werden automatisch durch einen geplanten Cron-Auftrag erneut versucht.
Synchronisationsmodi
Der SaaS-Datenexport verfügt über zwei Modi zur Verarbeitung von Entitäts-Feeds:
-
Modus für sofortigen Export - In diesem Modus werden Daten in einer einzigen Iteration erfasst und sofort an den Commerce-Service gesendet. Dieser Modus beschleunigt die Bereitstellung von Entitätenaktualisierungen an den Commerce-Service und reduziert die Speichergröße der Feed-Tabellen.
-
Alter Exportmodus - In diesem Modus werden Daten in einem einzigen Prozess erfasst. Dann sendet ein Cron-Auftrag die erfassten Daten an die verbundenen Commerce-Services. In Datenexportprotokolleinträgen sind Feeds, die den alten Modus verwenden, mit
(legacy)gekennzeichnet.
Synchronisierungstypen
Der SaaS-Datenexport unterstützt drei Synchronisierungstypen: Vollständige Synchronisierung, Teilsynchronisierung und Wiederholen fehlgeschlagener Elementsynchronisierung.
Vollständige Synchronisierung
Nachdem Sie eine Adobe Commerce-Instanz mit dem Commerce-Service verbunden haben, führen Sie eine vollständige Synchronisierung durch, um Entitäts-Feed-Daten von Adobe Commerce an den verbundenen Service zu senden.
saas:resync übermittelt nur neue Elemente, aktualisierte Elemente und Elemente, die zuvor nicht exportiert werden konnten. Elemente, deren Inhaltshash seit dem letzten Export nicht geändert wurde, werden übersprungen.Teilweise synchronisieren partial-sync
Bei teilweiser Synchronisierung sendet der SaaS-Datenexport automatisch Aktualisierungen aus der Commerce-Anwendung, z. B. Änderungen des Produktnamens oder Preisaktualisierungen, an verbundene Commerce-Services.
Damit die partielle Synchronisierung funktioniert, benötigt die Commerce-Anwendung die folgende Konfiguration:
- Die Aufgabenplanung wird über Cron-Aufträge aktiviert
- Alle SaaS-Datenexportindizierer sind im
Update by Schedule-Modus konfiguriert.
Synchronisierung fehlgeschlagener Elemente wiederholen retry-failed-items-sync
Die Synchronisierung fehlgeschlagener Elemente wiederholen verwendet einen separaten Prozess zum erneuten Senden von Elementen, die aufgrund von Fehlern während des Synchronisierungsprozesses nicht synchronisiert werden konnten, z. B. ein Anwendungsfehler, eine Netzwerkunterbrechung oder ein SaaS-Service-Fehler. Die *_resend_failed_items Cron-Aufträge in der resync_failed_feeds_data_exporter bearbeiten dies automatisch alle 5 Minuten.
Geplante Cron-Aufträge
Die folgenden Cron-Gruppen automatisieren die Pipeline nach einem festen Zeitplan.
indexindexer_update_all_viewsindexindexer_reindex_all_invalidresync_failed_feeds_data_exporter*_resend_failed_itemscommerce_data_exportsaas_data_exportercommerce_data_exportcleanup_deleted_feed_itemsFeed-Übermittlung und HTTP-Fehlerbehandlung feed-submission-and-http-error-handling
Feed-Elemente werden als authentifizierte gzip-komprimierte JSON-Batches über HTTP-POST gesendet. Die folgende Tabelle zeigt, wie HTTP-Antwort-Codes dem Exportstatus und dem Wiederholungsverhalten zugeordnet sind.
var/log/saas-export-errors.log Details finden Sie.Zusätzlich zu Fehlern auf HTTP-Ebene werden Fehler auf Anwendungsebene, wie lokale Verarbeitungsfehler oder Netzwerkstörungen, auch für automatische erneute Versuche durch die *_resend_failed_items Cron-Aufträge geplant.
Überwachen Sie den Status der einzelnen Feeds über die Seite Data Feed Sync Status in Commerce Admin.