

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Verwenden Sie lieber „Benutzerdefiniert“ IDs für Knoten/Beziehungen
<a name="best-practices-content-15"></a>

 Neptune ermöglicht es Benutzern, Knoten und Beziehungen explizit zuzuweisen IDs . Die ID muss im Datensatz global eindeutig und deterministisch sein, um nützlich zu sein. Eine deterministische ID kann genau wie Eigenschaften als Such- oder Filtermechanismus verwendet werden. Die Verwendung einer ID ist jedoch aus Sicht der Abfrageausführung viel optimierter als die Verwendung von Eigenschaften. Die Verwendung von benutzerdefinierten IDs Funktionen bietet mehrere Vorteile - 
+  Eigenschaften können für eine bestehende Entität Null sein, aber die ID muss existieren. Dadurch kann die Abfrage-Engine während der Ausführung einen optimierten Join verwenden. 
+  Wenn Abfragen mit gleichzeitigen Mutationen ausgeführt werden, verringert sich die Wahrscheinlichkeit, dass [Ausnahmen (CMEs) gleichzeitig geändert](https://docs.aws.amazon.com//neptune/latest/userguide/transactions-exceptions.html) werden, wenn sie für den Zugriff auf Knoten verwendet IDs werden, erheblich, da aufgrund ihrer erzwungenen Eindeutigkeit weniger Sperren IDs als Eigenschaften übernommen werden. 
+  Durch die Verwendung IDs wird die Möglichkeit vermieden, dass doppelte Daten erstellt werden, da Neptune im Gegensatz zu Eigenschaften die Einzigartigkeit erzwingt. IDs 

 Im folgenden Abfragebeispiel wird eine benutzerdefinierte ID verwendet: 

**Anmerkung**  
 Die Eigenschaft `~id` wird verwendet, um die ID anzugeben, während sie einfach wie jede andere Eigenschaft gespeichert `id` wird. 

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

 Ohne eine benutzerdefinierte ID zu verwenden: 

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

 Wenn Sie den letztgenannten Mechanismus verwenden, wird die Eindeutigkeit nicht erzwungen und Sie könnten die Abfrage später ausführen: 

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

 Dadurch wird ein zweiter Knoten mit `id=1` named `john` erstellt. In diesem Szenario hätten Sie jetzt zwei Knoten mit `id=1` jeweils einem anderen Namen (alice und john). 