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.
DynamoDB-Local-Nutzungshinweise
Mit Ausnahme des Endpunkts sollten Anwendungen, die mit der herunterladbaren Version von Amazon DynamoDB ausgeführt werden, auch mit dem DynamoDB-Webservice funktionieren. Bei der lokalen Verwendung von DynamoDB sollten Sie allerdings Folgendes beachten:
-
Wenn Sie die
-sharedDb
Option verwenden, erstellt DynamoDB eine einzelne Datenbankdatei namens shared-local-instance .db. Jedes Programm, das eine Verbindung mit DynamoDB herstellt, greift auf diese Datei zu. Wenn Sie die Datei löschen, gehen alle darin gespeicherten Daten verloren. -
Wenn Sie sie weglassen
-sharedDb
, erhält die Datenbankdatei den Namen myaccesskeyid_region.db mit der AWS Zugriffsschlüssel-ID und AWS Region, wie sie in Ihrer Anwendungskonfiguration erscheinen. Wenn Sie die Datei löschen, gehen alle darin gespeicherten Daten verloren. -
Bei Verwendung der
-inMemory
-Option schreibt DynamoDB keine Datenbankdateien. Stattdessen werden alle Daten im Arbeitsspeicher abgelegt und beim Beenden von DynamoDB nicht gespeichert. -
Wenn Sie die
-inMemory
-Option verwenden, ist die-sharedDb
-Option ebenfalls erforderlich. -
Bei Verwendung der Option
-optimizeDbBeforeStartup
müssen Sie auch den-dbPath
-Parameter angeben, damit DynamoDB die entsprechende Datenbankdatei finden kann. -
Die AWS SDKs für DynamoDB erfordern, dass Ihre Anwendungskonfiguration einen Zugriffsschlüsselwert und einen AWS Regionswert angibt. DynamoDB verwendet diese Werte, um die lokale Datenbankdatei zu benennen, sofern Sie nicht die Option
-sharedDb
oder-inMemory
verwenden. Diese Werte müssen keine gültigen AWS Werte sein, um lokal ausgeführt zu werden. Möglicherweise ist es jedoch komfortabler, gültige Werte zu verwenden, damit Sie Ihren Code später in der Cloud ausführen können, indem Sie den verwendeten Endpunkt ändern. -
DynamoDB Local gibt für
billingModeSummary.
immer null zurück -
DynamoDB Local
AWS_ACCESS_KEY_ID
kann nur Buchstaben (A–Z, a–z) und Zahlen (0–9) enthalten. -
DynamoDB local unterstützt Point-in-time Recovery () PITR nicht.
Themen
Befehlszeilenoptionen
Mit der herunterladbaren Version von DynamoDB können Sie die folgenden Befehlszeilenoptionen verwenden:
-
-cors
value
— Aktiviert die Unterstützung für die gemeinsame Nutzung von Ressourcen zwischen verschiedenen Quellen () CORS für. JavaScript Sie müssen eine durch Komma getrennte Liste zum Zulassen spezifischer Domänen bereitstellen. Die Standardeinstellung für-cors
ist ein Stern (*), der öffentlichen Zugriff zulässt. -
-dbPath
value
– Das Verzeichnis, in das DynamoDB seine Datenbankdatei schreibt. Wenn Sie diese Option nicht angeben, wird die Datei in das aktuelle Verzeichnis geschrieben. Sie können nicht-dbPath
und-inMemory
gleichzeitig angeben. -
-delayTransientStatuses
– Veranlasst DynamoDB, Verzögerungen für bestimmte Operationen einzuführen. DynamoDB (herunterladbare Version) kann einige Aufgaben fast sofort ausführen, wie beispielsweise das Erstellen/Aktualisieren/Löschen von Operationen in Tabellen und Indizes. Der Service DynamoDB benötigt für diese Aufgaben jedoch mehr Zeit. Durch Festlegen dieses Parameters kann DynamoDB bei Ausführung auf einem Computer das Verhalten des DynamoDB-Webservices besser simulieren. (Derzeit führt dieser Parameter nur für globale Sekundärindizes zu Verzögerungen, die sich entweder im DELETINGStatus CREATINGOder befinden.) -
-help
– Druckt eine Nutzungszusammenfassung sowie Optionen. -
-inMemory
– DynamoDB wird im Speicher anstatt mit einer Datenbankdatei ausgeführt. Wenn Sie DynamoDB beenden, werden keine Daten gespeichert. Sie können nicht-dbPath
und-inMemory
gleichzeitig angeben. -
-optimizeDbBeforeStartup
– Optimiert die zugrunde liegenden Datenbanktabellen vor dem Start von DynamoDB auf Ihrem Computer. Wenn Sie diesen Parameter verwenden, müssen Sie außerdem-dbPath
angeben. -
-port
value
– Die Portnummer, die DynamoDB für die Kommunikation mit Ihrer Anwendung verwendet. Wenn Sie diese Option nicht angeben, lautet der Standardport8000
.Anmerkung
DynamoDB verwendet standardmäßig Port 8000. Wenn Port 8000 nicht verfügbar ist, wird eine Ausnahme ausgelöst. Mit der Option
-port
können Sie eine andere Portnummer angeben. Um eine vollständige Liste der DynamoDB-Laufzeitoptionen, einschließlich-port
, zu erhalten, geben Sie folgenden Befehl ein:java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -help
-
-sharedDb
–-sharedDb
DynamoDB verwendet eine einzige Datenbankdatei anstatt separater Dateien für jede Anmeldeinformation und Region. -
-disableTelemetry
: Wenn dies angegeben ist, sendet DynamoDB Local keine Telemetrie. -
-version
— Druckt die lokale Version von DynamoDB.
Festlegen des lokalen Endpunkts
Standardmäßig verwenden die Tools AWS SDKs und Endpunkte für den Amazon DynamoDB DynamoDB-Webservice. Um die Tools SDKs und mit der herunterladbaren Version von DynamoDB zu verwenden, müssen Sie den lokalen Endpunkt angeben:
http://localhost:8000
AWS Command Line Interface
Sie können die AWS Command Line Interface (AWS CLI) verwenden, um mit herunterladbarem DynamoDB zu interagieren.
Verwenden Sie den --endpoint-url
-Parameter , um auf die lokal ausgeführte DynamoDB-Version zuzugreifen. Im Folgenden finden Sie ein Beispiel für die Verwendung von AWS CLI , um die Tabellen in DynamoDB auf Ihrem Computer aufzulisten.
aws dynamodb list-tables
--endpoint-url http://localhost:8000
Anmerkung
Die herunterladbare Version von DynamoDB AWS CLI kann nicht als Standardendpunkt verwendet werden. Daher müssen Sie --endpoint-url
bei jedem AWS CLI Befehl angeben.
AWS SDKs
Die Art und Weise, wie Sie einen Endpunkt angeben, hängt von der Programmiersprache und AWS SDK der verwendeten Programmiersprache ab. In den folgenden Abschnitten wird die entsprechende Vorgehensweise beschrieben:
-
Java: AWS Region und Endpunkt festlegen(DynamoDB local unterstützt die AWS SDK für Java V1 und V2)
-
CodeSamples.Java. RegionAndEndpoint. NET: AWS Region und Endpunkt festlegen
Unterschiede zwischen der herunterladbaren Version von DynamoDB und dem DynamoDB-Webservice
Die herunterladbare Version von DynamoDB ist nur für Zwecke der Anwendungsentwicklung und Tests vorgesehen. Der DynamoDB-Webservice hingegen ist ein verwalteter Service mit Skalierbarkeits-, Verfügbarkeits- und Haltbarkeitsfunktionen, die ideal für den Einsatz in der Produktion geeignet sind.
Die herunterladbare Version von DynamoDB unterscheidet sich folgendermaßen vom Webservice:
-
AWS-Regionen und distinct AWS-Konten werden auf Client-Ebene nicht unterstützt.
-
Einstellungen für den bereitgestellten Durchsatz werden in der herunterladbaren Version von DynamoDB ignoriert, auch wenn die
CreateTable
-Operation diese benötigt. FürCreateTable
können Sie beliebige Zahlen für den bereitgestellten Lese- und Schreibdurchsatz angeben, auch wenn diese Zahlen nicht verwendet werden. Sie könnenUpdateTable
beliebig oft pro Tag aufrufen. Alle Änderungen an Werten des bereitgestellten Durchsatzes werden jedoch ignoriert. -
Scan
-Operationen werden sequenziell durchgeführt. Parallele Scans werden nicht unterstützt. Die ParameterSegment
undTotalSegments
derScan
-Operation werden ignoriert. -
Die Geschwindigkeit von Lese- und Schreibvorgängen mit Tabellendaten ist nur durch die Geschwindigkeit Ihres Computers begrenzt.
CreateTable
UpdateTable
, undDeleteTable
Operationen werden sofort ausgeführt, und der Tabellenstatus ist immerACTIVE.UpdateTable
Operationen, die nur die bereitgestellten Durchsatzeinstellungen für Tabellen oder globale Sekundärindizes ändern, werden sofort ausgeführt. Wenn bei einemUpdateTable
Vorgang globale Sekundärindizes erstellt oder gelöscht werden, durchlaufen diese Indizes den normalen Status (wie CREATING bzw.)DELETING, bevor sie zu einem Status werden. ACTIVE Die Tabelle bleibt ACTIVE während dieser Zeit bestehen. -
Leseoperationen sind Eventually Consistent. Aufgrund der Geschwindigkeit, mit der DynamoDB auf Ihrem Computer ausgeführt wird, sind die meisten Lesevorgänge allerdings tatsächlich vom Typ „Strongly Consistent”.
-
Elementauflistungsmetriken und Elementauflistungsgrößen werden nicht nachverfolgt. In Operationsantworten werden anstelle der Elementauflistungsmetriken Nullen zurückgegeben.
-
In DynamoDB gibt es für Daten, die pro Ergebnissatz zurückgegeben werden, ein Limit von 1 MB. Sowohl der DynamoDB-Webservice als auch die herunterladbare Version setzen dieses Limit durch. Beim Abfragen eines Indexes berechnet der DynamoDB-Service jedoch nur die Größe des projizierten Schlüssels und der Attribute. Im Gegensatz dazu berechnet die herunterladbare Version von DynamoDB die Größe des gesamten Elements.
-
Bei der Verwendung von DynamoDB Streams kann die Rate, mit der Shards erstellt werden, abweichen. Im DynamoDB-Webservice wird die Shard-Erstellung teilweise von Aktivitäten der Tabellenpartition beeinflusst. Wenn Sie DynamoDB lokal ausführen, gibt es keine Tabellenpartitionierung. In beiden Fällen sind Shards flüchtig, sodass Ihre Anwendung nicht vom Shard-Verhalten abhängt.
-
TransactionConflictExceptions
werden nicht von herunterladbarem DynamoDB für Transaktionen ausgelöst. APIs Wir empfehlen die Verwendung eines Java-Mocking-Frameworks für die Simulation vonTransactionConflictExceptions
im DynamoDB-Handler, um zu prüfen, wie Ihre Anwendung auf miteinander in Konflikt stehende Transaktionen reagiert. -
Im DynamoDB-Webdienst wird zwischen Groß- und Kleinschreibung unterschieden, unabhängig davon, ob auf Tabellennamen über die AWS CLI Konsole oder über zugegriffen wird. Eine Tabelle mit dem Namen
Authors
und eine mit dem Namenauthors
können als separate Tabellen vorhanden sein. In der Downloadversion muss bei Tabellennamen die Groß-/Kleinschreibung beachtet werden. Ein Versuch, diese beiden Tabellen zu erstellen, würde einen Fehler verursachen. -
Tagging wird in der herunterladbaren Version von DynamoDB nicht unterstützt.
-
Die herunterladbare Version von DynamoDB ignoriert den Limit-Parameter in. ExecuteStatement