当我使用Firebase,RethinkDB等时,我爱上了对查询的实时流式更新。现在我正在通过Gremlin处理图形数据库,我想知道如何得到这种行为。
作为一个简单的例子,如果我指定了一个gremlin查询,如:
g.V().values('name')
我希望在添加名称属性的新顶点或在现有顶点上更改名称时收到更新。
我开始使用Janusgraph,所以理想的解决方案可以在那里工作 - 但这是一个杀手级的功能,我可以摇摆到other Gremlin-friendly graph databases。
谢谢!
答案 0 :(得分:3)
您可以将EventStrategy与任何Tinkerpop兼容的图形数据库一起使用。创建事件策略后,将其添加到遍历g = graph.traversal().withStrategies(strategy)
。您需要实施MutationListener界面,以便对这些事件做任何您喜欢的事情。
答案 1 :(得分:1)
OrientDB有LiveQuery虽然我不知道它与Gremlin集成 - https://orientdb.com/docs/2.1/Live-Query.html - 这是我在任何启用TinkerPop的图形数据库中对此类功能最接近的事情< / p>