Cada entidade enviada ao Google, seja por feeds ou atualizações em tempo real,
tem uma versão anexada a ele. Essa versão vem na forma de um carimbo de data/hora. Em
feeds, o carimbo de data/hora pode ser fornecido para cada entidade usando o atributo dateModified
. Se o atributo não estiver incluído nas entidades do feed, a versão será
definido como o horário de início da ingestão do feed. Atualizações em tempo real batchPush
e
batchDelete
, respectivamente, os campos generation_timestamp
e delete_time
são usados para definir a versão. Se o campo não for incluído, a versão será definida como
a hora em que a solicitação foi recebida. Veja o formato esperado de hora
valores
no esquema do inventário relacional.
O Google só processa entidades (por exemplo, um restaurante, um cardápio ou um serviço). com uma versão igual ou mais recente que a última aceita. Caso contrário, o entidade não é ingerida e o erro Entidade obsoleta é registrado. Quando um entidade for atualizada com uma nova versão, o carimbo de data/hora da última modificação será atualizado para hora atual em que foi atualizado.
Exemplo
Suponha que um feed tenha sido gerado em 16 de junho às 01:10 UTC com o exemplo a seguir entidade incluída.
{
"@type": "Restaurant",
"@id": "restaurant12345",
"dateModified": "2022-06-16T01:10:00.000Z",
...
}
O feed ainda não foi processado pelo Google. Mais tarde nesse dia,
2022-06-16T01:22:00.000Z
, o Google recebe um
solicitação batchPush
de atualização em tempo real com o seguinte
com uma entidade conhecida.
{
"records": [
{
"data_record": "{\"@type\": \"Restaurant\",\"@id\": \"restaurant12345\" ...",
"generation_timestamp": "2022-06-16T01:20:00.000Z"
}
]
}
A versão do ID de entidade do restaurante restaurant12345
agora é
2022-06-16T01:20:00.000Z
e o carimbo de data/hora da última modificação da entidade foi definido
para 2022-06-16T01:22:00.000Z
. Em resumo, a hora da última modificação é a hora
que a entidade foi atualizada no inventário do Google e que a versão é a
generation_timestamp
da solicitação de atualização em tempo real ou do
Valor dateModified
do feed.
O processamento do feed começa em 16 de junho às 2h UTC. Nessa situação,
a entidade recebida no feed com a versão 2022-06-16T01:10:00.000Z
está
é considerada desatualizada e não é ingerida. Por isso, o Google continua veiculando
entidade com a versão 2022-06-16T01:20:00.000Z
do
uma solicitação de atualização em tempo real.
Práticas recomendadas:
- Implemente um carimbo de data/hora nos feeds para cada entidade.
- Aplique as alterações de atualização em tempo real ao seu próximo feed e Defina O carimbo de data/hora dateModified nas entidades do feed para a hora atual em que você criou o feed.