Делают ли поля встроенных метаданных CosmosDB что-нибудь при обновлении? - PullRequest
0 голосов
/ 27 января 2020

Каждый документ в CosmosDB содержит эти специальные автоматические c поля метаданных или служебные поля с префиксом подчеркивания, например:

{
    "id": "some logical key",
    "_rid": "SOMEAOJgMwGmJwEAAAAAAA==",
    "_self": "dbs/SOMEAA==/colls/SOMEAOJgMwE=/docs/SOMEAOJgMwGmJwEAAAAAAA==/",
    "_etag": "\"3f004486-0000-0c00-0000-5e2ea95d0000\"",
    "_attachments": "attachments/",
    "_ts": 1580116317
}

Достаточно информации о значении их значений (например, " Свойства документов ") и их использование (т. Е. " Optimisti c управление параллелизмом ". Также, как удалить или исключить их из документов , et c.

Задание _etag и оптимистический c сценарий параллелизма в стороне, менее ясно, каково их влияние, когда документ с такими полями устанавливается обратно в коллекцию.

В моем тестирование Я не вижу, чтобы они что-то делали, и даже если они намеренно изменены, установленные пользователем значения всегда автоматически сбрасываются при обновлении до того состояния, в котором служба CosmosDB считает правильное состояние. В настоящее время я не вижу смысла иметь их в сохраненной модели в all.

Всегда ли безопасно сохранять документ без таких служебных полей? Может ли он иметь нежелательные побочные эффекты и какие обстоятельства?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...