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.
Einschränkungen in Amazon DynamoDB
In diesem Abschnitt werden die aktuellen Einschränkungen – früher als Grenzwerte bezeichnet – in Amazon DynamoDB beschrieben.
Themen
Lese-/Schreibkapazitätsmodus
Sie können Tabellen innerhalb eines fortlaufenden 24-stündigen Zeitfensters bis zu viermal vom Modus mit bereitgestellter Kapazität auf den On-Demand-Modus umstellen. Sie können Tabellen jederzeit vom On-Demand-Modus auf den Modus mit bereitgestellter Kapazität umstellen.
Weitere Informationen zum Wechseln zwischen Lese- und Schreibkapazitätsmodus finden Sie unter Überlegungen beim Umstellen der Kapazitätsmodi in DynamoDB.
Kapazitätseinheitsgrößen (für Tabellen mit bereitgestellter Kapazität)
Eine Lesekapazitätseinheit entspricht einem Strongly-Consistent-Lesevorgang pro Sekunde oder zwei Eventually-Consistent-Lesevorgängen pro Sekunde für Elemente mit einer Größe von bis zu 4 KB.
Eine Schreibkapazitätseinheit entspricht einem Schreibvorgang pro Sekunde für Elemente mit einer Größe von bis zu 1 KB.
Transactional-Leseanforderungen benötigen zwei Lesekapazitätseinheiten, um einen Lesevorgang pro Sekunde für Elemente mit einer Größe bis zu 4 KB durchzuführen.
Transaktionelle Schreibforderungen benötigen zwei Schreibkapazitätseinheiten, um einen Schreibvorgang pro Sekunde für Elemente mit einer Größe bis zu 1 KB durchzuführen.
Anforderungseinheitengrößen (für On-Demand-Tabellen)
Eine Leseanforderungseinheit entspricht einem strikt konsistenten Lesevorgang pro Sekunde oder zwei letztendlich konsistenten Lesevorgängen pro Sekunde für Elemente mit einer Größe von bis zu 4 KB.
Eine Schreibanforderungseinheit entspricht einem Schreibvorgang pro Sekunde für Elemente mit einer Größe von bis zu 1 KB.
Transaktionale Leseanforderungen benötigen zwei Leseanforderungseinheiten, um einen Lesevorgang pro Sekunde für Elemente mit einer Größe bis zu 4 KB durchführen zu können.
Transaktionale Schreibanforderungen benötigen zwei Schreibanforderungseinheiten, um einen Schreibvorgang pro Sekunde für Elemente mit einer Größe bis zu 1 KB durchführen zu können.
Sekundäre Indizes
Projizierte sekundäre Indexattribute pro Tabelle
Sie können insgesamt bis zu 100 Attribute in alle lokalen und globalen sekundären Indizes einer Tabelle projizieren. Dies gilt nur für vom Benutzer angegebene, projizierte Attribute.
Wenn Sie in einer CreateTable-Operation für ProjectionType von INCLUDE angeben, darf die Gesamtanzahl von in NonKeyAttributes angegebenen Attributen, die sich aus der Summe aller sekundären Indizes ergibt, 100 nicht überschreiten. Wenn Sie denselben Attributnamen in zwei verschiedene Indizes projizieren, werden beim Ermitteln der Gesamtanzahl zwei unterschiedliche Attribute gezählt.
Dieses Limit gilt nicht für sekundäre Indizes mit dem ProjectionType KEYS_ONLY oder ALL.
Partitions- und Sortierschlüssel
Partitionsschlüssellänge
Die Mindestlänge eines Partitionsschlüsselwerts beträgt 1 Byte. Die maximale Länge beträgt 2 048 Byte.
Partitionsschlüsselwerte
Es gibt praktisch keine Einschränkung in Bezug auf die Anzahl von eindeutigen Partitionsschlüsselwerten, weder für Tabellen noch für sekundäre Indizes.
Sortierschlüssellänge
Die Mindestlänge eines Sortierschlüsselwerts beträgt 1 Byte. Die maximale Länge beträgt 1 024 Byte.
Sortierschlüsselwerte
Im Prinzip gibt es praktisch keine Einschränkung in Bezug auf die Anzahl von eindeutigen Sortierschlüsselwerten pro Partitionsschlüsselwert.
Eine Ausnahme bilden Tabellen mit sekundären Indizes. Eine Elementauflistung ist ein Satz von Elementen, die als Partitionsschlüsselattribut den gleichen Wert haben. In einem globalen sekundären Index ist die Elementauflistung unabhängig von der Basistabelle (und kann ein anderes Partitionsschlüsselattribut haben). In einem lokalen sekundären Index befindet sich die indizierte Ansicht jedoch in derselben Partition (Co-Location) wie das Element in der Tabelle und verwendet dasselbe Partitionsschlüsselattribut. Aufgrund dieser Lokalität kann die Elementauflistung nicht auf mehrere Partitionen verteilt werden, wenn eine Tabelle über eine oder mehrere LSIs verfügt.
Bei einer Tabelle mit einem oder mehreren LSIs dürfen Elementauflistungen eine Größe von 10 GB nicht überschreiten. Dies schließt alle Basistabellenelemente und alle projizierten LSI-Ansichten ein, die denselben Wert des Partitionsschlüsselattributs haben. 10 GB ist die maximale Größe einer Partition. Detailliertere Informationen erhalten Sie unter Größenlimit der Elementauflistung.
Benennungsregeln
Tabellennamen und sekundäre Indexnamen
Namen für Tabellen und sekundäre Indizes müssen mindestens 3 Zeichen und dürfen höchstens 255 Zeichen lang sein. Es sind die folgenden Zeichen zulässig:
-
A-Z -
a-z -
0-9 -
_(Unterstrich) -
-(Bindestrich) -
.(Punkt)
Attributnamen
Im Allgemeinen muss ein Attributname mindestens ein Zeichen lang sein und darf nicht größer als 64 KB sein.
Dabei gibt es die folgenden Ausnahmen. Diese Attributnamen dürfen maximal 255 Zeichen lang sein:
-
Partitionsschlüsselnamen des Sekundärindexes
-
Sortierschlüsselnamen des Sekundärindexes
-
Die Namen aller vom Benutzer angegebenen, projizierten Attribute (gilt nur für lokale sekundäre Indizes). Wenn Sie in einer
CreateTable-Operation denProjectionTypeINCLUDEangeben, sind die Namen der Attribute des ParametersNonKeyAttributeslängenbeschränkt. Die ProjektionstypenKEYS_ONLYundALLsind nicht betroffen.
Diese Attributnamen müssen mit UTF-8 kodiert werden und die Gesamtgröße der einzelnen Namen (nach der Kodierung) darf nicht größer als 255 Byte sein.
Datentypen
Zeichenfolge
Die Länge einer Zeichenfolge wird durch die maximale Elementgröße 400 KB beschränkt.
Die Zeichenfolgen sind Unicode mit binärer UTF-8-Kodierung. Da UTF-8 eine Kodierung mit variabler Breite ist, bestimmt DynamoDB die Länge einer Zeichenfolge unter Verwendung der UTF-8-Bytes.
Anzahl
Eine Zahl kann bis zu 38 Nachkommastellen besitzen und positiv, negativ oder null sein.
-
Positiver Bereich:
1E-130bis9.9999999999999999999999999999999999999E+125 -
Negativer Bereich:
-9.9999999999999999999999999999999999999E+125bis-1E-130
DynamoDB verwendet JSON-Zeichenfolgen, um Zahlendaten in Anfragen und Antworten darzustellen. Weitere Informationen finden Sie unter DynamoDB Low-Level-API.
Wenn die Zahlengenauigkeit wichtig ist, sollten Sie Zahlen mithilfe von Zeichenfolgen, die Sie aus einem Number-Datentyp konvertieren, an DynamoDB übergeben.
Binär
Die Länge eines binären Werts wird durch die maximale Elementgröße 400 KB beschränkt.
Anwendungen, die binäre Attribute verwenden, müssen die Daten vor dem Senden an DynamoDB im base64-Format kodieren. Nach dem Empfang der Daten dekodiert DynamoDB sie in ein nicht signiertes Byte-Array und verwendet dieses Array für die Länge der Attribute.
Items
Elementgröße
Die maximale Elementgröße in DynamoDB beträgt 400 KB. Darin inbegriffen sind die binäre Länge (UTF-8-Länge) des Attributnamens und die Länge des Attributwerts (ebenfalls binäre Länge). Der Attributname wird bei der Größenbeschränkung mit eingerechnet.
Betrachten wir ein Element mit zwei Attributen als Beispiel: ein Attribut mit dem Namen „Shirtfarbe“ und dem Wert „R“ und ein weiteres Attribut mit dem Namen „Shirtgröße“ und dem Wert „M“. Die Gesamtgröße dieses Elements ist 23 Byte.
Elementgröße für Tabellen mit lokalen sekundären Indizes
Für jeden lokalen sekundären Index in einer Tabelle gilt ein Limit von 400 KB im Hinblick auf die Summe folgender Werte:
-
Die Größe der Daten eines Elements in der Tabelle.
-
Die Größe der entsprechenden Einträge (einschließlich der Schlüsselwerte und projizierten Attribute) in allen lokalen sekundären Indizes.
Attribute
Attribut-Namen-Wert-Paare pro Element
Die Gesamtgröße von Attributen pro Element muss der maximalen DynamoDB-Elementgröße (400 KB) entsprechen.
Anzahl der Werte in einer Liste, einer Zuordnung oder einem Satz
Es gibt keine Beschränkungen in Bezug auf die Anzahl der Werte in einer Liste, einer Zuordnung oder einem Satz, solange das Element, das die Werte enthält, das Limit der Elementgröße von 400 KB einhält.
Attributwerte
Leere Zeichenfolgen- und Binär-Attributwerte sind zulässig, wenn das Attribut nicht als Schlüsselattribut für eine Tabelle oder einen Index verwendet wird. Leere Zeichenfolgen- und Binärwerte sind innerhalb der Mengen, Listen und Zuordnungen zulässig. Ein Attributwert kann kein leerer Satz sein (Zeichenfolgensatz, Zahlensatz und Binärzahlensatz). Leere Listen und Zuordnungen sind jedoch zulässig.
Verschachtelte Attributtiefe
DynamoDB unterstützt bis zu 32 Ebenen verschachtelter Attribute.
Ausdrucksparameter
Ausdrucksparameter umfassen ProjectionExpression, ConditionExpression, UpdateExpression und FilterExpression.
Länge
Die maximale Länge der Ausdruckszeichenfolge ist 4 KB. Die Größe von ConditionExpression a=b beträgt z. B. 3 Byte.
Die maximale Länge jedes einzelnen Ausdrucksattributnamens oder Ausdrucksattributwerts beträgt 255 Byte. #name ist beispielsweise 5 Byte lang; :val 4 Byte.
Die maximale Länge aller Substitutionsvariablen in einem Ausdruck beträgt 2 MB. Dies ist die Summe der Längen aller ExpressionAttributeNames und ExpressionAttributeValues.
Operatoren und Operanden
Die maximale Anzahl von in UpdateExpression zulässigen Operatoren oder Funktionen ist 300. Der Ausdruck UpdateExpression SET a = :val1 + :val2 + :val3 enthält z. B. zwei „+“-Operatoren.
Die maximale Anzahl von Operanden für den Vergleichsoperator IN ist 100.
Reservierte Wörter
DynamoDB verhindert nicht, dass Namen verwendet werden, die mit reservierten Wörtern in Konflikt stehen. (Eine vollständige Liste finden Sie unter Reservierte Wörter in DynamoDB.)
Wenn Sie jedoch ein reserviertes Wort in einem Ausdrucksparameter verwenden, müssen Sie auch ExpressionAttributeNames angeben. Weitere Informationen finden Sie unter Ausdrucksattributnamen (Aliasse) in DynamoDB.
DynamoDB-Transaktionen
Für transaktionale DynamoDB-API-Operationen gelten die folgenden Einschränkungen:
-
Eine Transaktion darf nicht mehr als 100 eindeutige Elemente enthalten.
-
Eine Transaktion darf nicht mehr als 4 MB Daten enthalten.
-
Zwei Aktionen gleichzeitig dürfen nicht auf dasselbe Element in der derselben Tabelle einwirken. Beispielsweise können
ConditionCheckundUpdatein einer Transaktion nicht beide auf dasselbe Element abzielen. -
Eine Transaktion kann nicht auf Tabellen in mehr als einem AWS-Konto oder mehr als einer -Region einwirken.
-
Transaktionale Operationen umfassen ACID (Atomizität, Konsistenz, Isolierung und Zuverlässigkeit) nur in der AWS-Region, in der die Schreiboperation ursprünglich durchgeführt wurde. Regionsübergreifende Transaktionen werden in globalen Tabellen nicht unterstützt. Angenommen, Sie haben eine globale Tabelle mit Replikaten in den Regionen USA Ost (Ohio) und USA West (Oregon) und Sie führen einen
TransactWriteItems-Vorgang in der Region USA Ost (Nord-Virginia) aus. In diesem Fall können sind möglicherweise teilweise abgeschlossene Transaktionen in der Region USA West (Oregon) zu beobachten, während Änderungen repliziert werden. Die Änderungen werden erst dann in die anderen Regionen repliziert, nachdem sie in der Quellregion in die Datenbank eingetragen wurden.
DynamoDB Streams
Gleichzeitige Leser eines Shard in DynamoDB Streams
Für Einzelregionstabellen, bei denen es sich nicht um globale Tabellen handelt, können Sie bis zu zwei Prozesse entwerfen, die gleichzeitig aus demselben DynamoDB-Streams-Shard lesen. Eine Überschreitung dieses Grenzwerts kann zu einer Anforderungsdrosselung führen. Für globale Tabellen empfehlen wir, die Anzahl der gleichzeitigen Lesevorgänge auf einen zu beschränken, um eine Anforderungsdrosselung zu vermeiden.
DynamoDB Accelerator (DAX).
AWS-Verfügbarkeit in Regionen
Eine Liste der AWS-Regionen, in denen DAX verfügbar ist, finden Sie unter DynamoDB Accelerator (DAX) in der Allgemeine AWS-Referenz.
Knoten
Ein DAX-Cluster besteht aus genau einem Primärknoten und zwischen null und zehn Lesereplikat-Knoten.
Die Gesamtanzahl von Knoten (pro AWS-Konto) dürfen in einer einzigen AWS-Region 50 nicht überschreiten.
Parametergruppen
Sie können bis zu 20 DAX-Parametergruppen pro Region erstellen.
Subnetzgruppen
Sie können bis zu 50 DAX-Subnetzgruppen pro Region erstellen.
Innerhalb einer Subnetzgruppe können Sie bis zu 20 Subnetze definieren.
Wichtig
Ein DAX-Cluster unterstützt maximal 500 DynamoDB-Tabellen. Wenn Sie mehr als 500 DynamoDB-Tabellen verwenden, kann es bei Ihrem Cluster zu einer Verschlechterung der Verfügbarkeit und Leistung kommen.
API-spezifische Einschränkungen
CreateTable/UpdateTable/DeleteTable/PutResourcePolicy/DeleteResourcePolicy-
Im Allgemeinen können bis zu 500 CreateTable-, UpdateTable-, DeleteTable-, PutResourcePolicy- und DeleteResourcePolicy-Anforderungen gleichzeitig in beliebiger Kombination ausgeführt werden. Folglich darf die Gesamtanzahl von Tabellen im Status
CREATING,UPDATINGoderDELETINGnicht mehr als 500 betragen.Sie können pro Sekunde bis zu 2 500 Anfragen veränderbarer Steuerebenen-API-Anfragen (
CreateTable,DeleteTable,UpdateTable,PutResourcePolicyundDeleteResourcePolicy) in einer Tabellengruppe senden. FürPutResourcePolicy- undDeleteResourcePolicy-Anforderungen gelten jedoch niedrigere individuelle Grenzwerte. Weitere Informationen finden Sie in den folgenden Kontingentdetails fürPutResourcePolicyundDeleteResourcePolicy.CreateTable- undPutResourcePolicy-Anforderungen, die eine ressourcenbasierte Richtlinie beinhalten, zählen als zwei zusätzliche Anfragen pro KB der Richtlinie. EinePutResourcePolicy- oderCreateTable-Anforderung mit einer Richtliniengröße von 5 KB wird beispielsweise als 11 Anforderungen gezählt. 1 für dieCreateTable-Anforderung und 10 für die ressourcenbasierte Richtlinie (2 x 5 KB). Entsprechend wird eine Richtlinie mit einer Größe von 20 KB als 41 Anforderungen gezählt: 1 für dieCreateTable-Anforderung und 40 für die ressourcenbasierte Richtlinie (2 x 20 KB).PutResourcePolicy-
Sie können bis zu 25
PutResourcePolicy-API-Anforderungen pro Sekunde für eine Gruppe von Tabellen senden. Nach einer erfolgreichen Anforderung für eine einzelne Tabelle werden in den folgenden 15 Sekunden keine neuenPutResourcePolicy-Anforderungen unterstützt.Ein ressourcenbasiertes Richtliniendokument kann maximal 20 KB groß sein. Leerzeichen werden in DynamoDB beim Berechnen der Richtliniengröße in Bezug auf diesen Limit nicht mitgezählt.
DeleteResourcePolicy-
Sie können bis zu 50
DeleteResourcePolicy-API-Anforderungen pro Sekunde für eine Gruppe von Tabellen senden. Nach einer erfolgreichenPutResourcePolicy-Anforderung für eine einzelne Tabelle werden in den folgenden 15 Sekunden keine neuenDeleteResourcePolicy-Anforderungen unterstützt.
BatchGetItem-
Eine einzelne
BatchGetItem-Operation kann maximal 100 Elemente abrufen. Die Gesamtgröße aller abgerufenen Elemente darf 16 MB nicht überschreiten.
BatchWriteItem-
Eine einzelne
BatchWriteItem-Operation kann bis zu 25PutItem- oderDeleteItem-Anforderungen umfassen. Die Gesamtgröße aller geschriebenen Elemente darf 16 MB nicht überschreiten.
DescribeStream-
Sie können
DescribeStreammaximal 10 Mal pro Sekunde aufrufen.
DescribeTableReplicaAutoScaling-
Die Methode
DescribeTableReplicaAutoScalingunterstützt nur zehn Anforderungen pro Sekunde.
DescribeLimits-
DescribeLimitssollte nur gelegentlich aufgerufen werden. Sie müssen mit Drosselungsfehlern rechnen, wenn Sie die Anforderung mehr als einmal pro Minute aufrufen.
DescribeContributorInsights/ListContributorInsights/UpdateContributorInsights-
DescribeContributorInsights,ListContributorInsightsundUpdateContributorInsightssollten nur gelegentlich aufgerufen werden. DynamoDB unterstützt bis zu fünf Anforderungen pro Sekunde für jede dieser APIs.
DescribeTable/ListTables/GetResourcePolicy-
Sie können pro Sekunde bis zu 2 500 Anforderungen an schreibgeschützten (
DescribeTable,ListTablesundGetResourcePolicy) Steuerebenen-API-Anforderungen in beliebiger Kombination senden. Für dieGetResourcePolicy-API gilt ein niedrigeres individuelles Limit von 100 Anforderungen pro Sekunde.
DescribeTimeToLive-
Die
DescribeTimeToLive-Operation ist auf 10 Leseanforderungseinheiten pro Sekunde gedrosselt. Wenn Sie diese Grenze überschreiten, gibt DynamoDB einenThrottlingException-Fehler zurück.
Query-
Der Ergebnissatz einer
Queryist auf 1 MB pro Aufruf beschränkt. Sie können denLastEvaluatedKeyvon der Query-Antwort verwenden, um weitere Ergebnisse abzurufen.
Scan-
Der Ergebnissatz einer
Scanist auf 1 MB pro Aufruf beschränkt. Sie können denLastEvaluatedKeyvon der Scan-Antwort verwenden, um weitere Ergebnisse abzurufen.
UpdateKinesisStreamingDestination-
Bei der Ausführung von
UpdateKinesisStreamingDestination-Operationen können Sie innerhalb von 24 Stunden maximal dreimal einen neuen Wert fürApproximateCreationDateTimePrecisionfestlegen.
UpdateTableReplicaAutoScaling-
Die Methode
UpdateTableReplicaAutoScalingunterstützt nur zehn Anforderungen pro Sekunde.
UpdateTableTimeToLive-
Die Methode
UpdateTableTimeToLiveunterstützt nur eine Anforderung zum Aktivieren oder Deaktivieren vonTime to Live (TTL)pro angegebener Tabelle und Stunde. Es kann bis zu einer Stunde dauern, bis diese Änderung vollständig verarbeitet ist. Alle zusätzlichenUpdateTimeToLive-Aufrufe für dieselbe Tabelle während dieser einen Stunde resultieren in einer ValidationException.
Ruhende DynamoDB-Verschlüsselung
Sie können bis zu viermal zwischen einem AWS-eigener Schlüssel, einem Von AWS verwalteter Schlüssel und einem kundenverwalteten Schlüssel wechseln, jederzeit pro 24–Stunden-Fenster, pro Tabelle und ab dem Zeitpunkt der Erstellung der Tabelle. Wenn in den vorhergehenden 6 Stunden kein Wechsel erfolgt ist, ist ein zusätzlicher Wechsel erlaubt. Dadurch wird die maximale Anzahl an Wechseln pro Tag faktisch auf 8 erhöht (4 Wechsel in den ersten 6 Stunden und ein weiterer Wechsel jeweils für alle folgenden Zeitfenster von 6 Stunden an einem Tag).
Sie können die Verschlüsselungsschlüssel so oft wie nötig ändern, um AWS-eigener Schlüssel zu verwenden, selbst wenn das obige Kontingent erschöpft ist.
Es gelten die folgenden Kontingente, sofern Sie keine höheren Werte beantragen. Informationen zum Anfordern einer Erhöhung des Servicekontingents finden Sie unter https://aws.amazon.com/support