получение совпадений на нескольких ярлыках в Amazon Neptune с Gremlin - PullRequest
0 голосов
/ 20 декабря 2018

Реализация Amazon Neptune Gremlin позволяет использовать несколько меток в вершинах (см. https://docs.aws.amazon.com/neptune/latest/userguide/access-graph-gremlin-differences.html)

Но как запросить вершины по нескольким меткам?

gV (). HasLabel ('label1'). hasLabel ('label2')

- это то, что я ожидал, но, похоже, не сработало.

Ответы [ 2 ]

0 голосов
/ 21 декабря 2018

В качестве временной меры вы можете попробовать сделать hasLabel('label1').fold().unfold().hasLabel('label2')

0 голосов
/ 20 декабря 2018

Учитывая семантику Gremlin, это:

g.V().hasLabel('label1').hasLabel('label2')

означает, что вы выполняете операцию "и", поэтому у вершин должны быть "label1" и "label2".Если вам нужна операция «или», в которой вершины могут иметь метку «label1» или «label2», вам, вероятно, потребуется изменить это значение на:

g.V().or(hasLabel('label1'),hasLabel('label2'))

Не уверен, решит ли это вашу проблему с Нептуномв том, что вы хотите запросить, но это то, что ожидает Гремлин.

...