0

Я использую DSE graph 5.X.Dse Graph - получить все ребра между двумя вершинами

Предположим, я два Vertex, Vertex А и Б. Vertex

Dse документация говорит о том, вершины и ребра по отдельности.

Но все, что я ищу, это получение всех вершин определенного label или всех ребер между двумя вершинами.

Как получить все ребра между вершинами A и Vertex B в Java-коде?

List<Edge> edges = graph.getEdges(fromVertex, toVertex);

например

Спасибо вам! ..

ответ

3

В общем, страница Гремлин рецепты хорошо для вещей, как этот http://tinkerpop.apache.org/docs/current/recipes/#between-vertices

Если вы знаете, идентификаторы вершин, то вы, вероятно, может пойти с

g.V(ids).outE().where(inV().id().is(within(ids))) 
+0

Что такое 'ids' здесь, идентификатор определенной вершины или группы идентификаторов –

+0

g.V() довольно гибкий. Посмотрите http://tinkerpop.apache.org/javadocs/current/full/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversalSource.html#V-java.lang.Object...- –

2

Привет Позвольте мне дать вам запрос DSE график что будет считать это Количество ребер между двумя вершинами, то вы можете выполнить или запустить тот же запрос в Java: -

g.V().hasLabel('users').has('userId','8e4b334a-388e-4623-91d6-fad7570e3129').outE('hasA').as('e').inV().hasLabel('mobileNo').select('e').count() 

Он находит для вершины, имеющей лабораторию el 'USERS' и, в частности, Vertex, имеющий некоторый USER_ID, для подключения Vertex как «MOBILE_NO».

Вы можете пропустить запрос части user_id и можете рассчитывать между любыми двумя вершинами определенных меток.