У нас есть граф в Azure Cosmos DB (Gremlin API) с приблизительно 3К вершинами и 16К ребрами.Я хотел бы отбросить все ребра, но сохранить вершины.
Когда я запускаю запрос gremlin, например q.E().drop()
, я получаю исключение
ExceptionType : RequestRateTooLargeException ExceptionMessage : Message: {"Errors":["Request rate is large"]}
Текущий предел RU / s составляет 3000 RU / s.
Я понимаю механизм создания такой ошибки.«Ждать и повторять» здесь не вариант - предел превышен одним запросом, а не многими запросами, поэтому в следующий раз, когда я выполню его после некоторого периода ожидания, я также получу то же исключение.
Вопрос в том, какие опции мне нужно отбросить по всем ребрам с помощью как можно меньшего количества запросов?
Я пытался запустить q.E().limit(20).drop()
, и он работает и сообщает 237.62999999999994 RU
Когда язапустите q.E().limit(2000).drop()
Я получил исключение.
Результаты 'gE (). limit (1) .drop ()' показывают различную стоимость RU в проводнике данных Azure:
Executed: g.E().limit(1).drop() (61.72 RUs)
Executed: g.E().limit(1).drop() (53.14 RUs)
Executed: g.E().limit(1).drop() (61.72 RUs)
Executed: g.E().limit(1).drop() (56 RUs)
НоПостоянный платеж за запрос: 546,38
Каков оптимальный способ избавиться от краев (с точки зрения производительности и / или с точки зрения стоимости)