Вопрос
Я читал через документация для neo4j И его компоненты и мне еще предстоит столкнуться с функцией, которая позволяет мне запрашивать общее количество примитивов (узлов, связей и свойств) в графе.Существует ли где-нибудь эта функциональность, или мне придется писать код, который обходит весь граф, считая по ходу?
Решение
Спасибо за вопрос!Я работаю в команде Neo4j, и в настоящее время у нас есть коммерческие инструменты, которые сообщают подобную информацию.Однако расширение API запланировано на следующую версию с открытым исходным кодом.На данный момент вы можете использовать следующий неофициальный API:
EmbeddedNeo.getConfig().getNeoModule().getNodeManager().getNumberOfIdsInUse(Class)
где будет класс Node.class
, Relationship.class
или PropertyStore.class
.
Другие советы
Это сработало для меня:
import org.neo4j.kernel.impl.nioneo.store.PropertyStore
graph.getConfig().getGraphDbModule().getNodeManager().getNumberOfIdsInUse(Node.class);
graph.getConfig().getGraphDbModule().getNodeManager().getNumberOfIdsInUse(Relationship.class);
graph.getConfig().getGraphDbModule().getNodeManager().getNumberOfIdsInUse(PropertyStore.class)
Не связан с StackOverflow