Nhập hàng loạt

Nguồn cấp dữ liệu cho phép bạn cung cấp dịch vụ đặt món ăn từ đầu đến cuối về nhà hàng, dịch vụ và thực đơn của mình.

Tài liệu này trình bày cách lưu trữ khoảng không quảng cáo trong môi trường hộp cát và sản phẩm, đồng thời dùng tính năng nhập hàng loạt để cập nhật kho hàng của bạn trong quy trình Sắp xếp thứ tự hai đầu.

Môi trường của nguồn cấp dữ liệu

Có 3 môi trường nguồn cấp dữ liệu mà bạn có thể dùng để phát triển hoạt động tích hợp:

Môi trường nguồn cấp dữ liệu Mô tả Nhập hàng loạt
Hộp cát Môi trường thử nghiệm để phát triển nguồn cấp dữ liệu. Bắt buộc
Sản xuất Môi trường sản xuất cho khoảng không quảng cáo mà bạn muốn ra mắt. Bắt buộc

Lưu trữ nguồn cấp dữ liệu

Để Sắp xếp thứ tự hai đầu xử lý nguồn cấp dữ liệu của Hộp cát và Sản phẩm bằng cách nhập hàng loạt, bạn phải lưu trữ các tệp nguồn cấp dữ liệu của mình trong Google Cloud Storage, Amazon S3 hoặc HTTPS bằng sơ đồ trang web.

Bạn nên lưu trữ riêng nguồn cấp dữ liệu cho môi trường hộp cát và môi trường sản xuất của mình. Phương pháp này cho phép bạn phát triển và kiểm thử trong môi trường nguồn cấp dữ liệu hộp cát trước khi triển khai các thay đổi đối với phiên bản chính thức.

Ví dụ: nếu sử dụng Google Cloud Storage làm phương án lưu trữ, bạn sẽ có các đường dẫn sau:

  • Nguồn cấp dữ liệu hộp cát: gs://foorestaurant-google-feed-sandbox/
  • Nguồn cấp dữ liệu sản xuất: gs://foorestaurant-google-feed-prod/

Để lưu trữ khoảng không quảng cáo, hãy làm như sau:

  1. Tạo tệp nguồn cấp dữ liệu.
  2. Chọn giải pháp lưu trữ.
  3. Lưu trữ nguồn cấp dữ liệu của bạn.
  4. Nhớ cập nhật các tệp nguồn cấp dữ liệu của bạn thường xuyên. Nguồn cấp dữ liệu sản xuất phải được cập nhật hằng ngày.

Để biết thông tin chi tiết về cách tạo nguồn cấp dữ liệu kho hàng, hãy xem tài liệu dành cho các thực thể Restaurant, ServiceMenu, cũng như phần Tạo nguồn cấp dữ liệu.

Nguyên tắc về tệp nguồn cấp dữ liệu

Mỗi tệp (có thể chứa nhiều thực thể) không được vượt quá 200 MB. Các thực thể cấp cao nhất Restaurant, ServiceMenu, cùng với các thực thể con của chúng, không được vượt quá 4 MB.

Chọn giải pháp lưu trữ

Bảng sau đây liệt kê các lựa chọn để lưu trữ nguồn cấp dữ liệu của bạn và cách các máy chủ đó hoạt động với quy trình Sắp xếp thứ tự hai đầu:

Amazon S3 Google Cloud Storage HTTPS với sơ đồ trang web
Thông tin đăng nhập và quyền truy cập

Cung cấp cho Google những thông tin sau:

  • Mã khoá truy cập
  • Khoá truy cập bí mật
  • Các đường dẫn đến thư mục S3 trong môi trường sản xuất và hộp cát cũng như tệp marker.txt. Đường dẫn phải bắt đầu bằng s3://.

Bộ chứa S3 cần bao gồm các thông tin sau:

  • Tệp nguồn cấp dữ liệu cho kho hàng của bạn.
  • marker.txt chứa dấu thời gian dùng để tìm nạp.

Tệp marker.txt mẫu: 2018-12-03T08:30:42.694Z

Cung cấp cho Google đường dẫn đến thư mục bộ chứa hộp cát và sản phẩm chính thức cũng như tệp marker.txt. Các đường dẫn này phải bắt đầu bằng gs://.

Thêm tài khoản dịch vụ do chuyên viên tư vấn của Google cung cấp làm tài khoản người đọc của bộ chứa Google Cloud Storage.

Để biết thêm thông tin về cách kiểm soát quyền truy cập đối với Google Cloud Storage (GCS), hãy xem bài viết Bảng điều khiển Google Cloud Platform: Đặt quyền đối với bộ chứa.

Bộ chứa GCS cần chứa các thông tin sau:

  • Tệp nguồn cấp dữ liệu cho kho hàng của bạn.
  • marker.txt chứa dấu thời gian dùng để tìm nạp.

Tệp marker.txt mẫu: 2018-12-03T08:30:42.694Z

Cung cấp cho Google những thông tin sau:

  • Thông tin xác thực cho tính năng xác thực cơ bản.
  • Đường dẫn đến đường dẫn sơ đồ trang web hộp cát và sản xuất của bạn. Đường dẫn phải bắt đầu bằng https://.
  • Giao thức: Bạn phải cung cấp tệp nguồn cấp dữ liệu thông qua HTTPS, không phải HTTP.
  • Bảo mật: Google đặc biệt khuyến khích bạn bảo vệ các tệp nguồn cấp dữ liệu được lưu trữ bằng tính năng Xác thực cơ bản.
Cách Google biết tệp nào cần được tìm nạp Danh sách thư mục liệt kê tất cả các tệp trong bộ chứa. Danh sách thư mục liệt kê tất cả các tệp trong bộ chứa. URL riêng lẻ của các tệp được liệt kê trong sơ đồ trang web.
Cách Google nhận biết tệp đã sẵn sàng để tìm nạp Sau khi bạn tạo xong nguồn cấp dữ liệu, hãy cập nhật dấu thời gian mới nhất cho tệp marker.txt. Sau khi bạn tạo xong nguồn cấp dữ liệu, hãy cập nhật dấu thời gian mới nhất cho tệp marker.txt. Sau khi bạn tạo xong nguồn cấp dữ liệu, hãy cập nhật tiêu đề phản hồi last-modified của sitemap.xml bằng dấu thời gian mới nhất.
Giới hạn tệp

Số lượng tệp tối đa: 100.000.

Bạn phải có tổng cộng ít hơn 100.000 tệp trong bộ chứa Amazon S3.

Số lượng tệp tối đa: 100.000.

Bạn phải có tổng cộng ít hơn 100.000 tệp trong bộ chứa Google Cloud Storage.

Số lượng tệp tối đa: 100.000.

Số lượng đường dẫn tệp trong tệp XML của sơ đồ trang web phải ít hơn 100.000.

Kết nối nguồn cấp dữ liệu của bạn để nhập hàng loạt

Sau khi lưu trữ nguồn cấp dữ liệu, bạn cần kết nối các nguồn cấp dữ liệu đó với dự án của mình trên Trung tâm hành động. Cấu hình ban đầu của nguồn cấp dữ liệu chính thức được thực hiện trên trang Tác vụ giới thiệu. Sau đó, bất kỳ người dùng nào có vai trò quản trị viên trên cổng thông tin đều có thể cập nhật cấu hình nguồn cấp dữ liệu hộp cát và cấu hình trên trang Cấu hình > Nguồn cấp dữ liệu bất cứ lúc nào. Môi trường hộp cát được dùng cho mục đích phát triển và thử nghiệm, còn nguồn cấp dữ liệu sản xuất được hiển thị cho người dùng.

Nếu bạn lưu trữ nguồn cấp dữ liệu bằng Amazon S3

  1. Trong Trung tâm hành động, hãy chuyển đến phần Cấu hình > Nguồn cấp dữ liệu.
  2. Nhấp vào Chỉnh sửa rồi điền vào biểu mẫu Cập nhật nguồn cấp dữ liệu:

    • Phương thức phân phối nguồn cấp dữ liệu: Đặt thành Amazon S3.
    • Tệp đánh dấu: Cung cấp URL của tệp marker.txt.
    • Tệp dữ liệu: Cung cấp URL cho bộ chứa S3 chứa nguồn cấp dữ liệu.
    • Access ID (Mã truy cập): Nhập mã khoá truy cập trong IAM có quyền đọc từ các tài nguyên S3.
    • Khoá truy cập: Nhập khoá truy cập bí mật trong IAM có quyền đọc từ các tài nguyên S3.
  3. Nhấp vào Gửi.
  4. Sau một đến hai giờ, hãy kiểm tra xem quá trình nhập hàng loạt có tìm nạp tệp nguồn cấp dữ liệu của bạn hay không.

Nếu bạn lưu trữ nguồn cấp dữ liệu bằng Google Cloud Storage

  1. Trong Trung tâm hành động, hãy chuyển đến phần Cấu hình > Nguồn cấp dữ liệu.
  2. Nhấp vào Chỉnh sửa rồi điền vào biểu mẫu Cập nhật nguồn cấp dữ liệu:

    • Phương thức phân phối nguồn cấp dữ liệu: Đặt thành Google Cloud Storage.
    • Tệp đánh dấu: Cung cấp URL của tệp marker.txt.
    • Tệp dữ liệu: Cung cấp URL đến bộ chứa GCS chứa nguồn cấp dữ liệu.
  3. Nhấp vào Gửi.
  4. Một tài khoản dịch vụ sẽ được tạo để truy cập vào bộ chứa GCS của bạn. Bạn có thể tìm thấy tên tài khoản trong phần Cấu hình > Nguồn cấp dữ liệu sau khi hoàn tất các tác vụ giới thiệu. Tài khoản dịch vụ này cần có vai trò "Người đọc đối tượng cũ của bộ nhớ". Bạn có thể cấp vai trò này cho tài khoản dịch vụ trong trang IAM của bảng điều khiển Google Cloud.
  5. Sau một đến hai giờ, hãy kiểm tra xem quá trình nhập hàng loạt có tìm nạp tệp nguồn cấp dữ liệu của bạn hay không.

Nếu bạn lưu trữ nguồn cấp dữ liệu bằng HTTPS

  1. Trong Trung tâm hành động, hãy chuyển đến phần Cấu hình > Nguồn cấp dữ liệu.
  2. Nhấp vào Chỉnh sửa rồi điền vào biểu mẫu Cập nhật nguồn cấp dữ liệu:

    • Phương thức phân phối nguồn cấp dữ liệu: Đặt thành HTTPS.
    • Tệp sơ đồ trang web: Cung cấp URL của tệp sitemap.xml.
    • Tên người dùng: Nhập thông tin xác thực tên người dùng để truy cập vào máy chủ HTTPS.
    • Mật khẩu: Nhập mật khẩu để truy cập vào máy chủ HTTPS.
  3. Nhấp vào Gửi.
  4. Sau một đến hai giờ, hãy kiểm tra xem quá trình nhập hàng loạt có tìm nạp tệp nguồn cấp dữ liệu của bạn hay không.

Đường dẫn mẫu

Bảng sau đây chứa các đường dẫn mẫu cho từng tuỳ chọn lưu trữ:

Amazon S3 Google Cloud Storage HTTPS với sơ đồ trang web
Đường dẫn s3://foorestaurant-google-feed-sandbox/ gs://foorestaurant-google-feed-sandbox/ https://sandbox-foorestaurant.com/sitemap.xml
Tệp đánh dấu s3://foorestaurant-google-feed-sandbox/marker.txt gs://foorestaurant-google-feed-sandbox/marker.txt Không áp dụng

Sơ đồ trang web dành cho lưu trữ HTTPS

Hãy làm theo các nguyên tắc sau khi bạn xác định sơ đồ trang web:

  • Các đường liên kết trong sơ đồ trang web của bạn phải trỏ đến các tệp đó.
  • Nếu sơ đồ trang web của bạn có thông tin tham chiếu đến một nhà cung cấp dịch vụ đám mây thay vì tên miền của bạn, hãy đảm bảo rằng phần đầu của các URL, chẳng hạn như https://www.yourcloudprovider.com/your_id, đều ổn định và dành riêng cho công việc hàng loạt của bạn.
  • Hãy cẩn thận tránh tải một phần sơ đồ trang web lên (chẳng hạn như trong trường hợp tải một phần dữ liệu lên). Nếu bạn làm như vậy, Google sẽ chỉ nhập các tệp trong sơ đồ trang web. Khi đó, mức kho hàng của bạn sẽ giảm xuống và việc nhập nguồn cấp dữ liệu của bạn có thể bị chặn.
  • Đảm bảo rằng đường dẫn đến các tệp được tham chiếu trong sơ đồ trang web không thay đổi. Ví dụ: đừng tham chiếu sơ đồ trang web https://www.yourcloudprovider.com/your_id/10000.json vào hôm nay nhưng hãy tham khảo https://www.yourcloudprovider.com/your_id/20000.json vào ngày mai.
Sơ đồ trang web minh hoạ

Dưới đây là ví dụ về tệp sitemap.xml phân phát các tệp nguồn cấp dữ liệu:

Ví dụ 1: Các thực thể nhóm theo người bán (Nên dùng).

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>

Ví dụ 2: Các thực thể được nhóm theo loại.

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>

Cập nhật nguồn cấp dữ liệu

Sau khi nguồn cấp dữ liệu của bạn được kết nối, Google sẽ kiểm tra các bản cập nhật mỗi giờ một lần. Tuy nhiên, chúng tôi chỉ nhập tất cả nguồn cấp dữ liệu khi các tệp marker.txt hoặc sitemap.xml đã được sửa đổi. Chúng tôi muốn bạn cập nhật nguồn cấp dữ liệu của mình mỗi ngày một lần để tránh kiểm kê cũ.

Để xác định rằng nguồn cấp dữ liệu đã được sửa đổi và sẵn sàng để nhập hàng loạt, hãy cập nhật trường siêu dữ liệu đối tượng last-modified của tệp marker.txt (Đối với GCP và S3) hoặc tiêu đề phản hồi last-modified của tệp sitemap.xml. Google sử dụng các giá trị này để xác định độ mới của nguồn cấp dữ liệu.

Khi nhập nguồn cấp dữ liệu lô,

  • Các thực thể mới không tồn tại trong khoảng không quảng cáo hai đầu trong quá trình đặt hàng hiện tại và không có bất kỳ lỗi nào sẽ được chèn.
  • Những thực thể đã có trong dữ liệu kho hàng mà không có lỗi nào khi nhập và có dateModified gần đây hơn mục hiện tại hoặc trong trường hợp không có dateModified thì thời gian bắt đầu nhập nguồn cấp dữ liệu gần đây hơn mục hiện tại sẽ được cập nhật. Nếu không, chúng sẽ bị đánh dấu là lỗi thời.
  • Các thực thể thuộc nguồn cấp dữ liệu trước đây không còn được đưa vào nguồn cấp dữ liệu theo lô đang được xử lý sẽ bị xoá, miễn là không có lỗi ở cấp độ tệp trong nguồn cấp dữ liệu đó.

Bạn chỉ được cập nhật dấu thời gian hoặc tiêu đề phản hồi last-modified sau khi tất cả tệp nguồn cấp dữ liệu được tạo và cập nhật. Hạn chế các tác vụ theo lô cập nhật nguồn cấp dữ liệu của bạn để chỉ chạy một lần mỗi ngày. Ngoài ra, hãy đặt khoảng cách ít nhất là 3 giờ giữa mỗi công việc theo lô. Nếu bạn không thực hiện các bước này, Google có thể tìm nạp các tệp cũ.