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.

SaaS-Datenexporterfassung und -synchronisierungsfluss für Adobe Commerce {width="900" modal="regular"}

Wenn sich Katalogdaten in Adobe Commerce ändern, durchläuft die Synchronisierung diese Phasen.

  1. 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.
  2. Feed-Indizierung - Der Feed-Indexer liest das Änderungsprotokoll, lädt Entitätsdaten aus den Quelltabellen und stellt Feed-Elemente zusammen.
  3. Datenerfassung und -umwandlung - Im Feed-Schema registrierte Anbieter et_schema.xml Erfassen von Felddaten.
  4. 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.
  5. HTTP-Übermittlung - Feed-Elemente werden als authentifizierte HTTP-POST-Batches an den Adobe SaaS-Feed-Aufnahme-Service gesendet.
  6. Status persistent - Der API-Antwortstatus wird für jedes Element zurück in die Feed-) geschrieben.
  7. Fehlgeschlagener Wiederholungsversuch - Elemente, die nicht exportiert werden konnten, werden automatisch durch einen geplanten Cron-Auftrag erneut versucht.
NOTE
Für Adobe Commerce Optimizer Connector Bereitstellungen übernimmt SaaS Data Export die Erkennung von Entitätsänderungen und die Feed-Assembly. Der Connector ordnet dann Feeds dem Catalog Data Ingestion API-Format zu und sendet sie an Adobe Commerce Optimizer. Siehe Connector-SynchronisierungsPipeline für die Umfangskontrolle, Übermittlung und Fehlerbehandlung.
NOTE
Um eine reibungslose Planung sicherzustellen und Unterbrechungen im Site-Betrieb zu vermeiden, empfiehlt Adobe, das Datenvolumen und die Synchronisierungszeit zu schätzen, bevor Sie eine Daten-Feed-Synchronisierung starten. Diese Schätzung ist wichtig bei der Planung von anfänglichen Synchronisationen oder umfangreichen Katalogaktualisierungen, z. B. Massenpreisänderungen. Weitere Informationen finden Sie unter Schätzen des Datenvolumens und der Übertragungszeit für die Datensynchronisation

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.

NOTE
Die vollständige Synchronisierung erfolgt hauptsächlich in der Onboarding-Phase. Vermeiden Sie den regulären Gebrauch, um eine Überlastung der Datenbank zu vermeiden. Nach der ersten Synchronisierung werden laufende Änderungen automatisch durch partielle Synchronisierung synchronisiert.
NOTE
Der Befehl 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:

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.

Cron-Gruppe
Cron-Job
Zweck
Zeitplan
index
indexer_update_all_views
Verarbeitet MView-Änderungsprotokolle und Trigger für partielle Feed-Aktualisierungen
Alle 1 Minute
index
indexer_reindex_all_invalid
Führt eine vollständige Neusynchronisierung für Feed-Indizes durch, die als „Neuindizierung erforderlich“ markiert sind
Alle 1 Minute
resync_failed_feeds_data_exporter
*_resend_failed_items
Erkennt fehlgeschlagene Feed-Elemente und sendet sie erneut
Alle 5 Minuten
commerce_data_export
saas_data_exporter
Übermittelt Daten für Feeds des alten Modus (Bestellungen, Bereiche)
Alle 5 Minuten
commerce_data_export
cleanup_deleted_feed_items
Bereinigt synchronisierte gelöschte Feed-Elemente nach dem Aufbewahrungszeitraum (7 Tage)
Jeden Tag um 2:00 h

Feed-Ü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.

Status-Code
Erneut versuchen?
Bedeutung
200
Nein
Erfolgreich akzeptiert
400
Nein
Fehlerhafte Daten oder Validierungsfehler - Erfordert manuelle Untersuchung. var/log/saas-export-errors.log Details finden Sie.
429
Ja
Ratenbegrenzungstreffer - Reduzieren der thread_count in Exportverarbeitungseinstellungen
5xx
Ja
SaaS-seitiger Fehler - automatischer erneuter Versuch
2
Ja
Element ist für einen erneuten Versuch geplant

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.

recommendation-more-help
commerce-help-data-export