Sincronizzare i dati con l’esportazione di dati SaaS
Quando si installa un servizio Adobe Commerce che richiede l’esportazione di dati come Catalog Service, Live Search o Product Recommendations, viene installata una raccolta di moduli SaaS per l’esportazione di dati per gestire il processo di raccolta e sincronizzazione dei dati.
L’esportazione dei dati SaaS sposta i dati dei prodotti da un’istanza Adobe Commerce alla piattaforma Commerce Services su base continuativa per mantenere aggiornati i dati. Ad esempio, la funzione Consigli di prodotto richiede le informazioni correnti sul catalogo per restituire in modo accurato i consigli con nomi, prezzi e disponibilità corretti. Per informazioni dettagliate sul monitoraggio del processo di sincronizzazione, vedere Visualizzare e gestire il processo di sincronizzazione.
Il diagramma seguente mostra il flusso di esportazione dei dati SaaS.
Quando i dati del catalogo cambiano in Adobe Commerce, la sincronizzazione si sposta attraverso queste fasi.
- Rilevamento modifiche entità - Il sistema Mview di Magento rileva le modifiche delle righe nelle tabelle del database sottoscritte (ad esempio,
catalog_product_entity) e scrive le voci in una tabella changelog. - Indicizzazione feed - L’indicizzatore del feed legge il registro delle modifiche, carica i dati delle entità dalle tabelle di origine e assembla gli elementi del feed.
- Raccolta e trasformazione dei dati - I provider registrati nello schema di feed
et_schema.xmlraccolgono i dati del campo. - Deduplicazione hash - Viene calcolato un hash di contenuto per ogni elemento del feed. Gli elementi il cui hash non è stato modificato dopo l’ultima esportazione vengono ignorati, pertanto vengono trasmessi solo i dati modificati.
- Invio HTTP - Gli elementi feed vengono inviati come batch HTTP POST autenticati al servizio acquisizione feed SaaS di Adobe.
- Lo stato persiste - Lo stato della risposta API viene scritto nuovamente nella tabella di feed per ogni elemento.
- Nuovo tentativo errore - Gli elementi che non è stato possibile esportare vengono automaticamente ritentati da un processo cron pianificato.
Modalità di sincronizzazione
L’esportazione di dati SaaS prevede due modalità per elaborare i feed di entità:
-
Modalità di esportazione immediata: in questa modalità i dati vengono raccolti e inviati immediatamente al servizio Commerce in una singola iterazione. Questa modalità accelera la distribuzione degli aggiornamenti delle entità al servizio Commerce e riduce le dimensioni di archiviazione delle tabelle di feed.
-
Modalità di esportazione legacy: in questa modalità i dati vengono raccolti in un unico processo. Successivamente, un processo cron invia i dati raccolti ai servizi commerce connessi. Nelle voci del registro di esportazione dei dati, i feed che utilizzano la modalità legacy sono etichettati
(legacy).
Tipi di sincronizzazione
L’esportazione dei dati SaaS supporta tre tipi di sincronizzazione: sincronizzazione completa, sincronizzazione parziale e nuovo tentativo di sincronizzazione degli elementi non riusciti.
Sincronizzazione completa
Dopo aver collegato un’istanza di Adobe Commerce al servizio Commerce, esegui una sincronizzazione completa per inviare i dati del feed di entità da Adobe Commerce al servizio connesso.
Sincronizzazione parziale partial-sync
Con la sincronizzazione parziale, l’esportazione di dati SaaS invia automaticamente aggiornamenti dall’applicazione Commerce, come modifiche al nome del prodotto o aggiornamenti dei prezzi, ai servizi commerce connessi.
Affinché la sincronizzazione parziale funzioni, l’applicazione Commerce richiede la seguente configurazione:
- La pianificazione delle attività è abilitata tramite processi cron
- Tutti gli indici di esportazione dei dati SaaS sono configurati in modalità
Update by Schedule.
Ritenta sincronizzazione elementi non riusciti retry-failed-items-sync
La sincronizzazione di Riprova elementi non riusciti utilizza un processo separato per inviare nuovamente gli elementi non sincronizzati a causa di errori durante il processo di sincronizzazione, ad esempio un errore dell’applicazione, un’interruzione della rete o un errore del servizio SaaS. I processi cron *_resend_failed_items nel gruppo resync_failed_feeds_data_exporter lo gestiscono automaticamente ogni 5 minuti.
Processi cron pianificati
I seguenti gruppi cron automatizzano la pipeline secondo una pianificazione fissa.
indexindexer_update_all_viewsindexindexer_reindex_all_invalidresync_failed_feeds_data_exporter*_resend_failed_itemscommerce_data_exportsaas_data_exportercommerce_data_exportcleanup_deleted_feed_itemsInvio di feed e gestione degli errori HTTP feed-submission-and-http-error-handling
Gli elementi feed vengono inviati come batch JSON autenticati compressi Gzip tramite HTTP POST. Nella tabella seguente viene illustrato il mapping dei codici di risposta HTTP allo stato di esportazione e al comportamento dei nuovi tentativi.
var/log/saas-export-errors.log per i dettagli.thread_count in impostazioni di elaborazione esportazioneOltre agli errori a livello HTTP, gli errori a livello di applicazione, ad esempio errori di elaborazione locale o interruzioni di rete, sono pianificati per un nuovo tentativo automatico da parte dei processi cron *_resend_failed_items.
Monitorare lo stato per feed dalla pagina Data Feed Sync Status nell’amministrazione di Commerce.