

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à.

# Preferisci utilizzare ID personalizzati per node/relationship
<a name="best-practices-content-15"></a>

 Neptune consente agli utenti di assegnare ID in modo esplicito su nodi e relazioni. L'ID deve essere univoco a livello globale nel set di dati e deterministico per essere utile. Un ID deterministico può essere utilizzato come meccanismo di ricerca o filtro proprio come le proprietà; tuttavia, l'utilizzo di un ID è molto più ottimizzato dal punto di vista dell'esecuzione delle query rispetto all'utilizzo delle proprietà. L'utilizzo di ID personalizzati offre diversi vantaggi: 
+  Le proprietà possono essere nulle per un'entità esistente, ma l'ID deve esistere. Ciò consente al motore di interrogazione di utilizzare un join ottimizzato durante l'esecuzione. 
+  Quando vengono eseguite query di mutazione simultanea, le possibilità di eccezioni di modifica [ concorrente ](https://docs.aws.amazon.com/neptune/latest/userguide/transactions-exceptions.html) (CME) si riducono significativamente quando gli ID vengono utilizzati per accedere ai nodi, poiché gli ID vengono utilizzati meno blocchi rispetto alle proprietà a causa della loro unicità imposta. 
+  L'utilizzo degli ID evita la possibilità di creare dati duplicati poiché Neptune impone l'unicità agli ID, a differenza delle proprietà. 

 L'esempio di query seguente utilizza un ID personalizzato: 

**Nota**  
 La proprietà `~id` viene utilizzata per specificare l'ID, mentre `id` viene memorizzata come qualsiasi altra proprietà. 

```
CREATE (n:Person {`~id`: '1', name: 'alice'})
```

 Senza utilizzare un ID personalizzato: 

```
CREATE (n:Person {id: '1', name: 'alice'})
```

 Se si utilizza quest'ultimo meccanismo, non viene applicata l'unicità e in seguito è possibile eseguire la query: 

```
CREATE (n:Person {id: '1', name: 'john'})
```

 Questo crea un secondo nodo con `id=1` named`john`. In questo scenario, ora avresti due nodi con`id=1`, ognuno con un nome diverso - (alice e john). 