2011-12-24 19 views
8

Voglio mantenere le relazioni in neo4j ma (forse, non ho ancora deciso) di mantenere gli oggetti in DB diversi (una sorta di Redis). E se fosse così, sarebbe bene sincronizzare gli ID in storage db e in neo4j. Quindi, posso creare un nodo in neo4j passandogli l'ID?Posso creare un nodo in neo4j con l'ID specificato?

PS progetto in PHP e accesso a neo4j tramite API REST.

risposta

2

Normalmente non è possibile, solo se si utilizza BatchImporter, http://docs.neo4j.org/chunked/snapshot/indexing-batchinsert.html, è possibile specificare gli ID da utilizzare.

+2

Ciò comporta tuttavia un costo potenziale, poiché gli ID sono posizioni assolute nel file di archivio. Se viene specificato un id alto, il file di archivio può essere abbastanza grande anche se ci sono pochi nodi in esso. –

2

In caso contrario è opportuno utilizzare ID esterni come proprietà del nodo e index i nodi su tali proprietà. Quindi hai risoluzioni bidirezionali dei tuoi ID esterni.

L'indicizzazione può essere eseguita anche utilizzando lo auto-indexer, quindi avviene automaticamente durante la creazione, l'aggiornamento e la rimozione del nodo.

Si può anche esaminare Neo4jPHP come libreria per accedere all'API REST di Neo4j.

+0

Grazie mille) – Terion

Problemi correlati