我是Gremlin nub,也许我错过了Gremlin文档中的一些基础知识,但是我没有找到一种为Gremlin定义架构验证规则的方法。
我的意思是我该如何在我的图形数据库(Azure Cosmos DB中的Gremlin Api)中允许这种关系: 人员->创建->软件和人员->认识人员
但限制: 人员->知道->软件或软件->创建->人员?
答案 0 :(得分:1)
克里姆林宫和TinkerPop没有图模式的概念。来自不同图形系统的模式方法过于多样化而无法一概而论(有些甚至不支持模式)。如果需要模式,则需要选择一个支持TinkerPop的系统并使用其API定义该模式,或者需要在应用程序中自行处理此类逻辑。
对于后者,您可以考虑将几个逻辑封装在代码中某个地方之外的几个选项:
TraversalStrategy
,以验证所做的突变是否符合架构。目前,这是仅Java的方法,并且需要CosmosDB尚不支持的基于字节码的遍历(尽管当前支持under development)。