Toplu besleme

Veri feed'leriniz sayesinde restoranınızı, hizmetlerinizi ve menünüzü Uçtan Uca Sipariş Verme özelliğinde kullanabilirsiniz.

Bu belgede, korumalı alan ve üretim envanterlerinizi nasıl barındıracağınız ve Envanterinizi Uçtan Uca güncellemek için toplu almanın nasıl kullanılacağı açıklanmaktadır.

Veri feed'i ortamları

Entegrasyonu geliştirmek için üç veri feed'i ortamı vardır:

Feed ortamı Açıklama Toplu besleme
Korumalı alan Feed geliştirmeniz için test ortamı. Zorunlu
Prodüksiyon Kullanıma sunmak istediğiniz envanteriniz için üretim ortamı. Zorunlu

Veri feed'lerini barındırma

Uçtan Uca Sipariş Verme'nin Korumalı Alan ve Üretim veri feed'lerinizi toplu almayla işlemesi için veri feed'i dosyalarınızı bir site haritasıyla Google Cloud Storage, Amazon S3 veya HTTPS'de barındırmanız gerekir.

Korumalı alan ve üretim ortamlarınız için veri feed'lerini ayrı olarak barındırmanızı öneririz. Bu yaklaşım, değişiklikleri üretime dağıtmadan önce korumalı alan feed ortamınızda geliştirme ve test yapmanıza olanak tanır.

Örneğin, barındırma seçeneği olarak Google Cloud Storage'ı kullanıyorsanız şu yollara sahip olursunuz:

  • Korumalı Alan Feed'i: gs://foorestaurant-google-feed-sandbox/
  • Üretim Feed'i: gs://foorestaurant-google-feed-prod/

Envanterinizi barındırmak için aşağıdakileri yapın:

  1. Veri feed'i dosyalarınızı oluşturun.
  2. Bir barındırma çözümü seçin.
  3. Veri feed'lerinizi barındırın.
  4. Veri feed'i dosyalarınızın düzenli olarak güncellendiğinden emin olun. Üretim veri feed'leri her gün güncellenmelidir.

Envanter feed'i oluşturma hakkında ayrıntılı bilgi için Restaurant, Service ve Menu varlıklarıyla ilgili dokümanların yanı sıra Veri feed'i oluşturma bölümünü inceleyin.

Veri feed'i dosyalarıyla ilgili yönergeler

Birden çok varlık içerebilen her dosya 200 MB'ı aşmamalıdır. Üst düzey varlıklar olan Restaurant, Service ve Menu, alt varlıklarıyla birlikte toplamda 4 MB'ı aşmamalıdır.

Barındırma çözümü seçin

Aşağıdaki tabloda, veri feed'lerinizi barındırma seçenekleri ve bu ana makinelerin Uçtan Uca Sipariş Verme ile nasıl çalıştığı listelenmektedir:

Amazon S3 Google Cloud Storage Site haritasıyla HTTPS
Kimlik bilgileri ve erişim

Google'a aşağıdaki bilgileri sağlayın:

  • Erişim anahtarı kimliği
  • Gizli erişim anahtarı
  • Üretim ve korumalı alan S3 dizinlerinizin ve marker.txt dosyanızın yolları. Yol, s3:// ile başlamalıdır.

S3 paketinin aşağıdaki bilgileri içermesi gerekir:

  • Envanteriniz için feed dosyaları.
  • Getirme için kullanılan zaman damgasını içeren marker.txt.

Örnek marker.txt dosyası: 2018-12-03T08:30:42.694Z

Google'a, üretim ve korumalı alan paket dizinlerinizin yanı sıra marker.txt dosyanıza ait yolları sağlayın. Yollar gs:// ile başlamalıdır.

Google danışmanınız tarafından sağlanan hizmet hesabını Google Cloud Storage paketinizin okuyucusu olarak ekleyin.

Google Cloud Storage (GCS) erişimini kontrol etme hakkında daha fazla bilgi için Google Cloud Platform Console: Paket izinlerini ayarlama bölümüne bakın.

GCS paketinin aşağıdaki bilgileri içermesi gerekir:

  • Envanteriniz için feed dosyaları.
  • Getirme için kullanılan zaman damgasını içeren marker.txt.

Örnek marker.txt dosyası: 2018-12-03T08:30:42.694Z

Google'a aşağıdaki bilgileri sağlayın:

  • Temel kimlik doğrulamanız için kimlik bilgileri
  • Üretim ve korumalı alan site haritası yollarınızın yolu. Yol, https:// ile başlamalıdır.
  • Protokol: Feed dosyalarınızı HTTP üzerinden değil HTTPS üzerinden kullanıma sunmanız gerekir.
  • Güvenlik: Google, barındırılan feed dosyalarınızı Temel Kimlik Doğrulama ile korumanızı önemle önerir.
Google hangi dosyaların getirilmesi gerektiğini nasıl bilir? Paketteki tüm dosyaların dizin listesi. Paketteki tüm dosyaların dizin listesi. Site haritasında listelenen dosyaların tek tek URL'leri.
Google, dosyaların getirilmeye hazır olduğunu nasıl anlar? Veri feed'lerinizi oluşturmayı tamamladıktan sonra marker.txt dosyasını en son zaman damgasıyla güncelleyin. Veri feed'lerinizi oluşturmayı tamamladıktan sonra marker.txt dosyasını en son zaman damgasıyla güncelleyin. Veri feed'lerinizi oluşturmayı tamamladıktan sonra, sitemap.xml başlığınızın last-modified yanıt başlığını en son zaman damgasıyla güncelleyin.
Dosya sınırları

Maksimum dosya sayısı: 100.000.

Amazon S3 paketinizde toplam 100.000'den az dosyanız olmalıdır.

Maksimum dosya sayısı: 100.000.

Google Cloud Storage paketinizde toplam 100.000'den az dosyanız olmalıdır.

Maksimum dosya sayısı: 100.000.

Site haritası XML dosyanızdaki dosya yollarının sayısı 100.000'den az olmalıdır.

Veri feed'lerinizi toplu besleme için bağlama

Feed'lerinizi barındırdıktan sonra, Actions Center'da projenize bağlamanız gerekir. Üretim feed'lerinin ilk yapılandırması İlk Katılım Görevleri sayfasında yapılır. Daha sonra üretim ve korumalı alan feed'lerinin yapılandırması, yönetici rolüne sahip tüm portal kullanıcıları tarafından herhangi bir zamanda Yapılandırma > Feed'ler sayfasından güncellenebilir. Korumalı alan ortamı, geliştirme ve test amaçlarıyla kullanılırken üretim feed'leri kullanıcılara gösterilir.

Veri feed'lerinizi Amazon S3 ile barındırıyorsanız

  1. Actions Center'da, Yapılandırma > Feed'ler seçeneğine gidin.
  2. Düzenle'yi tıklayın ve Feed'i Güncelle formunu doldurun:

    • Feed yayınlama yöntemi: Amazon S3 olarak ayarlayın.
    • Marker File: marker.txt dosyasının URL'sini sağlayın.
    • Data Files: Veri feed'lerini içeren S3 grubunun URL'sini sağlayın.
    • Erişim Kimliği: S3 kaynaklarından okuma iznine sahip IAM erişim anahtarı kimliğini girin.
    • Erişim Anahtarı: S3 kaynaklarından okuma iznine sahip IAM gizli erişim anahtarını girin.
  3. Gönder'i tıklayın.
  4. Bir ila iki saat sonra, toplu beslemenin feed dosyalarınızı getirip getirmediğini kontrol edin.

Veri feed'lerinizi Google Cloud Storage ile barındırıyorsanız

  1. Actions Center'da, Yapılandırma > Feed'ler seçeneğine gidin.
  2. Düzenle'yi tıklayın ve Feed'i Güncelle formunu doldurun:

    • Feed yayınlama yöntemi: Google Cloud Storage olarak ayarlayın.
    • Marker File: marker.txt dosyasının URL'sini sağlayın.
    • Data Files: Veri feed'lerini içeren GCS paketinin URL'sini sağlayın.
  3. Gönder'i tıklayın.
  4. GCS paketinize erişmek için bir hizmet hesabı oluşturulur. Hesap adını, ilk katılım görevleri tamamlandıktan sonra Yapılandırma > Feed'ler bölümünde bulabilirsiniz. Bu hizmet hesabının "Storage Eski Nesne Okuyucu" rolüne sahip olması gerekir. Bu rol, Google Cloud Console'un IAM sayfasında hizmet hesabına verilebilir.
  5. Bir ila iki saat sonra, toplu beslemenin feed dosyalarınızı getirip getirmediğini kontrol edin.

Veri feed'lerinizi HTTPS ile barındırıyorsanız

  1. Actions Center'da, Yapılandırma > Feed'ler seçeneğine gidin.
  2. Düzenle'yi tıklayın ve Feed'i Güncelle formunu doldurun:

    • Feed yayınlanma yöntemi: HTTPS olarak ayarlayın.
    • Site Haritası Dosyası: sitemap.xml dosyasının URL'sini sağlayın.
    • Kullanıcı adı: HTTPS sunucusuna erişmek için kullanıcı adı kimlik bilgilerini girin.
    • Şifre: HTTPS sunucusuna erişmek için şifreyi girin.
  3. Gönder'i tıklayın.
  4. Bir ila iki saat sonra, toplu beslemenin feed dosyalarınızı getirip getirmediğini kontrol edin.

Örnek yollar

Aşağıdaki tabloda, barındırma seçeneklerinin her biri için örnek yollar bulunmaktadır:

Amazon S3 Google Cloud Storage Site haritasıyla HTTPS
Path s3://foorestaurant-google-feed-sandbox/ gs://foorestaurant-google-feed-sandbox/ https://sandbox-foorestaurant.com/sitemap.xml
İşaretçi dosyası s3://foorestaurant-google-feed-sandbox/marker.txt gs://foorestaurant-google-feed-sandbox/marker.txt Geçerli değil

HTTPS barındırması için site haritaları

Site haritalarını tanımlarken aşağıdaki yönergeleri kullanın:

  • Site haritanızdaki bağlantılar dosyaların kendisini işaret etmelidir.
  • Site haritanızda kendi alan adınız yerine bir bulut sağlayıcıya yönelik referanslar bulunuyorsa https://www.yourcloudprovider.com/your_id gibi URL'lerin başının sabit ve toplu işiniz için benzersiz olduğundan emin olun.
  • Kısmi site haritaları yüklememeye dikkat edin (örneğin, verilerin bir kısmının yüklenmesi). Bu işlem, Google'ın yalnızca site haritasındaki dosyaları beslemesine neden olur. Bu da envanter seviyelerinizin düşmesine ve feed beslemenizin engellenmesine neden olabilir.
  • Site haritasında başvurulan dosyaların yollarının değişmediğinden emin olun. Örneğin, site haritanız bugün https://www.yourcloudprovider.com/your_id/10000.json değil, yarın https://www.yourcloudprovider.com/your_id/20000.json referansı olacak.
Örnek site haritası

Veri feed'i dosyalarını sunan örnek bir sitemap.xml dosyasını burada görebilirsiniz:

1. Örnek: Satıcılara göre gruplandırılmış varlıklar (Önerilir).

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>

2. Örnek: Türlere göre gruplandırılmış varlıklar.

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>

Veri feed'lerinizi güncelleme

Veri feed'leriniz bağlandıktan sonra Google her saatte bir güncelleme olup olmadığını kontrol eder. Ancak tüm veri feed'lerini yalnızca marker.txt veya sitemap.xml dosyaları değiştirildiğinde alırız. Envanterin eskimesini önlemek için veri feed'lerinizi günde bir kez güncellemenizi bekleriz.

Veri feed'lerinin değiştirildiğini ve toplu beslemeye hazır olduğunu belirtmek için marker.txt dosyasının last-modified nesne meta verisi alanını (GCP ve S3 için) veya sitemap.xml dosyasının last-modified yanıt başlığını güncelleyin. Google, bir veri feed'inin ne kadar güncel olduğunu belirlemek için bu değerleri kullanır.

Toplu feed beslenirken

  • Mevcut Sipariş Uçtan Uca envanterinizde bulunmayan ve hatası olmayan yeni varlıklar eklenir.
  • Hâlihazırda besleme hatası olmayan ve mevcut girişlerinden dateModified daha yeni bir öğeye sahip olan ya da dateModified yoksa feed beslemesinin başlangıç zamanı, güncellenecekleri geçerli girişten daha yenidir. Aksi takdirde eski olarak işaretlenirler.
  • Önceki bir feed'in parçası olan ve artık işlenmekte olan toplu feed'e dahil olmayan varlıklar, feed'de dosya düzeyinde hata olmadığı sürece silinir.

Zaman damgası veya last-modified yanıt başlığı, yalnızca tüm veri feed'i dosyaları oluşturulup güncellendikten sonra güncellenmelidir. Veri feed'lerinizi güncelleyen toplu işleri yalnızca günde bir kez çalışacak şekilde sınırlandırın. Alternatif olarak, her toplu iş arasında en az üç saatlik bir boşluk bırakın. Bu adımları uygulamazsanız Google eski dosyaları getirebilir.