

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 controlli ridondanti delle etichette dei nodi utilizzando nomi di relazione granulari
<a name="best-practices-content-5"></a>

 Quando si ottimizzano le prestazioni, l'utilizzo di etichette di relazione esclusive per i modelli di nodi consente di rimuovere il filtraggio delle etichette sui nodi. Consideriamo 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 dell'`person`etichetta 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`, quindi verificare che l'etichetta del nodo corrisponda `person` è ridondante. Scrivere questa query come: 

```
MATCH (n:person)
WHERE n.email = 'xxx@gmail.com'
RETURN n
```

 È meno efficiente che scrivere questa query come: 

```
MATCH (n)
WHERE n.email = 'xxx@gmail.com'
RETURN n
```

 È consigliabile adottare questo modello solo quando le prestazioni sono importanti e il processo di modellazione deve essere sottoposto a controlli per garantire che le etichette dei bordi non vengano riutilizzate per modelli che coinvolgono altre etichette di nodi. Se successivamente si introduce una `email` proprietà su un'altra etichetta di nodo`company`, ad esempio, i risultati saranno diversi tra queste due versioni della query. 