Gremlin 선택적 순회

Dhruvrajsinh R Parmar

이것은 신인 Gremlin 질문 일 수 있습니다.

이 그래프가 있다고합시다

A [알다 --->] B

A [알다 --->] C

D [알다 --->] C

이 그래프를 가로 질러 A 만 알고있는 노드를 찾고 싶습니다.이 경우 A와 D가 모두 C를 알고 있기 때문에 C가 아닌 B 만 알고 있습니다. Gremlin으로이 작업을 수행 할 수있는 방법이 있습니까?

편집 : 미안합니다 처음에 질문에 더 명시 적이어야했습니다 들어오는 가장자리의 수는 실제로 가변적 일 수 있습니다.

g.addV('A').as('a')
  .addV('B').as('b')
  .addV('C').as('c')
  .addV('D').as('d')
  .addV('E').as('e')
  .addV('F')as('f')
  .addE('knows').from('a').to('c')
  .addE('knows').from('b').to('c')
  .addE('knows').from('a').to('f')
  .addE('knows').from('b').to('f')
  .addE('knows').from('d').to('f')

이 경우 A와 B는 C와 F를 모두 알고 있지만 D도 F를 알고 있기 때문에 F가 아닌 C 만 원하므로 F를 원하지 않습니다.

켈빈 로렌스

작은 샘플 그래프가 있으면 도움이됩니다. 귀하의 질문과 일치하는 항목이 있습니다.

g.addV('A').as('a').
  addV('B').as('b').
  addV('C').as('c').
  addV('D').as('d').
  addE('knows').from('a').to('b').
  addE('knows').from('a').to('c').
  addE('knows').from('d').to('c')    

이 그래프를 사용하여 A에게 고유 한 친구를 찾는 쿼리를 다음과 같이 작성할 수 있습니다.

gremlin> g.V().hasLabel('A').
               out('knows').
               filter(__.in('knows').count().is(1)).
               path().
               by(label)  

==>[A,B] 

업데이트 된 질문에 따라 수정되었습니다.

좋습니다. 추가 기준을 고려할 때 필요한 정보를 제공한다고 생각합니다.

gremlin>  g.V().hasLabel('A','B').
......1>        out().
......2>        groupCount().
......3>        unfold().
......4>        filter(select(values).is(2)).
......5>        select(keys).
......6>        where(__.in('knows').count().is(2)).
......7>        label()  

==>C   

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

선택 단계에서 Gremlin 순회 유형 (Edge, Vertex, Property)을 반영 할 수 있습니까?

분류에서Dev

정적을 적용하는 방법은 주어진 순회 gremlin 쿼리에 대해 방문한 모든 노드 / 에지에 단계가 있습니다.

분류에서Dev

순회에서 정점과 그 하위 항목 제외 [Gremlin API]

분류에서Dev

gremlin 순회 쿼리의 응답 컴파일

분류에서Dev

Gremlin-단일 순회에서 여러 모서리 이동

분류에서Dev

Gremlin-1 번의 순회에서 정점 및 Edge Upsert

분류에서Dev

Spark 그래프에 대한 Gremlin 순회 쿼리

분류에서Dev

Gremlin Javascript 순회가 해결되지 않음

분류에서Dev

효율적인 HashMap 순회

분류에서Dev

Gremlin은 현재 순회에서 하나의 정점을 반환합니다.

분류에서Dev

그래프 하단에서 상단으로 순회하는 Gremlin 쿼리

분류에서Dev

Gremlin : 제공된 순회자가 값에 매핑되지 않습니다.

분류에서Dev

gremlin을 사용한 순회와 Graph의 메서드의 차이점

분류에서Dev

gremlin을 사용한 순회와 Graph의 메서드의 차이점

분류에서Dev

gremlin을 사용한 순회와 Graph의 메서드의 차이점

분류에서Dev

VBA에서 순차적 행 선택

분류에서Dev

단순 주문 조회 개선

분류에서Dev

동시 탄력적 순 회귀

분류에서Dev

재사용 가능한 순회 구성 요소는 항상 gremlin에서 작동하지 않습니다.

분류에서Dev

Python 용 Gremlin이 데이터 대신 순회 명령 목록을 반환합니다.

분류에서Dev

Tinkerpop Gremlin-순회 독립 컬렉션으로 변수를 집계하는 방법

분류에서Dev

다른 선택 변경에서 동적으로 단순 양식 선택 변경

분류에서Dev

Gremlin : 재귀 적 합산

분류에서Dev

회귀 모델에 적합한 메트릭 선택

분류에서Dev

선택적 단어 조회를 사용하는 정규식 lookbehind

분류에서Dev

Gremlin-그룹 키를 기반으로 정점 선택

분류에서Dev

Gremlin에서 임의의 정점을 선택하는 방법

분류에서Dev

여러 선택적 하위 문자열의 순서 변경

분류에서Dev

이니셜 라이저의 선택적 매개 변수 순서

Related 관련 기사

  1. 1

    선택 단계에서 Gremlin 순회 유형 (Edge, Vertex, Property)을 반영 할 수 있습니까?

  2. 2

    정적을 적용하는 방법은 주어진 순회 gremlin 쿼리에 대해 방문한 모든 노드 / 에지에 단계가 있습니다.

  3. 3

    순회에서 정점과 그 하위 항목 제외 [Gremlin API]

  4. 4

    gremlin 순회 쿼리의 응답 컴파일

  5. 5

    Gremlin-단일 순회에서 여러 모서리 이동

  6. 6

    Gremlin-1 번의 순회에서 정점 및 Edge Upsert

  7. 7

    Spark 그래프에 대한 Gremlin 순회 쿼리

  8. 8

    Gremlin Javascript 순회가 해결되지 않음

  9. 9

    효율적인 HashMap 순회

  10. 10

    Gremlin은 현재 순회에서 하나의 정점을 반환합니다.

  11. 11

    그래프 하단에서 상단으로 순회하는 Gremlin 쿼리

  12. 12

    Gremlin : 제공된 순회자가 값에 매핑되지 않습니다.

  13. 13

    gremlin을 사용한 순회와 Graph의 메서드의 차이점

  14. 14

    gremlin을 사용한 순회와 Graph의 메서드의 차이점

  15. 15

    gremlin을 사용한 순회와 Graph의 메서드의 차이점

  16. 16

    VBA에서 순차적 행 선택

  17. 17

    단순 주문 조회 개선

  18. 18

    동시 탄력적 순 회귀

  19. 19

    재사용 가능한 순회 구성 요소는 항상 gremlin에서 작동하지 않습니다.

  20. 20

    Python 용 Gremlin이 데이터 대신 순회 명령 목록을 반환합니다.

  21. 21

    Tinkerpop Gremlin-순회 독립 컬렉션으로 변수를 집계하는 방법

  22. 22

    다른 선택 변경에서 동적으로 단순 양식 선택 변경

  23. 23

    Gremlin : 재귀 적 합산

  24. 24

    회귀 모델에 적합한 메트릭 선택

  25. 25

    선택적 단어 조회를 사용하는 정규식 lookbehind

  26. 26

    Gremlin-그룹 키를 기반으로 정점 선택

  27. 27

    Gremlin에서 임의의 정점을 선택하는 방법

  28. 28

    여러 선택적 하위 문자열의 순서 변경

  29. 29

    이니셜 라이저의 선택적 매개 변수 순서

뜨겁다태그

보관