항목 버전 관리

피드 또는 실시간 업데이트를 통해 Google에 전송되는 각 항목에는 버전이 연결되어 있습니다. 이 버전은 타임스탬프 형식으로 제공됩니다. 피드에서는 dateModified 속성을 사용하여 각 항목에 타임스탬프를 제공할 수 있습니다. 이 속성이 피드 항목에 포함되지 않은 경우 버전은 피드 처리 시작 시간으로 설정됩니다. 실시간 업데이트 batchPushbatchDelete에서 각각 generation_timestampdelete_time 필드는 버전을 설정하는 데 사용됩니다. 이 필드가 포함되지 않으면 버전이 요청이 수신된 시간으로 설정됩니다. 관계형 인벤토리 스키마에서 예상되는 시간 값 형식을 확인하세요.

Google은 마지막으로 수락된 버전과 동일하거나 더 최신 버전의 항목 (예: 음식점, 메뉴, 서비스)만 처리합니다. 그렇지 않으면 항목이 처리되지 않고 Stale Entity 오류가 기록됩니다. 항목이 새 버전으로 업데이트되면 마지막 수정 타임스탬프가 업데이트된 현재 시간으로 업데이트됩니다.

6월 16일 1시 10분(UTC)에 다음과 같은 항목이 포함된 피드가 생성되었다고 가정해 보겠습니다.

{
  "@type": "Restaurant",
  "@id": "restaurant12345",
  "dateModified": "2022-06-16T01:10:00.000Z",
  ...
}

Google에서 아직 피드를 처리하지 않았습니다. 그날 2022-06-16T01:22:00.000Z에 Google은 다음 항목이 포함된 실시간 업데이트 batchPush 요청을 수신합니다.

{
  "records": [
    {
      "data_record": "{\"@type\": \"Restaurant\",\"@id\": \"restaurant12345\" ...",
      "generation_timestamp": "2022-06-16T01:20:00.000Z"
    }
  ]
}

레스토랑 항목 ID restaurant12345의 버전이 이제 2022-06-16T01:20:00.000Z이고 항목의 마지막 수정 타임스탬프가 2022-06-16T01:22:00.000Z로 설정됩니다. 요약하면 최종 수정 시간은 Google 인벤토리에서 항목이 업데이트된 시간이며 버전은 실시간 업데이트 요청의 generation_timestamp 값 또는 피드의 dateModified 값입니다.

그러면 피드 처리가 6월 16일 2시(UTC)에 시작됩니다. 이 경우 버전 2022-06-16T01:10:00.000Z로 피드에서 수신된 항목은 비활성 상태로 간주되어 처리되지 않습니다. 따라서 Google은 실시간 업데이트 요청의 버전 2022-06-16T01:20:00.000Z로 항목을 계속 게재합니다.

권장사항:

  • 각 항목의 피드에 타임스탬프를 구현합니다.
  • 다음 피드에 실시간 업데이트 변경사항을 적용하고 피드 항목의 dateModified 타임스탬프를 피드를 만들 때의 현재 시간으로 설정합니다.