Lesen des Elements mit dem zugehörigen Primärschlüssel - 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.

Lesen des Elements mit dem zugehörigen Primärschlüssel

Ein gängiges Zugriffsmuster für Datenbanken besteht darin, ein einzelnes Element aus einer Tabelle zu lesen. Sie müssen den Primärschlüssel des gewünschten Elements angeben.

Lesen eines Elements unter Verwendung seines Primärschlüssels mit SQL

In würden Sie die SELECT Anweisung verwendenSQL, um Daten aus einer Tabelle abzurufen. Sie können eine oder mehrere Spalten im Ergebnis abfragen (oder alle Spalten, wenn Sie den *-Operator verwenden). Die WHERE-Klausel bestimmt, welche Zeilen zurückgegeben werden.

Das folgende Beispiel umfasst eine SELECT-Anweisung zum Abrufen einer einzelnen Zeile aus der Tabelle Music. Die WHERE-Klausel gibt die Primärschlüsselwerte an.

SELECT * FROM Music WHERE Artist='No One You Know' AND SongTitle = 'Call Me Today'

Sie können diese Abfrage ändern und nur eine Teilmenge der Spalten abrufen.

SELECT AlbumTitle, Year, Price FROM Music WHERE Artist='No One You Know' AND SongTitle = 'Call Me Today'

Beachten Sie, dass der Primärschlüssel für diese Tabelle aus Artist und besteht SongTitle.

Lesen eines Elements mit dem zugehörigen Primärschlüssel in DynamoDB

In Amazon DynamoDB können Sie entweder DynamoDB API oder PartiQL (eine SQL -kompatible Abfragesprache) verwenden, um ein Element aus einer Tabelle zu lesen.

DynamoDB API

Mit der DynamoDB verwenden Sie die PutItem OperationAPI, um einer Tabelle ein Element hinzuzufügen.

DynamoDB stellt die Aktion GetItem zum Abrufen eines Elements über dessen Primärschlüssel bereit. GetItem ist äußerst effizient, da die Aktion direkten Zugriff auf den physischen Speicherort des Elements ermöglicht. (Weitere Informationen finden Sie unter Partitionen und Datenverteilung.)

Standardmäßig gibt GetItem das gesamte Element mit allen zugehörigen Attributen zurück.

{ TableName: "Music", Key: { "Artist": "No One You Know", "SongTitle": "Call Me Today" } }

Sie können einen ProjectionExpression-Parameter hinzufügen, um nur einige der Attribute zurückzugeben.

{ TableName: "Music", Key: { "Artist": "No One You Know", "SongTitle": "Call Me Today" }, "ProjectionExpression": "AlbumTitle, Year, Price" }

Beachten Sie, dass der Primärschlüssel für diese Tabelle aus Artist und besteht. SongTitle

Die GetItem-DynamoDB-Aktion ist sehr effizient. Sie bestimmt anhand der Primärschlüsselwerte den genauen Speicherort des entsprechenden Elements und ruft es direkt von dort ab. Die SQL SELECT Anweisung ist ähnlich effizient, wenn Elemente anhand von Primärschlüsselwerten abgerufen werden.

Die SQL SELECT Anweisung unterstützt viele Arten von Abfragen und Tabellenscans. DynamoDB bietet eine ähnliche Funktionalität mit den Aktionen Query und Scan, die in Abfragen einer Tabelle und Scannen einer Tabelle beschrieben sind.

Die SQL SELECT Anweisung kann Tabellenverknüpfungen durchführen, sodass Sie Daten aus mehreren Tabellen gleichzeitig abrufen können. Joins sind am effektivsten, wenn die Datenbanktabellen normalisiert und die Beziehungen zwischen den Tabellen eindeutig sind. Wenn Sie allerdings zu viele Tabellen in einer SELECT-Anweisung verknüpfen, kann sich dies negativ auf die Anwendungsleistung auswirken. Sie können diese Probleme umgehen, indem Sie Datenbankreplikation, materialisierte Ansichten oder Abfrageumschreibungen verwenden.

DynamoDB ist eine nicht zusammenhängende Datenbank und unterstützt keine Tabellen-Joins. Wenn Sie eine vorhandene Anwendung von einer relationalen Datenbank nach DynamoDB migrieren, müssen Sie Ihr Datenmodell denormalisieren, damit keine Joins erforderlich sind.

PartiQL for DynamoDB

Mit PartiQL verwenden Sie die ExecuteStatement-Operation zum Lesen eines Elements aus einer Tabelle mit PartiQL Select-Anweisung.

SELECT AlbumTitle, Year, Price FROM Music WHERE Artist='No One You Know' AND SongTitle = 'Call Me Today'

Beachten Sie, dass der Primärschlüssel für diese Tabelle aus Artist und besteht SongTitle.

Anmerkung

Die select PartiQL-Anweisung kann auch verwendet werden, um eine DynamoDB-Tabelle abzufragen oder zu scannen

Codebeispiele, die Select und ExecuteStatement verwenden, finden Sie unter PartiQL-Select-Anweisungen für DynamoDB.