Je viens de commencer à découvrir le monde de Neo4j et j'ai trébuché sur un problème, j'ai des problèmes à saisir.Le serveur Neo4j verrouille la base de données. Pourquoi?
J'ai installé Neo4j et l'ai démarré via bin/neo4j start
. Dans les prochaines étapes, j'ai écrit un script ruby qui crée de nouveaux nœuds, après l'installation de jruby et de la gemme neo4j. Tout va bien jusqu'à ici.
Comment commencer est decribed ici: http://wiki.neo4j.org/content/Getting_Started_With_Ruby
Mon problème: Lorsque le serveur est démarré et j'essaie de crée des noeuds, Neo4j répond que la base de données est verrouillée. Lorsque j'arrête le serveur, les nœuds sont créés.
Je suis habitué aux bases de données relationnelles, donc je ne comprends pas ce comportement.
Lorsque je vérifie les informations sur le serveur via l'outil Webadmin Neo4j (http://localhost:7474/webadmin
), l'indicateur ReadOnly est défini sur false.
Il me semble que l'approche Neo4j est peut-être différente de la db relationnelle, ce qui signifie que le serveur pourrait avoir un autre but qu'un serveur db.
Merci pour tous les conseils, Tobias
Merci pour votre réponse. Donc, cette instance de Neo4j est-elle seulement vivante tant qu'une transaction ou peut-être que le script fonctionne? – auralbee
Tant que le script est en cours d'exécution. Donc, pour un usage réel, vous devriez le démarrer à partir de quelque part dans votre application de manière à ce qu'il fonctionne, car démarrer et arrêter un serveur de base de données sont des opérations assez coûteuses. – nawroth
Pour quoi utilisez-vous le serveur Neo4j? Si vous voulez juste interagir avec le graphdb de ruby, vous n'avez pas besoin d'avoir le serveur en cours d'exécution. Seulement si vous voulez exposer votre graphdb à d'autres clients via REST vous avez réellement besoin du serveur. –