2015-04-19 15 views
5

Ho un requisito in cui una chiave di proprietà può contenere più valori. Come li memorizzo come proprietà in Neo4j?Qual è il modo migliore per memorizzare l'array di stringhe come proprietà del nodo in Neo4j

Es: nodo persona ha proprietà come: 'nome', 'l'età' e La proprietà 'interessi' 'interessi' in grado in grado di contenere più di uno stringhe (array di stringhe).

Qual è l'approccio migliore per memorizzare gli "interessi"? Penso di non voler complicare questo aggiungendo più nodi. Invece voglio mantenere tutte le proprietà nello stesso nodo Person.

Inoltre, sarà utile se posso cercare un nodo Persona da qualsiasi elemento nella proprietà 'interessi'.

Memorizza come una stringa separata da alcuni caratteri speciali? Memorizza come matrice di stringhe per una proprietà? se sì, come faccio a fare questo?

Grazie

+1

Hai considerato la lettura del manuale? Ecco la sezione sulle collezioni di cypher - http://neo4j.com/docs/stable/syntax-collections.html –

+0

Grazie, sembra che io possa json codificare l'elenco di valori e archiviare come un valore di una proprietà. È possibile cercare (o confrontare) con uno dei valori nella proprietà? –

+1

È possibile archiviare JSON come stringa, ma in realtà non si è in grado di sfruttare il database durante la ricerca. Come dice @Brian, se stai cercando gli "interessi" probabilmente ti servirà meglio rendendoli cittadini di prima classe nel tuo modello. –

risposta

2

È possibile memorizzare un array di stringhe come una proprietà e questo è quello Potrei suggerire se si desidera visualizzare semplicemente un elenco di interessi quando si lavora con un particolare Person nodo:

http://neo4j.com/docs/stable/rest-api-property-values.html#_arrays

Se si desidera cercare persone per interessi, tuttavia, suggerirei caldamente di considerarle come nodi. Con il comando MERGE cypher può essere abbastanza facile gestirli, e dovrebbe essere più performante.

+0

Brian, ho una domanda simile. Ad esempio, ho due tipi: Paese e Persona. L'oggetto del tipo Paese ha il parametro "PIL". Questo parametro è una matrice di coppia (anno, PIL). L'oggetto del tipo Persona ha peso parametro. Questo parametro è una matrice di coppia (anno, peso). Fnd Ho relazioni diverse, ad esempio PRESIDENT con date di inizio e fine Come posso cercare con questi parametri compositi e come, ad esempio, trovare Persona che era presidente e aveva il minimo peso in periodo presidenziale o dove posso leggere le informazioni sul mio compito –

Problemi correlati