Feed data memungkinkan Anda menyediakan restoran, layanan, dan menu dalam Pemesanan Menyeluruh.
Dokumen ini membahas cara menghosting inventaris sandbox dan produksi Anda serta menggunakan penyerapan batch untuk memperbarui inventaris Anda dalam Pemesanan Menyeluruh.
Lingkungan feed data
Ada tiga lingkungan feed data yang tersedia untuk pengembangan integrasi Anda:
Lingkungan feed | Deskripsi | Penyerapan batch |
---|---|---|
Sandbox | Lingkungan pengujian untuk pengembangan feed Anda. | Wajib |
Produksi | Lingkungan produksi untuk inventaris yang ingin Anda luncurkan. | Wajib |
Menghosting feed data
Agar Pemesanan Menyeluruh guna memproses feed data Sandbox dan Produksi berdasarkan penyerapan batch, Anda harus menghosting file feed data di Google Cloud Storage, Amazon S3, atau HTTPS dengan peta situs.
Sebaiknya Anda menghosting feed data untuk lingkungan sandbox dan produksi secara terpisah. Pendekatan ini memungkinkan Anda melakukan pengembangan dan pengujian di lingkungan feed sandbox sebelum menerapkan perubahan ke produksi.
Misalnya, jika Anda menggunakan Google Cloud Storage sebagai opsi hosting, Anda akan memiliki jalur berikut:
- Feed Sandbox:
gs://foorestaurant-google-feed-sandbox/
- Feed Produksi:
gs://foorestaurant-google-feed-prod/
Untuk menghosting inventaris Anda, lakukan hal berikut:
- Buat file feed data Anda.
- Pilih solusi hosting.
- Menghosting feed data Anda.
- Pastikan file feed data Anda diperbarui secara rutin. Feed data produksi harus diperbarui setiap hari.
Untuk detail tentang cara membuat feed inventaris, lihat dokumentasi untuk entitas
Restaurant
,
Service
,
dan Menu
, serta bagian
Membuat feed data.
Panduan tentang file feed data
Setiap file, yang dapat berisi beberapa entitas, tidak boleh lebih dari 200 MB. Entity level teratas Restaurant
, Service
, dan Menu
, beserta entity turunannya, tidak boleh melebihi 4 MB secara bersamaan.
Pilih solusi hosting
Tabel berikut mencantumkan opsi untuk menghosting feed data Anda dan cara host tersebut bekerja dengan Pengurutan Menyeluruh:
Amazon S3 | Google Cloud Storage | HTTPS dengan peta situs | |
---|---|---|---|
Kredensial dan akses |
Berikan informasi berikut kepada Google:
Bucket S3 perlu menyertakan informasi berikut:
Contoh file |
Beri Google jalur ke direktori bucket sandbox dan produksi Anda serta file Tambahkan akun layanan yang disediakan oleh konsultan Google Anda sebagai pembaca bucket Google Cloud Storage. Untuk informasi selengkapnya tentang cara mengontrol akses untuk Google Cloud Storage (GCS), lihat Google Cloud Platform Console: Menetapkan izin bucket. Bucket GCS harus menyertakan informasi berikut:
Contoh file |
Berikan informasi berikut kepada Google:
|
Cara Google mengetahui file mana yang perlu diambil | Listingan direktori semua file dalam bucket. | Listingan direktori semua file dalam bucket. | Masing-masing URL file yang tercantum dalam peta situs. |
Cara Google mengetahui bahwa file siap diambil | Setelah selesai membuat feed data, perbarui file marker.txt
dengan stempel waktu terbaru. |
Setelah selesai membuat feed data, perbarui file marker.txt
dengan stempel waktu terbaru. |
Setelah selesai membuat feed data, perbarui header respons
last-modified dari sitemap.xml Anda dengan stempel waktu terbaru. |
Batasan file |
Jumlah file maksimum: 100.000. Anda harus memiliki total kurang dari 100.000 file di bucket Amazon S3. |
Jumlah file maksimum: 100.000. Anda harus memiliki total kurang dari 100.000 file di bucket Google Cloud Storage. |
Jumlah file maksimum: 100.000. Jumlah jalur file dalam file XML peta situs Anda tidak boleh lebih dari 100.000. |
Menghubungkan feed data untuk penyerapan batch
Setelah menghosting feed, Anda harus menghubungkannya ke project Anda di Pusat Tindakan. Konfigurasi awal feed produksi dilakukan di halaman Tugas Orientasi. Nantinya, konfigurasi feed produksi dan sandbox dapat diperbarui dari halaman Konfigurasi > Feed kapan saja oleh pengguna portal yang memiliki peran administratif. Lingkungan sandbox digunakan untuk tujuan pengembangan dan pengujian, sedangkan feed produksi ditampilkan kepada pengguna.
Jika Anda menghosting feed data dengan Amazon S3
- Di Pusat Tindakan, buka Konfigurasi > Feed.
-
Klik Edit dan isi formulir Perbarui Feed:
- Metode pengiriman feed: Tetapkan ke Amazon S3.
- File Penanda: Berikan URL file
marker.txt
. - File Data: Berikan URL ke bucket S3 yang berisi feed data.
- ID Akses: Masukkan ID kunci akses IAM dengan izin untuk membaca dari resource S3.
- Kunci Akses: Masukkan kunci akses rahasia IAM dengan izin untuk membaca dari resource S3.
- Klik Submit.
- Setelah satu hingga dua jam, periksa apakah penyerapan batch mengambil file feed Anda.
Jika Anda menghosting feed data dengan Google Cloud Storage
- Di Pusat Tindakan, buka Konfigurasi > Feed.
-
Klik Edit dan isi formulir Perbarui Feed:
- Metode pengiriman feed: Tetapkan ke Google Cloud Storage.
- File Penanda: Berikan URL file
marker.txt
. - File Data: Berikan URL ke bucket GCS yang berisi feed data.
- Klik Submit.
- Akun layanan dibuat untuk mengakses bucket GCS Anda. Nama akun dapat ditemukan di Konfigurasi > Feed setelah tugas aktivasi selesai. Akun layanan ini memerlukan peran “Storage Legacy Object Reader”. Peran ini dapat diberikan ke akun layanan di halaman IAM pada Konsol Google Cloud.
- Setelah satu hingga dua jam, periksa apakah penyerapan batch mengambil file feed Anda.
Jika Anda menghosting feed data dengan HTTPS
- Di Pusat Tindakan, buka Konfigurasi > Feed.
-
Klik Edit dan isi formulir Perbarui Feed:
- Metode pengiriman feed: Tetapkan ke HTTPS.
- File Peta Situs: Berikan URL file
sitemap.xml
. - Nama pengguna: Masukkan kredensial nama pengguna untuk mengakses server HTTPS.
- Sandi: Masukkan sandi untuk mengakses server HTTPS.
- Klik Submit.
- Setelah satu hingga dua jam, periksa apakah penyerapan batch mengambil file feed Anda.
Contoh jalur
Tabel berikut berisi contoh jalur untuk setiap opsi hosting:
Amazon S3 | Google Cloud Storage | HTTPS dengan peta situs | |
---|---|---|---|
Path | s3://foorestaurant-google-feed-sandbox/ |
gs://foorestaurant-google-feed-sandbox/ |
https://sandbox-foorestaurant.com/sitemap.xml |
File penanda | s3://foorestaurant-google-feed-sandbox/marker.txt |
gs://foorestaurant-google-feed-sandbox/marker.txt |
Tidak berlaku |
Peta situs untuk hosting HTTPS
Gunakan panduan berikut saat Anda menentukan peta situs:
- Link dalam peta situs Anda harus mengarah ke file itu sendiri.
- Jika peta situs Anda menyertakan referensi ke penyedia cloud, bukan nama domain Anda sendiri,
pastikan bahwa awal URL, seperti
https://www.yourcloudprovider.com/your_id
, stabil dan unik untuk tugas batch Anda. - Berhati-hatilah agar tidak mengupload peta situs sebagian (seperti jika terjadi upload data sebagian). Jika hal tersebut dilakukan, Google hanya akan menyerap file di peta situs, yang akan menyebabkan level inventaris Anda menurun dan dapat menyebabkan penyerapan feed Anda diblokir.
- Pastikan jalur ke file yang dirujuk di peta situs tidak berubah. Misalnya, jangan
minta referensi peta situs
https://www.yourcloudprovider.com/your_id/10000.json
hari ini, lalu referensikanhttps://www.yourcloudprovider.com/your_id/20000.json
besok.
Contoh peta situs
Berikut adalah contoh file sitemap.xml
yang menayangkan file feed data:
Contoh 1: Entitas yang dikelompokkan berdasarkan penjual (Direkomendasikan).
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>
Contoh 2: Entitas yang dikelompokkan berdasarkan jenis.
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>
Memperbarui feed data
Setelah feed data Anda terhubung, Google akan memeriksa pembaruan setiap satu jam sekali, tetapi kami hanya menyerap semua feed data jika file marker.txt
atau sitemap.xml
telah diubah. Sebaiknya Anda memperbarui feed data satu kali sehari untuk mencegah inventaris yang tidak berlaku.
Untuk menentukan apakah feed data telah diubah dan siap untuk penyerapan batch, perbarui kolom metadata objek last-modified
dari file marker.txt
(Untuk GCP dan S3) atau header respons last-modified
dari file sitemap.xml
. Google
menggunakan nilai ini untuk menentukan seberapa baru feed data.
Saat feed batch diserap,
- Entitas baru yang tidak ada dalam inventaris Pemesanan Menyeluruh saat ini dan tidak memiliki error akan disisipkan.
-
Entitas sudah ada di inventaris yang tidak memiliki error saat
penyerapan dan memiliki
dateModified
yang lebih baru daripada entrinya saat ini atau jika tidak memilikidateModified
, waktu mulai penyerapan feed akan lebih baru daripada entri saat ini. Jika tidak, entitas akan ditandai sebagai tidak berlaku. - Entity yang merupakan bagian dari feed sebelumnya dan tidak lagi disertakan dalam feed batch yang sedang diproses akan dihapus, jika tidak ada error tingkat file dalam feed.
Stempel waktu atau header respons last-modified
hanya boleh diperbarui setelah semua file
feed data dibuat dan diperbarui. Batasi tugas batch yang memperbarui feed data Anda agar hanya dijalankan sekali sehari. Atau, beri jeda minimal tiga jam antara setiap tugas batch. Jika Anda tidak
melakukan langkah-langkah ini, Google mungkin mengambil file yang sudah tidak berlaku.