

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
<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 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 nodo`company`, ad esempio, i risultati saranno diversi tra queste due versioni della query. 