Neo4j - Библиотека науки о данных о графах - Как выполнить зашифрованный запрос к именованному графу в каталоге графов?
Задокументировано создание именованного графа из основного графа Neo4j. Кроме того, вы также знаете, как перечислить, отбросить, проверить, существует ли уже именованный граф, напримерCALL gds.graph.exists('my-store-graph') YIELD exists;
Однако мне интересно, есть ли какой-нибудь метод шифрования для только что созданного именованного графа?
Один из обходных путей - поместить этот именованный граф в автономный / пустой граф Neo4j, т.е.CALL gds.beta.graph.export('my-graph', { dbName: 'mydatabase' })
. Однако этот метод менее удобен, потому что мы часто хотим проверить, правильно ли спроектирован именованный граф перед применением, например, PageRank на нем. Прогнозирование может быть методом проб и ошибок.
1 ответ
В настоящее время нет другого способа запросить именованный граф, кроме уже найденного обходного пути.
Однако есть дополнительные функции, например gds.util.nodeProperty
которые позволяют вам получить доступ к свойству узла в названном графе, не записывая его обратно в Neo4j. Пример запросаscore
свойство может выглядеть так:
CALL gds.graph.create('my-graph', 'User', 'LINK');
CALL gds.pageRank.mutate('my-graph', { mutateProperty: 'score' });
MATCH (user:User)
WHERE user.name = 'Alice'
RETURN
user.name AS name,
gds.util.nodeProperty('my-graph', id(user), 'score') AS score
Не могли бы вы пояснить, почему ваши прогнозы представляют собой циклы "проб и ошибок". Может быть, можно выполнить запросы проверки на подграфе, который вы хотите спроецировать?