Batchaufnahme

Mit Ihren Datenfeeds können Sie stellen Sie Ihr Restaurant, Ihre Dienstleistungen und Ihre Speisekarte in einer End-to-End-Bestellung zur Verfügung.

In diesem Dokument wird beschrieben, wie Sie Ihr Sandbox- und Produktionsinventar hosten und die Batchaufnahme verwenden. um Ihr Inventar im Bereich Auftrags-End-to-End-Aktualisierung zu aktualisieren.

Datenfeed-Umgebungen

Für die Integrationsentwicklung stehen drei Datenfeed-Umgebungen zur Verfügung:

Feedumgebung Beschreibung Batchaufnahme
Sandbox Die Testumgebung für Ihre Feedentwicklung. Erforderlich
Produktion Die Produktionsumgebung für das Inventar, das Sie einführen möchten. Erforderlich

Hosting-Daten-Feeds

Damit die End-to-End-Bestellung Ihre Sandbox- und Produktionsdaten-Feeds im Batch verarbeiten kann müssen Sie Ihre Datenfeed-Dateien in Google Cloud Storage, Amazon S3 oder HTTPS mit einem Sitemap.

Wir empfehlen, die Datenfeeds für Ihre Sandbox- und Produktionsumgebungen zu hosten. separat. So können Sie in Ihrer Sandbox-Feedumgebung entwickeln und testen bevor Sie die Änderungen für die Produktion bereitstellen.

Wenn Sie beispielsweise Google Cloud Storage als Hosting-Option verwenden, erhalten Sie Folgendes: Pfade:

  • Sandbox-Feed: gs://foorestaurant-google-feed-sandbox/
  • Produktionsfeed: gs://foorestaurant-google-feed-prod/

So hosten Sie Ihr Inventar:

  1. Erstellen Sie Ihre Datenfeed-Dateien.
  2. Wählen Sie eine Hostinglösung aus.
  3. Hosten Sie Ihre Datenfeeds.
  4. Aktualisieren Sie Ihre Datenfeed-Dateien regelmäßig. Produktionsdatenfeeds müssen aktualisiert werden täglich.

Weitere Informationen zum Erstellen eines Inventarfeeds finden Sie in der Dokumentation zum Restaurant, Service und Menu Entitäten sowie die Datenfeed erstellen .

Richtlinien für Datenfeeddateien

Jede Datei, die mehrere Elemente enthalten kann, darf 200 MB nicht überschreiten. Die oberste Ebene die Entitäten Restaurant, Service und Menu zusammen mit ihren untergeordneten Entitäten zusammen nicht größer als 4 MB sein.

Hostinglösung auswählen

In der folgenden Tabelle sind die Optionen zum Hosten Ihrer Datenfeeds aufgeführt und die Funktionsweise dieser Hosts Reihenfolge:

Amazon S3 Google Cloud Storage HTTPS mit einer Sitemap
Anmeldedaten und Zugriff

Stellen Sie Google die folgenden Informationen zur Verfügung:

  • Zugriffsschlüssel-ID
  • Geheimer Zugriffsschlüssel
  • Die Pfade zu Ihren Produktions- und Sandbox S3-Verzeichnissen sowie zu marker.txt -Datei. Der Pfad muss mit s3:// beginnen.

Der S3-Bucket muss die folgenden Informationen enthalten:

  • Feeddateien für Ihr Inventar
  • marker.txt mit einem Zeitstempel, der zum Abrufen verwendet wird.

Beispieldatei marker.txt: 2018-12-03T08:30:42.694Z

Geben Sie Google die Pfade zu Ihren Produktions- und Sandbox-Bucket-Verzeichnissen sowie marker.txt-Datei. Die Pfade müssen mit gs:// beginnen.

Fügen Sie das von Ihrem Google-Berater bereitgestellte Dienstkonto als Leser Ihrer Google Cloud Storage-Bucket.

Weitere Informationen zum Steuern des Zugriffs für Google Cloud Storage (GCS) finden Sie unter Google Cloud Platform Console: Bucket-Berechtigungen festlegen

Der GCS-Bucket muss die folgenden Informationen enthalten:

  • Feeddateien für Ihr Inventar
  • marker.txt mit einem Zeitstempel, der zum Abrufen verwendet wird.

Beispieldatei marker.txt: 2018-12-03T08:30:42.694Z

Stellen Sie Google die folgenden Informationen zur Verfügung:

  • Anmeldedaten für Ihre Basisauthentifizierung.
  • Der Pfad zu Ihren Produktions- und Sandbox-Sitemap-Pfaden. Der Pfad muss mit https:// beginnen.
  • Protokoll: Sie müssen Ihre Feeddateien über HTTPS und nicht über HTTP zur Verfügung stellen.
  • Sicherheit: Google empfiehlt dringend, dass Sie Ihre gehosteten Feeddateien mit Basisauthentifizierung.
Woher weiß Google, welche Dateien abgerufen werden müssen? Verzeichnisliste aller Dateien im Bucket. Verzeichnisliste aller Dateien im Bucket. Einzelne URLs der in der Sitemap aufgeführten Dateien
Woher weiß Google, dass Dateien abgerufen werden können? Aktualisieren Sie nach dem Generieren Ihrer Datenfeeds die Datei marker.txt. mit dem aktuellen Zeitstempel. Aktualisieren Sie nach dem Generieren Ihrer Datenfeeds die Datei marker.txt. mit dem aktuellen Zeitstempel. Aktualisieren Sie nach dem Generieren Ihrer Datenfeeds den Antwortheader last-modified von sitemap.xml mit dem neuesten Zeitstempel.
Dateibeschränkungen

Maximale Anzahl von Dateien: 100.000.

Ihr Amazon S3-Bucket muss insgesamt weniger als 100.000 Dateien enthalten.

Maximale Anzahl von Dateien: 100.000.

Ihr Google Cloud Storage-Bucket muss insgesamt weniger als 100.000 Dateien enthalten.

Maximale Anzahl von Dateien: 100.000.

Die Anzahl der Dateipfade in Ihrer Sitemap-XML-Datei darf 100.000 nicht überschreiten.

Datenfeeds für die Batchaufnahme verbinden

Nachdem Sie Ihre Feeds gehostet haben, müssen Sie sie im Actions Center mit Ihrem Projekt verbinden. Die Die Erstkonfiguration von Produktionsfeeds erfolgt auf der Seite Onboarding Tasks (Onboarding-Aufgaben). Später Die Konfiguration von Produktions- und Sandbox-Feeds kann jederzeit über die Seite Konfiguration > Feeds von jedem Portalnutzer aktualisiert werden, der ein Administratorrolle ein. Die Sandbox-Umgebung wird zu Entwicklungs- und Testzwecken verwendet, während werden die Produktionsfeeds den Nutzern angezeigt.

Wenn Sie Ihre Datenfeeds mit Amazon S3 hosten

  1. Gehen Sie im Actions Center zu Konfiguration > Feeds:
  2. Klicken Sie auf Bearbeiten und füllen Sie das Formular Feed aktualisieren aus:

    • Feedauslieferungsmethode:Legen Sie diese Option auf Amazon S3 fest.
    • Markierungsdatei:Geben Sie die URL der Datei marker.txt an.
    • Datendateien: Geben Sie die URL zum S3-Bucket an, der die Datenfeeds enthält.
    • Access ID (Zugriffs-ID): Geben Sie die IAM-Zugriffsschlüssel-ID mit Berechtigungen zum Lesen aus S3 ein Ressourcen.
    • Access Key (Zugriffsschlüssel): Geben Sie den geheimen Zugriffsschlüssel für IAM mit Berechtigungen zum Lesen aus S3 ein. Ressourcen.
  3. Klicken Sie auf Senden.
  4. Prüfen Sie nach ein bis zwei Stunden, ob die Batchaufnahme Ihre Feeddateien abruft.

Wenn Sie Ihre Datenfeeds mit Google Cloud Storage hosten

  1. Gehen Sie im Actions Center zu Konfiguration > Feeds:
  2. Klicken Sie auf Bearbeiten und füllen Sie das Formular Feed aktualisieren aus:

    • Feedauslieferungsmethode: Legen Sie Google Cloud Storage fest.
    • Markierungsdatei:Geben Sie die URL der Datei marker.txt an.
    • Datendateien:Geben Sie die URL zum GCS-Bucket an, der die Datenfeeds enthält.
  3. Klicken Sie auf Senden.
  4. Ein Dienstkonto wird für den Zugriff auf Ihren GCS-Bucket erstellt. Den Kontonamen finden Sie hier: Nach den Onboarding-Aufgaben Konfiguration > Feeds abgeschlossen sind. Dieses Dienstkonto benötigt die Rolle „Leser alter Storage-Objekte“. Diese Rolle kann die dem Dienstkonto auf der IAM-Seite der Google Cloud Console zugewiesen werden.
  5. Prüfen Sie nach ein bis zwei Stunden, ob die Batchaufnahme Ihre Feeddateien abruft.

Wenn Sie Ihre Datenfeeds mit HTTPS hosten

  1. Gehen Sie im Actions Center zu Konfiguration > Feeds:
  2. Klicken Sie auf Bearbeiten und füllen Sie das Formular Feed aktualisieren aus:

    • Methode der Feedübermittlung:Auf HTTPS festgelegt.
    • Sitemap-Datei: Geben Sie die URL der sitemap.xml-Datei an.
    • Nutzername:Geben Sie den Nutzernamen ein, um auf den HTTPS-Server zuzugreifen.
    • Passwort: Geben Sie das Passwort ein, um auf den HTTPS-Server zuzugreifen.
  3. Klicken Sie auf Senden.
  4. Prüfen Sie nach ein bis zwei Stunden, ob die Batchaufnahme Ihre Feeddateien abruft.

Beispielpfade

Die folgende Tabelle enthält Beispielpfade für jede der Hostingoptionen:

Amazon S3 Google Cloud Storage HTTPS mit einer Sitemap
Pfad s3://foorestaurant-google-feed-sandbox/ gs://foorestaurant-google-feed-sandbox/ https://sandbox-foorestaurant.com/sitemap.xml
Markierungsdatei s3://foorestaurant-google-feed-sandbox/marker.txt gs://foorestaurant-google-feed-sandbox/marker.txt Nicht zutreffend

Sitemaps für HTTPS-Hosting

Beachten Sie beim Definieren von Sitemaps die folgenden Richtlinien:

  • Links in Ihrer Sitemap müssen auf die Dateien selbst verweisen.
  • Wenn Ihre Sitemap Verweise auf einen Cloud-Anbieter und nicht auf Ihren eigenen Domainnamen enthält, Achten Sie darauf, dass am Anfang der URLs, z. B. https://www.yourcloudprovider.com/your_id, stabil und für Ihren Batchjob eindeutig sind.
  • Achten Sie darauf, keine Teil-Sitemaps hochzuladen (wie im Fall eines unvollständigen Daten-Uploads). Tun sodass Google nur die Dateien in der Sitemap aufnimmt, wodurch Ihr Inventar und können dazu führen, dass die Feedaufnahme blockiert wird.
  • Achten Sie darauf, dass sich die Pfade zu den Dateien, auf die in der Sitemap verwiesen wird, nicht ändern. Vermeiden Sie beispielsweise Ihre Sitemap-Referenz https://www.yourcloudprovider.com/your_id/10000.json heute, aber dann auf https://www.yourcloudprovider.com/your_id/20000.json verweisen
Beispiel für eine Sitemap

Hier sehen Sie eine sitemap.xml-Beispieldatei, die Datenfeeddateien bereitstellt:

Beispiel 1: Nach Händlern gruppierte Entitäten (empfohlen)

XML

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
 <url>
   <loc>https://your_fulfillment_url.com/restaurant_1.ndjson</loc>
   <lastmod>2018-06-11T10:46:43+05:30</lastmod>
 </url>
 <url>
   <loc>https://your_fulfillment_url.com/restaurant_2.ndjson</loc>
   <lastmod>2018-06-11T10:46:43+05:30</lastmod>
 </url>
 <url>
   <loc>https://your_fulfillment_url.com/restaurant_3.ndjson</loc>
   <lastmod>2018-06-11T10:46:43+05:30</lastmod>
 </url>
</urlset>

Beispiel 2: Nach Typen gruppierte Entitäten.

XML

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
 <url>
   <loc>https://your_fulfillment_url.com/restaurant.json</loc>
   <lastmod>2018-06-11T10:46:43+05:30</lastmod>
 </url>
 <url>
   <loc>https://your_fulfillment_url.com/menu.json</loc>
   <lastmod>2018-06-11T10:46:43+05:30</lastmod>
 </url>
 <url>
   <loc>https://your_fulfillment_url.com/service.json</loc>
   <lastmod>2018-06-11T10:46:43+05:30</lastmod>
 </url>
</urlset>

Datenfeeds aktualisieren

Nachdem Ihre Datenfeeds verbunden sind, sucht Google einmal stündlich nach Aktualisierungen, die Daten werden aber nur aufgenommen, Alle Datenfeeds, wenn die Dateien marker.txt oder sitemap.xml geändert. Wir gehen davon aus, dass Sie Ihre Datenfeeds einmal täglich aktualisieren, um veraltetes Inventar zu vermeiden.

Wenn Sie angeben möchten, dass die Datenfeeds geändert wurden und für die Batchaufnahme bereit sind, aktualisieren Sie die Objektmetadatenfeld last-modified der Datei marker.txt (für die GCP und S3) oder dem last-modified-Antwortheader der Datei sitemap.xml. Google bestimmt anhand dieser Werte, wie aktuell ein Datenfeed ist.

Während der Batch-Feed aufgenommen wird,

  • Neue Elemente, die nicht im aktuellen End-to-End-Inventar für Aufträge vorhanden sind und keine würden eingefügt.
  • Bereits im Inventar vorhandene Entitäten, die keine Fehler enthalten Datenaufnahme und entweder eine dateModified aktueller als ihr aktuellen Eintrag oder wenn kein dateModified vorhanden ist, Der Beginn der Feedaufnahme liegt nach dem aktuellen Eintrag aktualisiert werden, da sie andernfalls als veraltet gekennzeichnet würden.
  • Entitäten, die Teil eines vorherigen Feeds waren und nicht mehr in wird der verarbeitete Batch-Feed gelöscht, sofern keine Datei Fehler auf dieser Ebene im Feed.

Der Zeitstempel oder der Antwortheader last-modified darf erst aktualisiert werden, nachdem alle Daten Feeddateien generiert und aktualisiert werden. Batchjobs zum Aktualisieren Ihrer Datenfeeds auf die Ausführung beschränken einmal täglich. Alternativ können Sie zwischen den einzelnen Batchjobs einen Abstand von mindestens drei Stunden einrichten. Wenn Sie keine diese Schritte ausführen, ruft Google möglicherweise veraltete Dateien ab.