Gegevens synchroniseren met SaaS-gegevensexport
Wanneer u een Commerce-service installeert waarvoor gegevens moeten worden geëxporteerd, zoals Catalog Service, Live Search of Product Recommendations, wordt een verzameling Saas-modules voor gegevensexport geïnstalleerd om het proces voor gegevensverzameling en -synchronisatie te beheren.
Bij het exporteren van SaaS-gegevens worden productgegevens doorlopend van een Adobe Commerce-instantie naar het Commerce Services-platform verplaatst om de gegevens up-to-date te houden. Product Recommendations vereist bijvoorbeeld de huidige catalogusinformatie om aanbevelingen met juiste namen, prijzen en beschikbaarheid correct te kunnen retourneren. Gebruik het dashboard van het Beheer van Gegevensom het synchronisatieproces waar te nemen en te beheren, of de bevel-lijn interface om een synchronisatie teweeg te brengen en productgegevens voor consumptie door de Diensten van Commerce opnieuw te indexeren.
Het volgende diagram toont de de gegevensuitvoerstroom van SaaS.
{width="900" modal="regular"}
De belangrijkste onderdelen van de SaaS-gegevensexportstroom zijn:
- SaaS-gegevensexportmodules die de gegevens voor feeds uit Adobe Commerce verzamelen, items in feed samenstellen, luisteren naar updates en de status van feed behouden.
- De de uitvoermodules van SaaS die gegevens uitvoeren, het verpletteren vormen, en het voer aan de verbonden diensten publiceren.
- De Adobe Commerce Service beheert het gegevensinvoerproces om binnenkomende feeds te valideren en updates van verbonden services te behouden.
Synchronisatiemodi
De gegevensuitvoer van SaaS heeft twee wijzen om entiteitsvoer te verwerken:
-
Onmiddellijke de uitvoerwijze - op deze wijze, wordt het gegeven verzameld en onmiddellijk verzonden naar de Dienst van Commerce in één enkele herhaling. Deze modus versnelt de levering van entiteitsupdates aan de Commerce Service en verkleint de opslaggrootte van de voedertabellen.
-
Verouderde de uitvoerwijze - op deze wijze, wordt het gegeven verzameld in één enkel proces. Dan, verzendt een kroonbaan de verzamelde gegevens naar de verbonden handelsdiensten. In gegevensexportlogitems worden feeds die de oude modus gebruiken, aangeduid met
(legacy)
.
Synchronisatietypen
SaaS-gegevensexport ondersteunt drie synchronisatietypen: volledige synchronisatie, gedeeltelijke synchronisatie en opnieuw proberen mislukte items te synchroniseren.
Volledige synchronisatie
Nadat u een Adobe Commerce-instantie hebt verbonden met Commerce Service, voert u een volledige synchronisatie uit om gegevens van de entiteitsfeed van Adobe Commerce naar de verbonden service te verzenden.
Gedeeltelijke synchronisatie
Met gedeeltelijke synchronisatie, verzendt de gegevensuitvoer van SaaS automatisch updates van de toepassing van Commerce, zoals productnaamveranderingen of prijsupdates, naar de verbonden handelsdiensten.
Bij het exporteren van gegevens worden de volgende uitsnijdtaken gebruikt om de gedeeltelijke synchronisatie te automatiseren.
-
"index" voor taken van de structuurgroep:
- De
indexer_reindex_all_invalid
-taak wijzigt alle ongeldige feeds opnieuw. Het is een standaard Adobe Commerce-bouwtaak. - De
saas_data_exporter
-taak is bedoeld voor verouderde exportfeeds. - De
sales_data_exporter
-taak is specifiek voor de exporteerfeed met verkoopgegevens.
- De
Deze banen lopen elke minuut.
Voor gedeeltelijke synchronisatie is de volgende configuratie vereist voor de Commerce-toepassing:
-
Alle SaaS-indexen voor gegevensexport worden geconfigureerd in de
Update by Schedule
-modus.In SaaS-gegevensexportversie 103.1.0 en hoger is de
Update by Schedule
-modus standaard ingeschakeld. U kunt de indexconfiguratie op de server verifiëren met de Commerce CLI-opdracht,bin/magento indexer:show-mode | grep -i feed
Opnieuw Mislukte items synchroniseren
Bij Opnieuw proberen mislukte items synchroniseren wordt een afzonderlijk proces gebruikt om items opnieuw te verzenden die niet konden worden gesynchroniseerd vanwege fouten tijdens het synchronisatieproces, bijvoorbeeld een toepassingsfout, netwerkverstoring of SaaS-servicefout. De implementatie voor deze synchronisatie is ook gebaseerd op uitsnijdtaken.
resync_failed_feeds_data_exporter
taken voor de uitsnijdgroep:- De
<feed name>_feed_resend_failed_feeds_items
-taak herstelt items die niet konden worden gesynchroniseerd, bijvoorbeeldproducts_feed_resend_failed_items
.
- De
Het synchronisatieproces weergeven en beheren
De meeste synchronisatieactiviteiten worden automatisch verwerkt op basis van de toepassingsconfiguratie. De SaaS-gegevensexport biedt echter ook tools om het proces te beheren.
-
De gebruikers Admin kunnen synchronisatievooruitgang bekijken en volgen en informatie over de gegevens van het dashboard van het Beheer van Gegevenskrijgen.
-
Ontwikkelaars, systeemintegrators of beheerders met toegang tot de Commerce-toepassingsserver kunnen het synchronisatieproces en de gegevensinvoer beheren met behulp van het opdrachtregelprogramma van Adobe Commerce (CLI). Zie {de Verwijzing van het Bevel van de Uitvoer van 0} Gegevens 🔗.
Configuratie Commerce-toepassing controleren
Gedeeltelijke synchronisatie en Opnieuw mislukte items synchroniseren werken alleen als het Commerce-exemplaar correct is geconfigureerd. De configuratie wordt meestal voltooid wanneer u de Commerce Service instelt. Controleer de volgende configuratie als de gegevensexport niet correct werkt.
-
Verifieer dat de indexen van Adminlopen of door het bevel van Commerce CLI te gebruiken
bin/magento indexer:info
. -
Controleer of de indexeerders voor de volgende feeds zijn ingesteld op
Update by Schedule
: Cataloguskenmerken, Product, Productoverschrijvingen en Productvariabele. U kunt de indexen van Beheer van de Indexin Admin controleren of CLI gebruiken (bin/magento indexer:show-mode | grep -i feed
).
Meldingen van gebeurtenismanager voor het registreren van gegevensoverdracht
In versie 103.3.4 en hoger verzendt SaaS Data Export de gebeurtenis data_sent_outside
wanneer gegevens van de Commerce-instantie naar Adobe Commerce-services worden verzonden.
$this->eventManager->dispatch(
"data_sent_outside",
[
"timestamp" => time(),
"type" => $metadata->getFeedName(),
"data" => $data
]
);