Arbeiten mit lokalen Sekundärindizes in DynamoDB AWS CLI - Amazon-DynamoDB

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.

Arbeiten mit lokalen Sekundärindizes in DynamoDB AWS CLI

Sie können den verwenden AWS CLI , um eine Amazon DynamoDB-Tabelle mit einem oder mehreren lokalen sekundären Indizes zu erstellen, die Indizes in der Tabelle zu beschreiben und Abfragen mithilfe der Indizes durchzuführen.

Erstellen einer Tabelle mit einem lokalen sekundären Index

Lokale sekundäre Indizes müssen gleichzeitig mit dem Erstellen einer Tabelle erstellt werden. Zu diesem Zweck verwenden Sie den create-table-Parameter und geben Ihre Spezifikationen für ein oder mehrere lokale sekundäre Indizes an. Das folgende Beispiel erstellt eine Tabelle (Music), die Informationen über Songs in einer Musiksammlung enthält. Der Partitionsschlüssel ist Artist und der Sortierschlüssel SongTitle. Ein sekundärer Index, AlbumTitleIndex auf dem AlbumTitle-Attribut, erleichtert Abfragen nach Albumtitel.

aws dynamodb create-table \ --table-name Music \ --attribute-definitions AttributeName=Artist,AttributeType=S AttributeName=SongTitle,AttributeType=S \ AttributeName=AlbumTitle,AttributeType=S \ --key-schema AttributeName=Artist,KeyType=HASH AttributeName=SongTitle,KeyType=RANGE \ --provisioned-throughput \ ReadCapacityUnits=10,WriteCapacityUnits=5 \ --local-secondary-indexes \ "[{\"IndexName\": \"AlbumTitleIndex\", \"KeySchema\":[{\"AttributeName\":\"Artist\",\"KeyType\":\"HASH\"}, {\"AttributeName\":\"AlbumTitle\",\"KeyType\":\"RANGE\"}], \"Projection\":{\"ProjectionType\":\"INCLUDE\", \"NonKeyAttributes\":[\"Genre\", \"Year\"]}}]"

Sie müssen warten bis DynamoDB die Tabelle erstellt und den Tabellenstatus auf ACTIVE setzt. Im Anschluss können Sie die Daten in der Tabelle ablegen. Mit describe-table können Sie den Status der Tabellenerstellung ermitteln.

Beschreiben einer Tabelle mit einem lokalen sekundären Index

Um Informationen zu lokalen sekundären Indizes in einer Tabelle zu erhalten, verwenden Sie den Parameter describe-table. Sie können auf den Namen, das Schlüsselschema und die projizierten Attribute von jedem Index zugreifen.

aws dynamodb describe-table --table-name Music

Abfragen eines lokalen sekundären Indexes

Sie können die Operation query für einen lokalen sekundären Index genauso nutzen, wie Sie query für eine Tabelle nutzen. Sie müssen den Indexnamen, die Abfragekriterien für den Indexsortierschlüssel und die Attribute angeben, die Sie zurückgeben möchten. In diesem Beispiel ist der Index AlbumTitleIndex und der Indexsortierschlüssel AlbumTitle.

Die einzigen zurückgegebenen Attribute sind die, die in den Index projiziert wurden. Sie könnten diese Abfrage ändern, um auch Nicht-Schlüsselattribute auszuwählen, aber dies würde eine Tabellenabrufaktivität erfordern, die relativ teuer ist. Weitere Informationen zum Abrufen von Tabellen finden Sie unter Attributprojektionen.

aws dynamodb query \ --table-name Music \ --index-name AlbumTitleIndex \ --key-condition-expression "Artist = :v_artist and AlbumTitle = :v_title" \ --expression-attribute-values '{":v_artist":{"S":"Acme Band"},":v_title":{"S":"Songs About Life"} }'