Gremlin模式验证

时间:2018-10-25 11:49:09

标签: azure-cosmosdb gremlin

我是Gremlin nub,也许我错过了Gremlin文档中的一些基础知识,但是我没有找到一种为Gremlin定义架构验证规则的方法。

我的意思是我该如何在我的图形数据库(Azure Cosmos DB中的Gremlin Api)中允许这种关系: 人员->创建->软件和人员->认识人员

但限制: 人员->知道->软件或软件->创建->人员?

1 个答案:

答案 0 :(得分:1)

克里姆林宫和TinkerPop没有图模式的概念。来自不同图形系统的模式方法过于多样化而无法一概而论(有些甚至不支持模式)。如果需要模式,则需要选择一个支持TinkerPop的系统并使用其API定义该模式,或者需要在应用程序中自行处理此类逻辑。

对于后者,您可以考虑将几个逻辑封装在代码中某个地方之外的几个选项:

  • 为图形突变写一个DSL-可以帮助在API级别上实施所需的架构
  • 开发一个TraversalStrategy,以验证所做的突变是否符合架构。目前,这是仅Java的方法,并且需要CosmosDB尚不支持的基于字节码的遍历(尽管当前支持under development)。