Feed data memungkinkan Anda menyediakan restoran, layanan, dan menu di Pemesanan menyeluruh.
Dokumen ini membahas cara menghosting inventaris sandbox dan produksi serta menggunakan penyerapan batch untuk memperbarui inventaris Anda di Pemesanan Lengkap.
Lingkungan feed data
Ada tiga lingkungan feed data yang tersedia untuk pengembangan integrasi Anda:
Lingkungan feed | Deskripsi | Penyerapan batch |
---|---|---|
Kotak Pasir | Lingkungan pengujian untuk pengembangan feed Anda. | Wajib |
Produksi | Lingkungan produksi untuk inventaris yang ingin Anda luncurkan. | Wajib |
Feed data Hosting
Agar Pemesanan End-to-End dapat memproses feed data Sandbox dan Produksi Anda dengan 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 men-deploy perubahan ke produksi.
Misalnya, jika 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, lakukan tindakan 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 mengetahui detail tentang cara membuat feed inventaris, lihat dokumentasi untuk entity
Restaurant
,
Service
,
dan Menu
, serta bagian
Membuat feed data.
Panduan tentang file feed data
Setiap file, yang dapat berisi beberapa entitas, tidak boleh melebihi 200 MB. Entitas level atas
Restaurant
, Service
, dan Menu
, beserta
entitas turunannya, tidak boleh melebihi 4 MB secara keseluruhan.
Memilih solusi hosting
Tabel berikut mencantumkan opsi untuk menghosting feed data Anda dan cara kerja host tersebut dengan Pemesanan End-to-End:
Amazon S3 | Google Cloud Storage | HTTPS dengan peta situs | |
---|---|---|---|
Kredensial dan akses |
Berikan informasi berikut kepada Google:
Bucket S3 harus menyertakan informasi berikut:
Contoh file |
Berikan jalur ke direktori bucket produksi dan sandbox serta file Tambahkan akun layanan yang diberikan oleh konsultan Google Anda sebagai pembaca bucket Google Cloud Storage Anda. Untuk informasi selengkapnya tentang cara mengontrol akses untuk Google Cloud Storage (GCS), lihat Konsol Google Cloud Platform: 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. | URL file individual 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 Anda selesai membuat feed data, perbarui header respons last-modified dari sitemap.xml dengan stempel waktu terbaru. |
Batasan file |
Jumlah file maksimum: 100.000. Anda harus memiliki total file kurang dari 100.000 di bucket Amazon S3. |
Jumlah file maksimum: 100.000. Anda harus memiliki total file kurang dari 100.000 di bucket Google Cloud Storage. |
Jumlah file maksimum: 100.000. Jumlah jalur file dalam file XML peta situs Anda harus kurang dari 100.000. |
Menghubungkan feed data untuk penyerapan batch
Setelah menghosting feed, Anda harus menghubungkannya ke project di Actions Center. Konfigurasi awal feed produksi dilakukan di halaman Tugas Orientasi. Kemudian, konfigurasi feed produksi dan sandbox dapat diperbarui dari halaman Konfigurasi > Feed kapan saja oleh pengguna portal dengan 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, lalu isi formulir Update 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.
- Access ID: 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 Kirim.
- 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 Update 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 Kirim.
- 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, lalu isi formulir Update 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 Kirim.
- 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 | |
---|---|---|---|
Jalur | 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 menentukan peta situs:
- Link di peta situs Anda harus mengarah ke file itu sendiri.
- Jika peta situs Anda menyertakan referensi ke penyedia cloud, bukan nama domain Anda sendiri,
pastikan awal URL, seperti
https://www.yourcloudprovider.com/your_id
, stabil dan unik untuk tugas batch Anda. - Berhati-hatilah agar tidak mengupload peta situs parsial (seperti saat terjadi upload data parsial). Tindakan tersebut akan menyebabkan Google hanya menyerap file dalam peta situs, yang akan menyebabkan tingkat inventaris Anda menurun dan dapat menyebabkan penyerapan feed Anda diblokir.
- Pastikan jalur ke file yang dirujuk dalam peta situs tidak berubah. Misalnya, jangan
buat peta situs Anda mereferensikan
https://www.yourcloudprovider.com/your_id/10000.json
hari ini, lalu mereferensikanhttps://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 menurut 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 update sekali setiap jam, tetapi kami hanya menyerap
semua feed data saat file marker.txt
atau sitemap.xml
telah
diubah. Sebaiknya perbarui feed data Anda sekali sehari untuk mencegah inventaris yang tidak berlaku.
Untuk menentukan bahwa 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 keaktualan feed data.
Saat feed batch sedang ditransfer,
- Entitas baru yang tidak ada dalam inventaris Pemesanan Lengkap Anda saat ini dan tidak memiliki error akan disisipkan.
-
Entitas yang sudah ada di inventaris dan tidak memiliki error saat
penyerapan serta memiliki
dateModified
yang lebih baru dari entri saat ini atau jika tidak memilikidateModified
, waktu mulai penyerapan feed lebih baru dari entri saat ini, maka entitas tersebut akan diperbarui, jika tidak, entitas tersebut akan ditandai sebagai tidak berlaku. - Entitas yang merupakan bagian dari feed sebelumnya yang tidak lagi disertakan dalam feed batch yang sedang diproses akan dihapus, asalkan 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 berjalan
sekali sehari. Atau, buat jeda minimal tiga jam di antara setiap tugas batch. Jika Anda tidak
melakukan langkah-langkah ini, Google mungkin mengambil file yang sudah tidak berlaku.