Как сделать так, чтобы космос db gremlin делал запросы атомарными - PullRequest
0 голосов
/ 16 мая 2018

Я пытаюсь запросить график Cosmos db Graph, и мой запрос выглядит следующим образом:

g.addV ('CITY'). Property ('id', 'cityId'). As ("вершина"). ADDV ( 'версия'). свойство ( 'имя', 'город'). свойство ( 'идентификатор', 'jsjsj'). как ( "versionVertex"). ADDE ( 'CURRENT_STATE'). из ("вершина"). к ( "versionVertex"). свойство ( 'начальный промежуток', '152567845776'). свойство ( 'EndTime', '922337203684775807'). в ( 'состояние')., как ( "fromVertex"). ADDE ('CONTAINS'). Property ('id', 'ssjjs'). From ("fromVertex"). To ("vertex")

Я сомневаюсь, является ли вышеуказанный запрос атомарным или нет,Как я вижу, он должен потерпеть неудачу, если какой-либо узел существует.Но это не половина моего запроса, а другая половина - нет.

Может кто-нибудь предложить мне способ сделать запросы атомарными.

1 Ответ

0 голосов
/ 17 мая 2018

Запросы CosmosDB Gremlin не являются атомарными. Рекомендуется сделать запросы идемпотентными, чтобы обеспечить возможность выполнения операций записи при повторной попытке запроса.

См. Ответы на этот вопрос, демонстрирующие «закономерность восхода»: Добавить или получить вершину в API-интерфейсе БД Azure Cosmos

...