Synchroniser les données avec l’export de données SaaS
Lorsque vous installez un service Adobe Commerce qui nécessite l’exportation de données, tel que Catalog Service, Live Search ou Product Recommendations, une collection de modules d’exportation de données SaaS est installée pour gérer le processus de collecte de données et de synchronisation.
L’exportation des données SaaS déplace régulièrement les données de produit d’une instance Adobe Commerce vers la plateforme Commerce Services afin de maintenir les données à jour. Par exemple, Recommandations de produits nécessite des informations de catalogue actuelles pour renvoyer avec précision des recommandations aux noms, prix et disponibilité corrects. Pour plus d’informations sur la surveillance du processus de synchronisation, voir Afficher et gérer le processus de synchronisation.
Le diagramme suivant illustre le flux d’exportation des données SaaS.
Lorsque les données du catalogue changent dans Adobe Commerce, la synchronisation passe par ces étapes.
- Détection des modifications d’entité - Le système Mview de Magento détecte les modifications de ligne dans les tables de base de données auxquelles vous êtes abonné (par exemple,
catalog_product_entity) et écrit les entrées dans une table de journal des modifications. - Indexation des flux - L’indexeur des flux lit le journal des modifications, charge les données d’entité à partir des tables source et assemble les éléments de flux.
- Collecte et transformation des données - Les fournisseurs enregistrés dans le schéma de flux
et_schema.xmlcollecter des données de champ. - Déduplication de hachage - Un hachage de contenu est calculé pour chaque élément de flux. Les éléments dont le hachage n’a pas changé depuis la dernière exportation sont ignorés, de sorte que seules les données modifiées sont transmises.
- Envoi HTTP - Les éléments de flux sont envoyés par lots HTTP POST authentifiés au service d’ingestion de flux SaaS d’Adobe.
- Statut persistant - Le statut de la réponse de l’API est réécrit dans le tableau de flux pour chaque élément.
- Reprise en échec - Les éléments dont l’exportation a échoué sont automatiquement repris par une tâche cron planifiée.
Modes de synchronisation
L’exportation des données SaaS comporte deux modes de traitement des flux d’entités :
-
Mode d’exportation immédiat : dans ce mode, les données sont collectées et envoyées immédiatement au service Commerce en une seule itération. Ce mode accélère la diffusion des mises à jour d’entités au service Commerce et réduit la taille de stockage des tables de flux.
-
Mode d’exportation hérité : dans ce mode, les données sont collectées dans un seul processus. Ensuite, une tâche cron envoie les données collectées aux services commerciaux connectés. Dans les entrées du journal d’exportation de données, les flux qui utilisent le mode hérité sont étiquetés
(legacy).
Types de synchronisation
L’exportation de données SaaS prend en charge trois types de synchronisation : synchronisation complète, synchronisation partielle et synchronisation des éléments ayant échoué à une nouvelle tentative.
Synchronisation complète
Après la connexion d’une instance Adobe Commerce au service Commerce, effectuez une synchronisation complète pour envoyer des données de flux d’entités d’Adobe Commerce au service connecté.
Synchronisation partielle partial-sync
Avec une synchronisation partielle, l’exportation de données SaaS envoie automatiquement des mises à jour depuis l’application Commerce, telles que des modifications de nom de produit ou de prix, aux services commerciaux connectés.
Pour que la synchronisation partielle fonctionne, l’application Commerce nécessite la configuration suivante :
- La planification des tâches est activée via les tâches cron
- Tous les indexeurs d’export de données SaaS sont configurés en mode
Update by Schedule.
Réessayer la synchronisation des éléments ayant échoué retry-failed-items-sync
La synchronisation des éléments en échec de la reprise utilise un processus distinct pour renvoyer les éléments qui n’ont pas pu être synchronisés en raison d’erreurs lors du processus de synchronisation, par exemple une erreur d’application, une interruption de réseau ou une erreur de service SaaS. Les tâches cron *_resend_failed_items du groupe resync_failed_feeds_data_exporter le gèrent automatiquement toutes les 5 minutes.
Traitements cron planifiés
Les groupes cron suivants automatisent le pipeline selon un planning fixe.
indexindexer_update_all_viewsindexindexer_reindex_all_invalidresync_failed_feeds_data_exporter*_resend_failed_itemscommerce_data_exportsaas_data_exportercommerce_data_exportcleanup_deleted_feed_itemsEnvoi de flux et gestion des erreurs HTTP feed-submission-and-http-error-handling
Les éléments de flux sont envoyés en tant que lots JSON compressés GZIP authentifiés via HTTP POST. Le tableau suivant montre comment les codes de réponse HTTP sont associés au statut d’exportation et au comportement de reprise.
var/log/saas-export-errors.log pour plus de détails.thread_count dans paramètres de traitement des exportations.Outre les échecs au niveau du HTTP, les erreurs au niveau de l’application, telles que les échecs de traitement local ou les perturbations du réseau, sont également planifiées pour une reprise automatique par les tâches cron *_resend_failed_items.
Surveillez le statut par flux à partir de la page Data Feed Sync Status de l’administration Commerce.