Bản cập nhật xung đột

Mô tả

Quá trình cập nhật xung đột xảy ra khi một review hoặc merchant có nhiều bản cập nhật (các mục có cùng mã review hoặc merchant) nhưng có nội dung khác nhau, nhưng last_update_timestamp giống hệt nhau. Vì các mục này có cùng last_update_timestamp, nên chúng tôi không thể xác định bản cập nhật nào mới hơn.

Cách khắc phục

Phân phối review hoặc merchant với nội dung mới nhất và bản cập nhật last_update_timestamp.

Xung đột khi tạo dấu thời gian

Trong trường hợp hai bản cập nhật xung đột do các giá trị khác nhau cho create_timestamp, thì review hoặc merchant sẽ được phân phối lại với thời gian tạo khớp với thời gian tạo ban đầu đã được gửi. Nếu thời gian tạo không khớp với thời gian tạo ban đầu, thì sẽ xảy ra thêm một vấn đề về dữ liệu.

Khi hai bản cập nhật xung đột do các giá trị khác nhau của create_timestamp và bạn cho rằng create_timestamp mới là giá trị chính xác, hãy làm theo các bước dưới đây để đặt thời gian tạo mới cho review hoặc merchant mà không cần tạo vấn đề mới về dữ liệu:

  1. Phân phối lại review hoặc merchant với create_timestamp dự kiến và cập nhật last_update_timestamp.
  2. Thông báo cho nhóm hỗ trợ rằng bạn dự định sử dụng thời gian tạo mới và cung cấp tên tệp chứa mục nhập có thời gian tạo mới. Nhóm hỗ trợ đảm bảo thời gian tạo mới sẽ được sử dụng và không xảy ra sự cố mới về dữ liệu.

Xung đột thay đổi định dạng XML

Khi có xung đột do việc thay đổi cách tạo tệp XML (ví dụ: các thay đổi về định dạng), nhưng dữ liệu cơ bản không thay đổi, thì bạn không nên thay đổi thời gian cập nhật. Trong những trường hợp đó, hãy làm theo các bước dưới đây.

  1. Hãy thông báo cho nhóm hỗ trợ lý do tại sao việc cập nhật last_update_timestamp là không hợp lý.
  2. Tạo một tệp có nội dung được cập nhật nhiều nhất (trong trường hợp này, bạn không cần phải cập nhật last_update_timestamp)
  3. Cung cấp tên tệp cho nội dung mới nhất cho nhóm hỗ trợ. Nhóm hỗ trợ sẽ đảm bảo nội dung được cập nhật thường xuyên nhất được sử dụng.

Ví dụ:

Vào ngày 1 tháng 3, bạn tải tệp nguồn cấp dữ liệu "2017_03_01.xml" lên điểm cuối. Tệp này chứa nội dung sau:

<review id="156368" mid="2739">
  <reviewer_name>Ada</reviewer_name>
  <create_timestamp>2017-02-25T03:02:23Z</create_timestamp>
  <last_update_timestamp>2017-02-25T03:02:23Z</last_update_timestamp>
  <country_code>US</country_code>
  <title>Great prices</title>
  <content>My order arrived on time and I got a great price.</content>
  <ratings>
    <overall min="1" max="10">9</overall>
    <customer_service min="1" max="10">10</customer_service>
  </ratings>
  <collection_method>after_fulfillment</collection_method>
</review>

Vào ngày 5 tháng 3, bạn tải tệp nguồn cấp dữ liệu "2017_03_05.xml" lên điểm cuối. Tệp này chứa nội dung chỉnh sửa của người dùng trong tiêu đề của bài đánh giá. Tuy nhiên, last_update_timestamp không thay đổi so với mục trước được gửi cho bài đánh giá này:

<review id="156368" mid="2739">
  <reviewer_name>Ada</reviewer_name>
  <create_timestamp>2017-02-25T03:02:23Z</create_timestamp>
  <last_update_timestamp>2017-02-25T03:02:23Z</last_update_timestamp>
  <country_code>US</country_code>
  <title>Great prices and customer service!</title>
  <content>My order arrived on time and I got a great price.</content>
  <ratings>
    <overall min="1" max="10"<9>/overall>
    <customer_service min="1" max="10"<10>/customer_service>
  </ratings>
  <collection_method>after_fulfillment</collection_method>
</review>

Sau khi nhận được thông báo từ nhóm hỗ trợ rằng đã xảy ra sự cố dữ liệu cập nhật xung đột, bạn tải lên "2017_03_10-fix.xml" lên điểm cuối để giải quyết vấn đề.

<review id="156368" mid="2739">
  <reviewer_name>Ada</reviewer_name>
  <create_timestamp>2017-02-25T03:02:23Z</create_timestamp>
  <last_update_timestamp>2017-03-04T02:01:20Z</last_update_timestamp>
  <country_code>US</country_code>
  <title>Great prices and customer service!</title>
  <content>My order arrived on time and I got a great price.</content>
  <ratings>
    <overall min="1" max="10">9</overall>
    <customer_service min="1" max="10">10</customer_service>
  </ratings>
  <collection_method>after_fulfillment</collection_method>
</review>