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.
Unterschiede zwischen einer relationalen (SQL) Datenbank und DynamoDB beim Erstellen einer Tabelle
Tabellen stellen die grundlegenden Datenstrukturen in relationalen Datenbanken und in Amazon DynamoDB dar. Bei einem relationalen Datenbankmanagementsystem (RDBMS) müssen Sie das Schema der Tabelle definieren, wenn Sie sie erstellen. Im Gegensatz dazu sind DynamoDB-Tabellen schemalos mit Ausnahme des Primärschlüssels müssen Sie beim Erstellen einer Tabelle keine zusätzlichen Attribute oder Datentypen definieren.
Im folgenden Abschnitt wird verglichen, wie Sie eine Tabelle mit erstellen würdenSQL, und wie Sie sie mit DynamoDB erstellen würden.
Erstellen einer Tabelle mit SQL
Mit der CREATE TABLE
Anweisung würden SQL Sie eine Tabelle erstellen, wie im folgenden Beispiel gezeigt.
CREATE TABLE Music ( Artist VARCHAR(20) NOT NULL, SongTitle VARCHAR(30) NOT NULL, AlbumTitle VARCHAR(25), Year INT, Price FLOAT, Genre VARCHAR(10), Tags TEXT, PRIMARY KEY(Artist, SongTitle) );
Der Primärschlüssel für diese Tabelle besteht aus Artist und SongTitle.
Definieren Sie alle Tabellenspalten und Datentypen sowie den Primärschlüssel der Tabelle. (Mit der ALTER TABLE
-Anweisung können Sie diese Definitionen später ändern, falls erforderlich.)
In vielen SQL Implementierungen können Sie als Teil der CREATE TABLE
Anweisung Speicherspezifikationen für Ihre Tabelle definieren. Die Tabelle wird mit den Standardspeichereinstellungen erstellt, sofern Sie nichts anderes angeben. In einer Produktionsumgebung kann ein Datenbankadministrator Ihnen dabei helfen, die optimalen Speicherparameter festzulegen.
Erstellen einer Tabelle mit DynamoDB
Verwenden Sie die Aktion CreateTable
, um eine Tabelle mit dem Modus bereitgestellter Kapazität zu erstellen und Parameter wie folgt anzugeben:
{ TableName : "Music", KeySchema: [ { AttributeName: "Artist", KeyType: "HASH" //Partition key }, { AttributeName: "SongTitle", KeyType: "RANGE" //Sort key } ], AttributeDefinitions: [ { AttributeName: "Artist", AttributeType: "S" }, { AttributeName: "SongTitle", AttributeType: "S" } ], ProvisionedThroughput: { // Only specified if using provisioned mode ReadCapacityUnits: 1, WriteCapacityUnits: 1 } }
Der Primärschlüssel für diese Tabelle besteht aus Artist (Partitionsschlüssel) und SongTitle(Sortierschlüssel).
Sie müssen die folgenden Parameter für CreateTable
angeben:
-
TableName
– Name der Tabelle. -
KeySchema
– Attribute, die für den Primärschlüssel verwendet werden. Weitere Informationen erhalten Sie unter Tabellen, Elemente und Attribute und Primärschlüssel. -
AttributeDefinitions
– Datentypen für die Schlüsselschemaattribute. -
ProvisionedThroughput (for provisioned tables)
– Anzahl der Lese- und Schreibvorgänge pro Sekunde, die Sie für diese Tabelle benötigen. DynamoDB reserviert ausreichend Speicher- und Systemressourcen, sodass Ihre Durchsatzanforderungen immer erfüllt werden. Mit der AktionUpdateTable
können Sie diese später ändern, falls erforderlich. Sie müssen die Speicheranforderungen einer Tabelle nicht angeben, da die Speicherzuweisung vollständig von DynamoDB verwaltet wird.