View a markdown version of this page

Zusammengesetzte Indizes - Amazon DocumentDB

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.

Zusammengesetzte Indizes

Zusammengesetzte Indizes speichern Informationen aus zwei oder mehr Feldern in einer Sammlung von Dokumenten und ermöglichen so Abfragen im ersten Feld oder in beliebigen Präfixfeldern. Diese Indizes optimieren die Leistung für Abfragen, die nach mehreren Feldern gleichzeitig filtern oder Filter mit Sortiervorgängen kombinieren. Sie eignen sich auch für Abfragen mit einer einzigen Bedingung in den indizierten Feldern ganz links. Die Datenbank nutzt diese Indexeinträge, um passende Dokumente effizient zu finden, ohne die Sammlung vollständig scannen zu müssen.

Zusammengesetzte Feldindizes sind nützlich, wenn:

  • Sie müssen nach mehreren Feldern gleichzeitig filtern.

  • Sie müssen das Filtern mit Sortiervorgängen kombinieren.

Unterstützte Indexeigenschaften

Option 3.6 4,0 5.0 8.0 Elastischer Cluster
name Ja Ja Ja Ja Ja
einzigartig Ja Ja Ja Ja Ja
spärlich * Ja Ja Ja Ja Ja
teilweise * FilterExpression Nein Nein Ja Ja Nein

* Die partialFilterExpression Optionen sparse und können nicht zusammen in derselben Indexdefinition verwendet werden. Wenn Sie versuchen, einen Index mit diesen Optionen zu erstellen, schlägt dies mit dem folgenden Fehler fehl:

Error in specification: cannot mix partialFilterExpression and sparse options

Einen zusammengesetzten Index erstellen

Verwenden Sie die createIndex() Methode, um einen zusammengesetzten Index zu erstellen. Die Syntax der Methode lautet: db.collection.createIndex(<keys>, <options>)

Der keys Parameter ist ein JSON-Dokument, das die Felder und die Index-Sortierreihenfolge angibt:

{ "<field 1>": <1 (ascending)|-1 (descending)>, "<field 2>": <1 (ascending)|-1 (descending)>, ... }

Beachten Sie, dass in einem zusammengesetzten Index nur ein Feld ein Array sein kann. Wenn Sie versuchen, einen zusammengesetzten Index für zwei oder mehr Array-Felder zu erstellen, schlägt dies mit dem folgenden Fehler fehl:

multiple fields of compound index cannot be arrays

Der options Parameter ist ein JSON-Dokument, das die Optionen für den Index angibt:

{ "name": "<name>", "unique": <true | false>, "sparse": <true | false>, "partialFilterExpression": <filter expression> }

Beispiele für die Erstellung zusammengesetzter Indizes finden Sie unter Indexeigenschaften.