В настоящее время невозможно обеспечить наличие определенных ключей свойств для определенных вершин или меток ребер в JanusGraph.Однако это было бы хорошим дополнением для ограничений схемы, которые были введены в JanusGraph 0.3.0.Итак, не стесняйтесь создать проблему с JanusGraph для этого запроса функции.
Пока что-то подобное не будет реализовано в JanusGraph, вам, вероятно, придется реализовать логику для реализации этого в вашем приложении, котороевставляет данные.
Если вы по какой-то причине не можете или не хотите реализовать это в своем приложении (например, потому что вы не контролируете все приложения, которые вставляют данные в ваш график), то вы также можете реализоватьваш собственный TinkerPop TraversalStrategy
, который проверяет каждый addV
шаг, чтобы убедиться, что свойство также добавлено.Эти стратегии оцениваются для всех обходов и могут изменить (например, как оптимизацию) этапы обхода или даже вызвать исключение, если обход не является законным, что будет правильным поведением в вашем случае.Возможно, сам JanusGraph также реализует стратегию добавления этих дополнительных ограничений схемы.