Как удалить график в amazon Neptune

Как удалить граф Нептуна или удалить все вершины и ребра из графа.

Есть еще выход из гремлина. Вместо того, чтобы повторять все узлы и удалять одну вершину


person Bharateshwar Patil    schedule 28.06.2018    source источник


Ответы (5)


Код Гремлина будет g.V (). Limit (100000) .drop (). Iterate ();

Обновление: достаточно g.V (). Drop (). Iterate (), так как удаление всех запросов теперь оптимизировано в Neptune.

person Bharateshwar Patil    schedule 28.06.2018
comment
@Karthik Rajan Я все еще получаю таймауты на g.V (). Drop (). Iterate (). Как обеспечить наличие новейшего двигателя Neptune? Это просто 1.0.1.0. - person Eve Freeman; 04.12.2018
comment
В настоящее время вы не можете увидеть номер версии своего экземпляра, но если у вас есть доступное обновление, вам следует выбрать свой кластер и выполнить обновление с консоли. (Вы можете инициировать обновление с помощью click / sdk, а также с помощью Api действий по обслуживанию). - person The-Big-K; 04.12.2018
comment
Вы видите таймауты после увеличения размера данных? Или после недавнего обновления двигателя? Вы пробовали увеличить тайм-аут? - person The-Big-K; 04.12.2018
comment
Тайм-ауты по-прежнему происходят в последней версии: тайм-аут произошел в сценарии во время оценки. - person smiron; 19.02.2020
comment
Будет ли работать, если у нас есть условия? g.V().has("name", "omurbek").drop().iterate(); - person omurbek; 05.05.2020

g.V().drop().iterate() должно хватить. Если вы удаляете ВСЕ вершины и ребра, вам не нужно делать это партиями или перебирать фиксированное количество вершин.

person The-Big-K    schedule 21.08.2018

Добавляем еще один ответ, поскольку у Amazon Neptune теперь есть API для эффективного удаления всего графа без необходимости использования Gremlin. Подробнее см. [1].

[1] https://docs.aws.amazon.com/neptune/latest/userguide/manage-console-fast-reset.html.

Сброс можно выполнить с помощью команды curl или из записной книжки Neptune (Jupyter).

person Kelvin Lawrence    schedule 04.02.2021

g.V (). drop (). iterate (); Да, пакет не требуется, но у вас есть итерация для графа Нептуна db

person Bharateshwar Patil    schedule 22.08.2018
comment
Будет ли работать, если у нас есть условия? g.V().has("name", "omurbek").drop().iterate(); - person omurbek; 05.05.2020
comment
Это приведет к удалению любой вершины, имеющей эту пару ключ: значение. - person Kelvin Lawrence; 06.05.2020
comment
@KelvinLawrence Знаете ли вы, какой подход лучше, чем пакетное падение в Нептуне? - person omurbek; 07.05.2020

Удаление вершин AWS Neptune обходится дорого при увеличении числа предикатов.

что такое предикаты?

https://docs.aws.amazon.com/neptune/latest/userguide/feature-overview-data-model.html

Используйте API Explain от AWS Neptune, чтобы узнать количество предикатов в базе данных вашего графика. Он также показывает предупреждение, если количество предикатов велико.

Обратитесь к этому сценарию python, чтобы удалить его без ошибки тайм-аута и более быстрого способа удаления вершин.

https://github.com/awslabs/amazon-neptune-tools/blob/master/drop-graph/drop-graph.py

person Raghav    schedule 03.02.2021