Мы генерируем 48-часовые проекционные данные, используя 6-месячные исторические данные сетевого трафика. Данные окончательной проекции загружаются в Neo4J для поддержки интерфейсного веб-приложения, в котором пользователи могут выполнять поиск на сервере и видеть его будущие связи / передачи данных с другими серверами внутри организации. Мы определили узел узла и отношения от 1 до 48 часов (1H, 2H, 3H .... 48H). Следующий обычный запрос шифра работает нормально и возвращает данные с информацией об отношениях.
MATCH p=(parent:HOST)-[r]->(child:HOST)
WHERE parent.HOST_NAME = " "
RETURN p, type(r)
Но настройка SDN (Spring Data Neo4j) не возвращает информацию об отношениях. Сущность узла определяется следующим образом.
@NodeEntity
public class Host {
@GraphId
private Long id;
private String Host_Name;
@Relationship(type="")
private List<Host> hosts;
public List<Host> getHosts() {
return hosts;
}
public Long getId() {
return id;
}
public String getName() {
return Host_Name;
}
}
И хранилище определено как
public interface HostRepository extends Neo4jRepository<Host, Long> {
@Query("MATCH p=(parent:Host)<-[r:`28H`]-(child:Host) WHERE parent.Host_Name = \"pserver_01\" RETURN p, type(r)")
Collection<Host> getAllHosts();
}
Информация о часовом соотношении (тип (r)) не возвращается из репозитория neo4j данных пружины.
Правильны ли определения узлов и отношений? Я что-то здесь упускаю?
Буду признателен за любую помощь ...