У меня есть иерархия в следующем формате:Neo4j: высчитывать отношений
< Application.A - [: belongs_to {роли: экземпляр}] - Instance.A1 - [: depends_on {ролей: хост}] - > Host.vm1
подразумевая, что приложение A имеет экземпляр A1, который запущен на Host vm1 с отношением «принадлежит_to» и «depend_on».
Instance.A1 - [: depends_on {роли: экземпляра}] -> базы данных DB1 < - [: belongs_to] -Instance.dbNode1 - [: depends_on {роли: хозяева}] -> Host.vm2
подразумевающий экземпляр A1 приложения A зависит от базы данных db1, которая имеет экземпляр dbNode1, запущенный на Host vm2.
Я могу написать отдельные cyphers и обработать результат в моем API Java.
Я пытаюсь написать один cypher, который примет приложение в качестве входного (в данном случае A) & возвращает всю иерархию.
Что-то вроде этого ....
A.A1.vm1.db1.dbNode1.vm2
Является ли это выполнимо? Если да, то оценили бы некоторые указатели.
Спасибо.
не должен 'A1' на самом деле зависит от' dbNode1', вместо 'db1'? – cybersam
База данных может иметь несколько узлов. Таким образом, отношение должно быть связано с базой данных (поскольку база данных выполняет балансировку нагрузки). – kkulkarn
ОК, спасибо за разъяснение. – cybersam