Gremlin. Net API: нужно предложение по эффективному способу получения подграфов из больших графических данных в космосе - PullRequest
0 голосов
/ 22 апреля 2020

Я часто сталкиваюсь с «запросом слишком большой ошибки» при попытке запросить дБ графа (200 вершин и 40k ребер), чтобы получить подграф длины 1 (получить данные списка всех вершин с одним OutE () и соответствующими InV ())

Моя структура базы данных графа

узлов - Перемещается со статусом Доступно, Зарезервировано и завершено.

Ребра - соединение от каждого узла к другому узлу.

Запросы - Получить подграф - Каждый узел, соответствующий ему outE и соответствующий ему InV.

Эта длина увеличивается в соответствии с требованием

Если длина равна 1, подграф должен дать мне - OUTV-Oute-и.

Если длина равна 2, подграф должен дать мне - OutV-OutE-InV-OutE-InV.

Мы сделали ключ раздела по статусу и использовали следующий запрос для получения результата подграфа

gV (). Has ('PartitionKey', в пределах ('AVAILABLE', 'BOOKED')). Repeat ( outE (). inV ()). times (length) .path ()

При выполнении теста производительности с 200 ходами и 39800 ребрами запрос Get subgraph завершается неудачно с запросом слишком большой ошибки. Пропускная способность БД в режиме автопилота с максимальным 4000RU / с. Не уверен, почему графические запросы не могут запрашивать эти относительно меньшие данные. Мы должны масштабировать это до 10 раз для использования в будущем. Любое предложение о том, как эффективно использовать график

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