2012-04-20 11 views
6

Sono nuovo di zecca per i database NOSQL (o qualsiasi tipo di database) e ho bisogno di costruire un database grafico in Java. Non ho mai usato SpringSource prima di entrambi. L'uso di Spring Data neo4j renderà più semplice il processo di creazione di un database grafico o complicherà le cose? Dovrei semplicemente provare a lavorare con neo4j direttamente? Grazie mille.Quali sono i vantaggi dell'utilizzo di Spring Data neo4j semplicemente utilizzando neo4j direttamente?

risposta

5

Dipende dal vostro caso d'uso. SDN è una buona soluzione quando si sta già lavorando in un ambiente Spring e si dispone di un modello di dominio ricco che si desidera mappare nel grafico. SDN è una buona soluzione in tutti i casi in cui si lavora principalmente con risultati di poche centinaia o di migliaia di oggetti POJO che devono interagire con librerie esistenti, strati di interfaccia utente o altre parti dell'applicazione che trattano i POJO.

Se non si lavora in un ambiente Spring, dipende da voi, aggiunge una certa complessità nell'installazione e nelle dipendenze. Esistono anche altre soluzioni come jo4neo o Tinkerpop Frames che funzionano su Neo4j.

È più lento rispetto all'API Neo4j nativa a causa dell'introduzione indiretta.

Per prestazioni ottimali è sempre possibile ricorrere all'API Neo4j.

In generale Core-API è il più veloce, una buona cosa nel mezzo è lo cypher-query language che è molto espressivo.

+0

Non sto già lavorando in un ambiente Spring e voglio solo la funzionalità neo4j, quindi proverò a lavorare con il linguaggio Core-API o cypher-query. Grazie mille! – user1056805

+0

Purtroppo SDN aggiunge molta latenza. Una Cypher @Query che impiega 4ms sulla shell di Cypher impiega 1700ms (inclusa l'iterazione su 150 restituiti int) attraverso Spring sullo stesso computer. Quindi, il rallentamento di SDN ha riportato la mia query allo stesso tempo in cui è stata eseguita sul mio RDBMS. :( –

+0

Dipende dalla modalità di mappatura, potresti condividere la tua configurazione e le tue domande per dargli un'occhiata? –

Problemi correlati