Penyerapan batch

Feed data memungkinkan Anda menyediakan restoran, layanan, dan menu di Pesan dengan Google.

Dokumen ini membahas cara menghosting inventaris produksi dan sandbox Anda serta menggunakan penyerapan batch untuk memperbarui inventaris Anda di Pesan dengan Google.

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 Pesan dengan Google dapat 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 hosting feed data untuk lingkungan sandbox dan produksi secara terpisah. Dengan pendekatan ini, Anda dapat 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 Anda, lakukan tindakan berikut:

  1. Buat file feed data Anda.
  2. Pilih solusi hosting.
  3. Hosting feed data Anda.
  4. Pastikan file feed data Anda diperbarui secara berkala. Feed data produksi harus diperbarui setiap hari.

Untuk mengetahui detail 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 tingkat atas Restaurant, Service, dan Menu, beserta entitas turunannya, tidak boleh melebihi 4 MB sekaligus.

Memilih solusi hosting

Tabel berikut mencantumkan opsi untuk menghosting feed data Anda dan cara host tersebut berfungsi dengan Pesan dengan Google:

Amazon S3 Google Cloud Storage HTTPS dengan peta situs
Kredensial dan akses

Berikan informasi berikut kepada Google:

  • ID kunci akses
  • Kunci akses rahasia
  • Jalur ke direktori S3 produksi dan sandbox serta file marker.txt Anda. Jalur harus diawali dengan s3://.

Bucket S3 harus menyertakan informasi berikut:

  • File feed untuk inventaris Anda.
  • marker.txt, yang berisi stempel waktu yang digunakan untuk mengambil.

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

Beri Google jalur ke direktori bucket produksi dan sandbox serta file marker.txt Anda. Jalur harus diawali dengan gs://.

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: Menyetel izin bucket.

Bucket GCS harus menyertakan informasi berikut:

  • File feed untuk inventaris Anda.
  • marker.txt, yang berisi stempel waktu yang digunakan untuk mengambil.

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

Berikan informasi berikut kepada Google:

  • Kredensial ke autentikasi dasar Anda.
  • Jalur ke jalur peta situs produksi dan sandbox. Jalur harus diawali dengan https://.
  • Protokol: Anda harus menyediakan file feed melalui HTTPS, bukan HTTP.
  • Keamanan: Google sangat menyarankan Anda untuk melindungi file feed yang dihosting dengan Autentikasi Dasar.
Cara Google mengetahui file mana yang perlu diambil Listingan direktori semua file dalam bucket. Listingan direktori semua file dalam bucket. Setiap URL file tercantum dalam peta situs.
Cara Google mengetahui bahwa file siap diambil Setelah selesai membuat feed data Anda, update file marker.txt dengan stempel waktu terbaru. Setelah selesai membuat feed data Anda, update 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 kurang dari 100.000 file di bucket Amazon S3.

Jumlah file maksimum: 100.000.

Anda harus memiliki total kurang dari 100.000 file dalam bucket Google Cloud Storage.

Jumlah file maksimum: 100.000.

Jumlah jalur file dalam file XML peta situs harus kurang dari 100.000.

Menghubungkan feed data untuk penyerapan batch

Setelah menghosting feed, Anda harus menghubungkannya ke project Anda di Portal Partner. Konfigurasi awal feed produksi dilakukan di halaman Orientasi Tugas. Di lain waktu, konfigurasi feed sandbox dan produksi 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

  1. Di Portal Partner, buka Konfigurasi > Feed.
  2. Klik Edit, lalu isi formulir Update Feed:

    • Metode pengiriman feed: Setel 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.
  3. Klik Submit.
  4. Setelah satu hingga dua jam, periksa apakah penyerapan batch mengambil file feed Anda.

Jika Anda menghosting feed data dengan Google Cloud Storage

  1. Di Portal Partner, buka Konfigurasi > Feed.
  2. Klik Edit, lalu isi formulir Update Feed:

    • Metode pengiriman feed: Setel ke Google Cloud Storage.
    • File Penanda: Berikan URL file marker.txt.
    • File Data: Berikan URL ke bucket GCS yang berisi feed data.
  3. Klik Submit.
  4. Akun layanan dibuat untuk mengakses bucket GCS Anda. Nama akun dapat ditemukan di Konfigurasi > Feed setelah tugas orientasi selesai. Akun layanan ini memerlukan peran "Storage Legacy Object Reader". Peran ini dapat diberikan ke akun layanan di halaman IAM Google Cloud Console.
  5. Setelah satu hingga dua jam, periksa apakah penyerapan batch mengambil file feed Anda.

Jika Anda menghosting feed data dengan HTTPS

  1. Di Portal Partner, buka Konfigurasi > Feed.
  2. Klik Edit, lalu isi formulir Update Feed:

    • Metode pengiriman feed: Setel 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.
  3. Klik Submit.
  4. 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 di peta situs harus mengarah ke file itu sendiri.
  • Jika peta situs menyertakan referensi ke penyedia cloud dan bukan nama domain Anda sendiri, pastikan agar awal URL, seperti https://www.yourcloudprovider.com/your_id, stabil dan unik untuk tugas batch Anda.
  • Berhati-hatilah untuk tidak mengupload peta situs parsial (seperti jika terjadi upload data sebagian). Jika Anda melakukannya, Google hanya akan menyerap file dalam peta situs, yang akan menyebabkan level inventaris Anda turun dan dapat menyebabkan penyerapan feed diblokir.
  • Pastikan jalur ke file yang direferensikan di peta situs tidak berubah. Misalnya, jangan mencantumkan referensi peta situs Anda https://www.yourcloudprovider.com/your_id/10000.json hari ini, tetapi sebaiknya rujuk ke https://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 menurut 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 Anda

Setelah feed data Anda terhubung, Google akan memeriksa pembaruan setiap satu jam sekali, tetapi kami hanya menyerap semua feed data saat file marker.txt atau sitemap.xml telah diubah. Kami harap Anda memperbarui feed data satu kali sehari untuk mencegah inventaris usang.

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 seberapa baru feed data.

Saat penyerapan batch diserap,

  • Entitas baru yang tidak ada di inventaris OwG Anda saat ini dan tidak memiliki error akan disisipkan.
  • Entitas sudah ada dalam inventaris yang tidak memiliki error pada penyerapan dan memiliki dateModified yang lebih baru daripada entrinya saat ini atau jika tidak memiliki dateModified waktu mulai penyerapan feed akan lebih baru daripada entri saat ini yang akan diperbarui, jika tidak, entitas tersebut akan ditandai sebagai usang.
  • Entitas yang merupakan bagian dari feed sebelumnya yang tidak lagi disertakan dalam feed batch yang sedang diproses akan dihapus, selama tidak ada error tingkat file dalam feed.

Stempel waktu atau header respons last-modified harus diperbarui hanya setelah semua file feed data dibuat dan diperbarui. Batasi tugas batch yang memperbarui feed data Anda agar berjalan hanya sekali sehari. Atau, ada jeda setidaknya tiga jam antara setiap tugas batch. Jika Anda tidak melakukan langkah-langkah ini, Google dapat mengambil file yang sudah usang.