Как можно использовать значения перечисления в JanusGraph? - PullRequest
0 голосов
/ 10 мая 2018

Как можно определить какой-либо тип перечисления (например, перечисление java) в базе данных janus-graph с помощью запроса gremlin?

Похоже, что-то вроде enum можно определить с помощью List типизированного свойства:

enumProperty = mgmt.makePropertyKey('State').dataType(String).cardinality(Cardinality.LIST).make()

Есть ли другой способ?

В идеале я хотел бы иметь возможность ссылаться на эти перечисляемые значения (как в Java SomeEnum.ENUM_VALUE_1) при создании / обновлении вершин / ребер посредством запросов gremlin.

1 Ответ

0 голосов
/ 10 мая 2018

Вы можете создать свойство LIST или SET, используя чистый Gremlin, если вы работаете с графиком, у которого нет явного API схемы. Вот несколько примеров

g.addV('test').property('p1','one').property('p1','two')
==>v[55985]

g.V(55985).valueMap()
==>[p1:[one,two]]

gremlin> g.V(55985).property(list,'p1','three')
==>v[55985]

gremlin> g.V(55985).valueMap()
==>[p1:[one,two,three]]

Надеюсь, это поможет,

Я достаточно подробно рассмотрел эту концепцию в книге / учебнике, которую вы можете бесплатно прочитать здесь http://kelvinlawrence.net/book/Gremlin-Graph-Guide.pdf или здесь http://kelvinlawrence.net/book/Gremlin-Graph-Guide.html

Приветствие Kelvin

...