Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Evita i controlli ridondanti delle etichette dei nodi utilizzando nomi di relazione granulari
Quando si ottimizzano le prestazioni, l'utilizzo di etichette di relazione esclusive per i modelli di nodi consente di rimuovere il filtro delle etichette sui nodi. Considerate un modello grafico in cui la relazione likes viene utilizzata solo per definire una relazione tra due person nodi. Potremmo scrivere la seguente query per trovare questo modello:
MATCH (n:person)-[:likes]->(m:person) RETURN n, m
Il controllo delle person etichette su n e m è ridondante, poiché abbiamo definito la relazione in modo che appaia solo quando entrambi sono dello stesso tipo. person Per ottimizzare le prestazioni, possiamo scrivere la query come segue:
MATCH (n)-[:likes]->(m) RETURN n, m
Questo modello può essere applicato anche quando le proprietà sono esclusive di un'etichetta a singolo nodo. Supponiamo che solo person i nodi abbiano la proprietàemail, pertanto la verifica della corrispondenza dell'etichetta del nodo person è ridondante. Scrivere questa query come:
MATCH (n:person) WHERE n.email = 'xxx@gmail.com' RETURN n
È meno efficiente rispetto alla scrittura di questa query come:
MATCH (n) WHERE n.email = 'xxx@gmail.com' RETURN n
È consigliabile adottare questo modello solo quando le prestazioni sono importanti e durante il processo di modellazione è necessario verificare che queste etichette dei bordi non vengano riutilizzate per modelli che coinvolgono altre etichette di nodi. Se successivamente introducete una email proprietà su un'altra etichetta di nodocompany, ad esempio, i risultati saranno diversi tra queste due versioni della query.