Über Ihre Datenfeeds können Sie Ihr Restaurant, Ihre Dienstleistungen und Ihre Speisekarte in Order with Google verfügbar machen.
In diesem Dokument erfahren Sie, wie Sie Ihre Sandbox und Ihr Produktionsinventar hosten und die Batchaufnahme verwenden, um Ihr Inventar in Order with Google zu aktualisieren.
Datenfeed-Umgebungen
Für Ihre Integrationsentwicklung stehen drei Datenfeed-Umgebungen zur Verfügung:
Feedumgebung | Beschreibung | Batchaufnahme |
---|---|---|
Sandbox | Die Testumgebung für die Feedentwicklung | Required |
Produktion | Die Produktionsumgebung für Ihr Inventar, das Sie einführen möchten. | Required |
Hosting von Datenfeeds
Damit Order with Google Ihre Sandbox- und Produktions-Datenfeeds per Batchaufnahme verarbeiten kann, müssen Sie Ihre Datenfeeddateien in Google Cloud Storage, Amazon S3 oder HTTPS mit einer Sitemap hosten.
Wir empfehlen, die Datenfeeds für Ihre Sandbox- und Produktionsumgebung separat zu hosten. Mit diesem Ansatz 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 Hostingoption verwenden, haben Sie folgende Pfade:
- Sandbox-Feed:
gs://foorestaurant-google-feed-sandbox/
- Produktionsfeed:
gs://foorestaurant-google-feed-prod/
So hosten Sie Ihr Inventar:
- Generieren Sie Ihre Datenfeeddateien.
- Wählen Sie eine Hostinglösung aus.
- Hosten Sie Ihre Datenfeeds.
- Achten Sie darauf, dass Ihre Datenfeeddateien regelmäßig aktualisiert werden. Produktionsdatenfeeds müssen täglich aktualisiert werden.
Weitere Informationen zum Erstellen eines Inventarfeeds findest du in der Dokumentation zu den Entitäten Restaurant
, Service
und Menu
sowie im Abschnitt Datenfeed erstellen.
Richtlinien für Datenfeeddateien
Jede Datei, die mehrere Entitäten enthalten darf, darf 200 MB nicht überschreiten. Die Entitäten der obersten Ebene Restaurant
, Service
und Menu
dürfen zusammen mit ihren untergeordneten Entitäten 4 MB nicht zusammen überschreiten.
Hosting-Lösung auswählen
In der folgenden Tabelle sind die Optionen für das Hosten deiner Datenfeeds und ihre Funktionsweise mit „Order with Google“ aufgeführt:
Amazon S3 | Google Cloud Storage | HTTPS mit einer Sitemap | |
---|---|---|---|
Anmeldedaten und Zugriff |
Stellen Sie Google die folgenden Informationen zur Verfügung:
Der S3-Bucket muss die folgenden Informationen enthalten:
Beispieldatei |
Geben Sie Google die Pfade zu Ihren Produktions- und Sandbox-Bucket-Verzeichnissen und der Datei Fügen Sie das von Ihrem Google-Berater bereitgestellte Dienstkonto als Leser Ihres Google Cloud Storage-Buckets hinzu. 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:
Beispieldatei |
Stellen Sie Google die folgenden Informationen zur Verfügung:
|
Woher weiß Google, welche Dateien abgerufen werden müssen? | Verzeichnisliste aller Dateien im Bucket. | Verzeichnisliste aller Dateien im Bucket. | Die einzelnen URLs der in der Sitemap aufgeführten Dateien |
Woher weiß Google, dass Dateien abgerufen werden können? | Nachdem Sie die Datenfeeds generiert haben, aktualisieren Sie die Datei marker.txt mit dem neuesten Zeitstempel. |
Nachdem Sie die Datenfeeds generiert haben, aktualisieren Sie die Datei marker.txt mit dem neuesten Zeitstempel. |
Nachdem Sie die Datenfeeds generiert haben, aktualisieren Sie den Antwortheader last-modified Ihres sitemap.xml mit dem neuesten Zeitstempel. |
Dateilimits |
Maximale Anzahl von Dateien: 100.000. Ihr Amazon S3-Bucket muss weniger als 100.000 Dateien enthalten. |
Maximale Anzahl von Dateien: 100.000. Ihr Google Cloud Storage-Bucket muss weniger als 100.000 Dateien enthalten. |
Maximale Anzahl von Dateien: 100.000. Die Anzahl der Dateipfade in deiner XML-Sitemap-Datei muss kleiner als 100.000 sein. |
Datenfeeds für die Batchaufnahme verbinden
Nachdem Sie Ihre Feeds gehostet haben, müssen Sie sie im Partner-Portal mit Ihrem Projekt verknüpfen. Die Erstkonfiguration von Produktionsfeeds erfolgt auf der Seite Onboarding Tasks (Onboarding-Aufgaben). Später können die Produktions- und Sandbox-Feeds von jedem Portalnutzer mit Administratorrolle auf der Seite Konfiguration > Feeds aktualisiert werden. Die Sandbox-Umgebung wird für Entwicklungs- und Testzwecke verwendet, die Produktionsfeeds werden Nutzern angezeigt.
Wenn Sie Ihre Datenfeeds mit Amazon S3 hosten
- Gehen Sie im Partner-Portal zu Konfiguration > Feeds.
-
Klicken Sie auf Bearbeiten und füllen Sie das Formular Feed aktualisieren aus:
- Feedübermittlungsmethode: Wählen Sie die Option Amazon S3 aus.
- Markierungsdatei: Geben Sie die URL der Datei
marker.txt
an. - Datendateien: Geben Sie die URL zum S3-Bucket an, der die Datenfeeds enthält.
- Zugriffs-ID:Geben Sie die IAM-Zugriffsschlüssel-ID mit Berechtigungen zum Lesen aus S3-Ressourcen ein.
- Zugriffsschlüssel:Geben Sie den geheimen Zugriffsschlüssel für IAM ein, der Lesezugriff auf S3-Ressourcen hat.
- Klicken Sie auf Senden.
- Prüfen Sie nach ein bis zwei Stunden, ob die Batchaufnahme Ihre Feeddateien abruft.
Wenn Sie Ihre Datenfeeds mit Google Cloud Storage hosten
- Gehen Sie im Partner-Portal zu Konfiguration > Feeds.
-
Klicken Sie auf Bearbeiten und füllen Sie das Formular Feed aktualisieren aus:
- Feedübermittlungsmethode: Wählen Sie Google Cloud Storage aus.
- Markierungsdatei: Geben Sie die URL der Datei
marker.txt
an. - Datendateien:Geben Sie die URL des GCS-Buckets an, der die Datenfeeds enthält.
- Klicken Sie auf Senden.
- Ein Dienstkonto für den Zugriff auf Ihren GCS-Bucket wird erstellt. Den Kontonamen finden Sie unter Konfiguration > Feeds, nachdem die Einrichtung abgeschlossen wurde. Dieses Dienstkonto benötigt die Rolle „Leser von Legacy-Storage-Objekten“. Diese Rolle kann dem Dienstkonto auf der IAM-Seite der Google Cloud Console zugewiesen werden.
- Prüfen Sie nach ein bis zwei Stunden, ob die Batchaufnahme Ihre Feeddateien abruft.
Wenn Sie Ihre Datenfeeds mit HTTPS hosten
- Gehen Sie im Partner-Portal zu Konfiguration > Feeds.
-
Klicken Sie auf Bearbeiten und füllen Sie das Formular Feed aktualisieren aus:
- Feedübermittlungsmethode:Wählen Sie die Option HTTPS aus.
- Sitemap-Datei: Geben Sie die URL der
sitemap.xml
-Datei an. - Nutzername:Geben Sie die Anmeldedaten für den Zugriff auf den HTTPS-Server ein.
- Passwort:Geben Sie das Passwort für den Zugriff auf den HTTPS-Server ein.
- Klicken Sie auf Senden.
- 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 deiner Sitemap müssen auf die Dateien selbst verweisen.
- Wenn deine Sitemap Verweise auf einen Cloud-Anbieter statt auf deinen eigenen Domainnamen enthält, achte darauf, dass der Anfang der URLs, z. B.
https://www.yourcloudprovider.com/your_id
, stabil und für deinen Batchjob eindeutig ist. - Achte darauf, keine unvollständigen Sitemaps hochzuladen, z. B. bei einem unvollständigen Datenupload. Dadurch nimmt Google nur die Dateien in der Sitemap auf. Dadurch sinkt deine Inventarebene und deine Feedaufnahme wird möglicherweise blockiert.
- Achten Sie darauf, dass sich die Pfade zu den in der Sitemap genannten Dateien nicht ändern. Beispielsweise solltest du nicht darauf achten, dass deine Sitemap heute auf
https://www.yourcloudprovider.com/your_id/10000.json
verweist, sondern morgen aufhttps://www.yourcloudprovider.com/your_id/20000.json
verweist.
Beispiel für eine Sitemap
Hier ist ein Beispiel für eine sitemap.xml
-Datei, 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 deine Datenfeeds verbunden sind, sucht Google einmal pro Stunde nach Updates. Wir nehmen jedoch alle Datenfeeds nur auf, wenn die Dateien marker.txt
oder sitemap.xml
geändert wurden. 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 das Objektmetadatenfeld last-modified
der Datei marker.txt
(für die GCP und S3) oder den Antwortheader last-modified
der Datei sitemap.xml
. Google verwendet diese Werte, um zu bestimmen, wie aktuell ein Datenfeed ist.
Wenn der Batchfeed aufgenommen wird,
- Neue Entitäten, die nicht in Ihrem aktuellen OwG-Inventar enthalten sind und in denen keine Fehler enthalten sind, werden eingefügt.
-
Entitäten, die im Inventar bereits vorhanden sind und keine Fehler bei der Aufnahme haben, haben entweder einen
dateModified
aktuelleren Wert als der aktuelle Eintrag oder wenndateModified
keine Startzeit für die Feedaufnahme hat als der aktuelle Eintrag, die sie andernfalls aktualisieren würden. Andernfalls werden sie als veraltet gekennzeichnet. - Entitäten, die Teil eines früheren Feeds waren, die nicht mehr im Batchfeed enthalten sind, werden gelöscht, sofern der Feed keine Fehler auf Dateiebene enthält.
Der Zeitstempel oder der last-modified
-Antwortheader darf erst aktualisiert werden, nachdem alle Datenfeeddateien generiert und aktualisiert wurden. Beschränken Sie die Batchjobs, mit denen Ihre Datenfeeds aktualisiert werden, so, dass sie nur einmal täglich ausgeführt werden. Alternativ sollte jeder Abstand zwischen den Batchjobs mindestens drei Stunden betragen. Wenn Sie diese Schritte nicht ausführen, ruft Google möglicherweise veraltete Dateien ab.