【问题标题】:titan manyToOne missing from 0.4.4 -> 0.5.4Titan manyToOne 从 0.4.4 -> 0.5.4 丢失
【发布时间】:2023-10-11 09:15:01
【问题描述】:

我正在将泰坦从 0.4.4 升级到 0.5.4。

根据http://s3.thinkaurelius.com/docs/titan/0.5.4/upgrade.html,架构创建在 0.5.4 中有很大的变化。所以我使用 getManagementSystem 并将 makeKey 替换为 makePropertyKey 并且我们的大多数模式创建脚本都可以正常工作,除了:

在 0.4.4 中,我们有 g.makeLabel('site1').manyToOne().make()。在 0.5.4 中,makeEdgeLabel 没有 manyToOne 方法,那么如何在 0.5.4 中指定 manyToOne 呢?

提前致谢,

【问题讨论】:

    标签: cassandra titan gremlin


    【解决方案1】:

    查看边缘标签上的multiplicity 约束。

    http://s3.thinkaurelius.com/docs/titan/0.5.4/schema.html#_edge_label_multiplicity

    mgmt = g.getManagementSystem()
    follow = mgmt.makeEdgeLabel('follow').multiplicity(Multiplicity.MULTI).make()
    mother = mgmt.makeEdgeLabel('mother').multiplicity(Multiplicity.MANY2ONE).make()
    mgmt.commit()
    

    【讨论】:

    • 感谢您的建议。我需要再次访问架构文档。:-) 干杯!