

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 Tabellen und Daten in DynamoDB
<a name="WorkingWithTables"></a>

In diesem Abschnitt wird beschrieben, wie Sie die AWS Command Line Interface (AWS CLI) und die verwenden, AWS SDKs um Tabellen in Amazon DynamoDB zu erstellen, zu aktualisieren und zu löschen.

**Anmerkung**  
Sie können auch die entsprechenden Aufgaben mithilfe der AWS-Managementkonsole durchführen. Weitere Informationen finden Sie unter [Verwenden der Konsole](AccessingDynamoDB.md#ConsoleDynamoDB).

Außerdem erhalten Sie weitere Informationen zur Durchsatzkapazität mithilfe von DynamoDB-Auto-Scaling oder durch die manuelle Festlegung des bereitgestellten Durchsatzes.

**Topics**
+ [Grundlegende Operationen für DynamoDB-Tabellen](WorkingWithTables.Basics.md)
+ [Überlegungen bei der Auswahl einer Tabellenklasse in DynamoDB](WorkingWithTables.tableclasses.md)
+ [Hinzufügen von Tags und Labels zu Ressourcen in DynamoDB](Tagging.md)

# Grundlegende Operationen für DynamoDB-Tabellen
<a name="WorkingWithTables.Basics"></a>

Ähnlich wie andere Datenbanksysteme speichert Amazon DynamoDB Daten in Tabellen. Sie können Ihre Tabellen mit einigen grundlegenden Operationen verwalten.

**Topics**
+ [Erstellen einer Tabelle](#WorkingWithTables.Basics.CreateTable)
+ [Beschreiben einer Tabelle](#WorkingWithTables.Basics.DescribeTable)
+ [Aktualisieren einer Tabelle](#WorkingWithTables.Basics.UpdateTable)
+ [Löschen einer Tabelle](#WorkingWithTables.Basics.DeleteTable)
+ [Löschschutz verwenden](#WorkingWithTables.Basics.DeletionProtection)
+ [Auflisten von Tabellennamen](#WorkingWithTables.Basics.ListTables)
+ [Beschreiben der bereitgestellten Durchsatzkontingente](#WorkingWithTables.Basics.DescribeLimits)

## Erstellen einer Tabelle
<a name="WorkingWithTables.Basics.CreateTable"></a>

Verwenden Sie `CreateTable`, um eine Tabelle in Amazon DynamoDB zu erstellen. Zum Erstellen einer Tabelle müssen Sie folgende Informationen angeben:
+ **Tabellenname.** Der Name muss den Benennungsregeln von DynamoDB entsprechen und für das aktuelle AWS Konto und die Region eindeutig sein. So können Sie beispielsweise eine `People`-Tabelle in USA Ost (Nord-Virginia) und eine andere `People`-Tabelle in Europa (Irland) erstellen. Allerdings würden sich diese beiden Tabellen vollständig unterscheiden. Weitere Informationen finden Sie unter [Unterstützte Datentypen und Benennungsregeln in Amazon DynamoDB](HowItWorks.NamingRulesDataTypes.md).
+ **Primärschlüssel.** Der Primärschlüssel kann aus einem Attribut (Partitionsschlüssel) oder zwei Attributen (Partitionsschlüssel und Sortierschlüssel) bestehen. Sie müssen die Attributnamen, Datentypen und die Rolle der einzelnen Attribute angeben: `HASH` (für einen Partitionsschlüssel) und `RANGE` (für einen Sortierschlüssel). Weitere Informationen finden Sie unter [Primärschlüssel](HowItWorks.CoreComponents.md#HowItWorks.CoreComponents.PrimaryKey).
+ **Durchsatzeinstellungen (für bereitgestellte Tabellen).** Im Modus bereitgestellter Kapazität müssen Sie die Anfangseinstellungen für den Lese- und Schreibdurchsatz für die Tabelle angeben. Sie können diese Einstellungen später anpassen oder das DynamoDB-Auto-Scaling aktivieren, um die Einstellungen für Sie zu verwalten. Weitere Informationen erhalten Sie unter [DynamoDB – Modus mit bereitgestellter Kapazität](provisioned-capacity-mode.md) und [Automatische Verwaltung der Durchsatzkapazität mit DynamoDB-Auto-Scaling](AutoScaling.md).

### Beispiel 1: Erstellen einer On-Demand-Tabelle
<a name="create-payperrequest-example"></a>

So erstellen Sie dieselbe Tabelle `Music` im On-Demand-Modus

```
aws dynamodb create-table \
    --table-name Music \
    --attribute-definitions \
        AttributeName=Artist,AttributeType=S \
        AttributeName=SongTitle,AttributeType=S \
    --key-schema \
        AttributeName=Artist,KeyType=HASH \
        AttributeName=SongTitle,KeyType=RANGE \
    --billing-mode=PAY_PER_REQUEST
```

Die `CreateTable`-Operation gibt Metadaten für die Tabelle, wie unten gezeigt, zurück.

```
{
    "TableDescription": {
        "TableArn": "arn:aws:dynamodb:us-east-1:123456789012:table/Music",
        "AttributeDefinitions": [
            {
                "AttributeName": "Artist",
                "AttributeType": "S"
            },
            {
                "AttributeName": "SongTitle",
                "AttributeType": "S"
            }
        ],
        "ProvisionedThroughput": {
            "NumberOfDecreasesToday": 0,
            "WriteCapacityUnits": 0,
            "ReadCapacityUnits": 0
        },
        "TableSizeBytes": 0,
        "TableName": "Music",
        "BillingModeSummary": {
            "BillingMode": "PAY_PER_REQUEST"
        },
        "TableStatus": "CREATING",
        "TableId": "12345678-0123-4567-a123-abcdefghijkl",
        "KeySchema": [
            {
                "KeyType": "HASH",
                "AttributeName": "Artist"
            },
            {
                "KeyType": "RANGE",
                "AttributeName": "SongTitle"
            }
        ],
        "ItemCount": 0,
        "CreationDateTime": 1542397468.348
    }
}
```

**Wichtig**  
 Wenn `DescribeTable` für eine On-Demand-Tabelle aufgerufen wird, werden Lesekapazitätseinheiten und Schreibkapazitätseinheiten auf 0 eingestellt. 

### Beispiel 2: Erstellen einer Tabelle im Modus bereitgestellter Kapazität
<a name="create-provisioned-example"></a>

Das folgende AWS CLI Beispiel zeigt, wie eine Tabelle () erstellt wird. `Music` Der Primärschlüssel besteht aus `Artist` (Partitionsschlüssel) und `SongTitle` (Sortierschlüssel), die beide vom Datentyp `String` sind. Der maximale Durchsatz für diese Tabelle ist 10 Lesekapazitätseinheiten und 5 Schreibkapazitätseinheiten.

```
aws dynamodb create-table \
    --table-name Music \
    --attribute-definitions \
        AttributeName=Artist,AttributeType=S \
        AttributeName=SongTitle,AttributeType=S \
    --key-schema \
        AttributeName=Artist,KeyType=HASH \
        AttributeName=SongTitle,KeyType=RANGE \
    --provisioned-throughput \
        ReadCapacityUnits=10,WriteCapacityUnits=5
```

Die `CreateTable`-Operation gibt Metadaten für die Tabelle, wie unten gezeigt, zurück.

```
{
    "TableDescription": {
        "TableArn": "arn:aws:dynamodb:us-east-1:123456789012:table/Music",
        "AttributeDefinitions": [
            {
                "AttributeName": "Artist",
                "AttributeType": "S"
            },
            {
                "AttributeName": "SongTitle",
                "AttributeType": "S"
            }
        ],
        "ProvisionedThroughput": {
            "NumberOfDecreasesToday": 0,
            "WriteCapacityUnits": 5,
            "ReadCapacityUnits": 10
        },
        "TableSizeBytes": 0,
        "TableName": "Music",
        "TableStatus": "CREATING",
        "TableId": "12345678-0123-4567-a123-abcdefghijkl",
        "KeySchema": [
            {
                "KeyType": "HASH",
                "AttributeName": "Artist"
            },
            {
                "KeyType": "RANGE",
                "AttributeName": "SongTitle"
            }
        ],
        "ItemCount": 0,
        "CreationDateTime": 1542397215.37
    }
}
```

Das Element `TableStatus` gibt den aktuellen Status der Tabelle an (`CREATING`). Es kann eine Weile dauern die Tabelle zu erstellen, abhängig von den Werten die Sie für `ReadCapacityUnits` und `WriteCapacityUnits` angeben. Größere Werte für diese erfordern, dass DynamoDB der Tabelle mehr Ressourcen zuweist.

### Beispiel 3: Erstellen Sie eine Tabelle mit der Tabellenklasse DynamoDB Standard-Infrequent Access
<a name="create-infrequent-access-example"></a>

So erstellen Sie dieselbe `Music`-Tabelle mit der Tabellenklasse DynamoDB Standard-Infrequent Access.

```
aws dynamodb create-table \
    --table-name Music \
    --attribute-definitions \
        AttributeName=Artist,AttributeType=S \
        AttributeName=SongTitle,AttributeType=S \
    --key-schema \
        AttributeName=Artist,KeyType=HASH \
        AttributeName=SongTitle,KeyType=RANGE \
    --provisioned-throughput \
        ReadCapacityUnits=10,WriteCapacityUnits=5 \
    --table-class STANDARD_INFREQUENT_ACCESS
```

Die `CreateTable`-Operation gibt Metadaten für die Tabelle, wie unten gezeigt, zurück.

```
{
    "TableDescription": {
        "TableArn": "arn:aws:dynamodb:us-east-1:123456789012:table/Music",
        "AttributeDefinitions": [
            {
                "AttributeName": "Artist",
                "AttributeType": "S"
            },
            {
                "AttributeName": "SongTitle",
                "AttributeType": "S"
            }
        ],
        "ProvisionedThroughput": {
            "NumberOfDecreasesToday": 0,
            "WriteCapacityUnits": 5,
            "ReadCapacityUnits": 10
        },
        "TableClassSummary": {
            "LastUpdateDateTime": 1542397215.37,
            "TableClass": "STANDARD_INFREQUENT_ACCESS"
        },
        "TableSizeBytes": 0,
        "TableName": "Music",
        "TableStatus": "CREATING",
        "TableId": "12345678-0123-4567-a123-abcdefghijkl",
        "KeySchema": [
            {
                "KeyType": "HASH",
                "AttributeName": "Artist"
            },
            {
                "KeyType": "RANGE",
                "AttributeName": "SongTitle"
            }
        ],
        "ItemCount": 0,
        "CreationDateTime": 1542397215.37
    }
}
```

## Beschreiben einer Tabelle
<a name="WorkingWithTables.Basics.DescribeTable"></a>

Um Details über eine Tabelle anzuzeigen, verwenden Sie die `DescribeTable`-Operation. Sie müssen den Tabellennamen angeben. Die Ausgabe von `DescribeTable` erfolgt in demselben Format wie bei `CreateTable`. Sie enthält den Zeitstempel, mit dem die Tabelle erstellt wurde, ihr Schlüsselschema, ihre bereitgestellten Durchsatzeinstellungen, ihre geschätzte Größe und alle vorhandenen sekundären Indexe.

**Wichtig**  
 Wenn `DescribeTable` für eine On-Demand-Tabelle aufgerufen wird, werden Lesekapazitätseinheiten und Schreibkapazitätseinheiten auf 0 eingestellt. 

**Example**  

```
aws dynamodb describe-table --table-name Music
```

Die Tabelle ist einsatzbereit, wenn der `TableStatus` sich von `CREATING` in `ACTIVE` ändert.

**Anmerkung**  
Wenn Sie eine `DescribeTable`-Anforderung sofort nach der `CreateTable`-Anforderung ausgeben, kann DynamoDB möglicherweise einen Fehler (`ResourceNotFoundException`) zurückgeben. Der Grund hierfür ist, dass `DescribeTable` eine Eventually Consistent-Abfrage verwendet und dass die Metadaten für Ihre Tabelle zu diesem Zeitpunkt möglicherweise nicht verfügbar sein könnten. Warten Sie einige Sekunden und versuchen Sie dann die `DescribeTable`-Anforderung erneut.  
Für Abrechnungszwecke beinhalten Ihre DynamoDB-Speicherkosten einen Overhead pro Artikel von 100 Byte. (Weitere Informationen finden Sie unter [DynamoDB-Preise](https://aws.amazon.com/dynamodb/pricing/).) Diese zusätzlichen 100 Byte pro Element werden nicht in Kapazitätseinheitenberechnungen oder durch die `DescribeTable`-Operation verwendet. 

## Aktualisieren einer Tabelle
<a name="WorkingWithTables.Basics.UpdateTable"></a>

Die `UpdateTable`-Operation ermöglicht es Ihnen einen der folgenden Schritte ausführen:
+ Ändern Sie die bereitgestellten Durchsatzeinstellungen (für Tabellen im Modus bereitgestellter Kapazität).
+ Ändern Sie den read/write Kapazitätsmodus der Tabelle.
+ Bearbeiten Sie globale sekundäre Indizes für die Tabelle (siehe [Verwenden globaler sekundärer Indizes in DynamoDB](GSI.md)).
+ Aktivieren oder Deaktivieren von DynamoDB Streams für die Tabelle (siehe [Ändern Sie die Datenerfassung für DynamoDB Streams](Streams.md)).

**Example**  
Das folgende AWS CLI Beispiel zeigt, wie die Einstellungen für den bereitgestellten Durchsatz einer Tabelle geändert werden.  

```
aws dynamodb update-table --table-name Music \
    --provisioned-throughput ReadCapacityUnits=20,WriteCapacityUnits=10
```

**Anmerkung**  
Wenn Sie eine `UpdateTable`-Anforderung ausgeben, ändert sich der Tabellenstatus von `AVAILABLE` in `UPDATING`. Die Tabelle steht vollständig zur Verfügung, während sie `UPDATING`. Wenn dieser Vorgang abgeschlossen ist, ändert sich der Status der Tabelle von `UPDATING` in `AVAILABLE`.

**Example**  
Das folgende AWS CLI Beispiel zeigt, wie der read/write Kapazitätsmodus einer Tabelle in den On-Demand-Modus geändert wird.  

```
aws dynamodb update-table --table-name Music \
    --billing-mode PAY_PER_REQUEST
```

## Löschen einer Tabelle
<a name="WorkingWithTables.Basics.DeleteTable"></a>

Sie können eine ungenutzte Tabelle mit der `DeleteTable`-Operation entfernen. Das Löschen einer Tabelle ist ein unwiederbringlicher Vorgang. Informationen zum Löschen einer Tabelle mit der AWS-Managementkonsole finden Sie unter [Schritt 6: (Optional) Löschen der DynamoDB-Tabelle, um Ressourcen zu bereinigen](getting-started-step-6.md).

**Example**  
Das folgende AWS CLI Beispiel zeigt, wie eine Tabelle gelöscht wird.  

```
aws dynamodb delete-table --table-name Music
```

Wenn Sie eine `DeleteTable`-Anforderung ausgeben, ändert sich der Tabellenstatus von `ACTIVE` in `DELETING`. Es kann eine Weile dauern die Tabelle zu löschen, abhängig von den verwendeten Ressourcen (z. B. die in der Tabelle gespeicherten Daten und alle Streams oder Indizes der Tabelle).

Wenn die `DeleteTable`-Operation abschließt, ist die Tabelle in DynamoDB nicht mehr vorhanden.

## Löschschutz verwenden
<a name="WorkingWithTables.Basics.DeletionProtection"></a>

Mit der Löschschutz-Eigenschaft können Sie eine Tabelle vor dem versehentlichen Löschen schützen. Wenn Sie diese Eigenschaft für Tabellen aktivieren, können Sie sicherstellen, dass Tabellen nicht versehentlich während regulärer Tabellenverwaltungsvorgängen durch Ihre Administratoren gelöscht werden. Auf diese Weise können Sie Störungen des normalen Geschäftsbetriebs vermeiden.

 Der Tabelleneigentümer oder ein autorisierter Administrator steuert die Löschschutz-Eigenschaft für jede Tabelle. Die Löschschutz-Eigenschaft ist bei Tabellen standardmäßig deaktiviert. Dies umfasst globale Replikate und Tabellen, die aus Backups wiederhergestellt wurden. Wenn der Löschschutz für eine Tabelle deaktiviert ist, kann die Tabelle von allen Benutzern gelöscht werden, die durch eine Identity and Access Management (IAM)-Richtlinie autorisiert wurden. Wenn der Löschschutz für eine Tabelle aktiviert ist, kann die Tabelle von niemandem gelöscht werden. 

Wenn Sie diese Einstellung ändern möchten, rufen Sie **Zusätzliche Einstellungen** für die Tabelle auf, navigieren Sie zum Bereich **Löschschutz** und wählen Sie **Löschschutz aktivieren** aus. 

Die Löschschutz-Eigenschaft wird von der DynamoDB-Konsole, der API, CLI/SDK und CloudFormation unterstützt. Die API `CreateTable` unterstützt die Löschschutz-Eigenschaft während der Tabellenerstellung und die API `UpdateTable` unterstützt Änderungen an der Löschschutz-Eigenschaft für vorhandene Tabellen.

**Anmerkung**  
Wenn ein AWS Konto gelöscht wird, werden alle Daten dieses Kontos, einschließlich der Tabellen, weiterhin innerhalb von 90 Tagen gelöscht.
Wenn DynamoDB keinen Zugriff mehr auf einen kundenverwalteten Schlüssel hat, der zum Verschlüsseln einer Tabelle verwendet wurde, wird die Tabelle trotzdem archiviert. Bei der Archivierung wird ein Backup der Tabelle erstellt und das Original gelöscht.

## Auflisten von Tabellennamen
<a name="WorkingWithTables.Basics.ListTables"></a>

Die `ListTables` Operation gibt die Namen der DynamoDB-Tabellen für das AWS Girokonto und die Region zurück.

**Example**  
Das folgende AWS CLI Beispiel zeigt, wie die DynamoDB-Tabellennamen aufgelistet werden.  

```
aws dynamodb list-tables
```

## Beschreiben der bereitgestellten Durchsatzkontingente
<a name="WorkingWithTables.Basics.DescribeLimits"></a>

Der `DescribeLimits` Vorgang gibt die aktuellen Lese- und Schreibkapazitätskontingente für das aktuelle AWS Konto und die Region zurück.

**Example**  
Das folgende AWS CLI Beispiel zeigt, wie die aktuell bereitgestellten Durchsatzquoten beschrieben werden.  

```
aws dynamodb describe-limits
```
Die Ausgabe zeigt die oberen Kontingente der Lese- und Schreibkapazitätseinheiten für das aktuelle AWS Konto und die Region.

Weitere Informationen zu diesen Kontingenten und zum Anfordern einer Kontingenterhöhung finden Sie unter [Standardkontingente für den Durchsatz](ServiceQuotas.md#default-limits-throughput).

# Überlegungen bei der Auswahl einer Tabellenklasse in DynamoDB
<a name="WorkingWithTables.tableclasses"></a>

DynamoDB bietet zwei Tabellenklassen an, mit denen Sie Ihre Kosten optimieren können. Die DynamoDB-Standard-Tabellenklasse ist die Standardeinstellung und wird für die große Mehrheit der Workloads empfohlen. Die Tabellenklasse DynamoDB Standard-Infrequent Access (DynamoDB Standard-IA) ist für Tabellen optimiert, in denen Speicher die dominierenden Kosten sind. Zum Beispiel sind Tabellen, die selten aufgerufene Daten speichern, wie Anwendungsprotokolle, alte Social-Media-Posts, E-Commerce-Bestellhistorie und frühere Spielerrungenschaften, gute Kandidaten für die Standard-IA Tabellenklasse.

Jede DynamoDB-Tabelle ist einer Tabellenklasse zugeordnet. Alle der Tabelle zugeordneten sekundären Indizes verwenden dieselbe Tabellenklasse. Sie können Ihre Tabellenklasse beim Erstellen Ihrer Tabelle festlegen (standardmäßig DynamoDB Standard) und die Tabellenklasse einer vorhandenen Tabelle mithilfe der AWS CLI oder AWS des AWS-Managementkonsole SDK aktualisieren. DynamoDB unterstützt auch die Verwaltung Ihrer Tabellenklasse mithilfe von AWS CloudFormation Tabellen mit nur einer Region (Tabellen, die keine globalen Tabellen sind). Jede Tabellenklasse bietet unterschiedliche Preise für die Datenspeicherung sowie für Lese- und Schreibanfragen. Wenn Sie eine Tabellenklasse für Ihre Tabelle auswählen, müssen Sie Folgendes beachten:
+ Die DynamoDB Standard-Tabellenklasse bietet niedrigere Durchsatzkosten als DynamoDB Standard-IA und ist die kostengünstigste Option für Tabellen, bei denen der Durchsatz die dominierenden Kosten darstellt. 
+ Die DynamoDB Standard-IA Tabellenklasse bietet niedrigere Speicherkosten als DynamoDB Standard und ist die kostengünstigste Option für Tabellen, in denen der Speicher die dominierenden Kosten darstellt. Wenn der Speicher 50% der Durchsatzkosten (Lese- und Schreibvorgänge) einer Tabelle unter Verwendung der DynamoDB Standard-Tabellenklasse übersteigt, kann die DynamoDB Standard-IA Tabellenklasse Ihnen dabei helfen, Ihre Gesamttabellenkosten zu senken. 
+ DynamoDB-Standard-IA-Tabellen bieten die gleiche Leistung, Haltbarkeit und Verfügbarkeit wie DynamoDB-Standardtabellen. 
+ Der Wechsel zwischen den DynamoDB-Standard- und DynamoDB-Standard-IA Tabellenklassen erfordert keine Änderung Ihres Anwendungscodes. Sie verwenden dieselben DynamoDB APIs - und Service-Endpunkte, unabhängig von der Tabellenklasse, die Ihre Tabellen verwenden. 
+ DynamoDB-Standard-IA-Tabellen sind mit allen vorhandenen DynamoDB-Funktionen wie Auto Scaling, On-Demand-Modus time-to-live (TTL), On-Demand-Backups, point-in-time Recovery (PITR) und globalen Sekundärindizes kompatibel.

Die kostengünstigste Tabellenklasse für Ihre Tabelle hängt von den erwarteten Speicher- und Durchsatznutzungsmustern Ihrer Tabelle ab. Mit Kosten- und Nutzungsberichten und dem Cost Explorer können Sie sich die historischen Speicher- und AWS Durchsatzkosten und die AWS Nutzung Ihrer Tabelle ansehen. Verwenden Sie diese historischen Daten, um die kostengünstigste Tabellenklasse für Ihre Tabelle zu ermitteln. Weitere Informationen zur Verwendung von AWS Kosten- und Nutzungsberichten und dem AWS Cost Explorer finden Sie in der [Dokumentation zu AWS Billing and Cost Management](https://docs.aws.amazon.com/account-billing/index.html). Siehe [Amazon-DynamoDB Preise](https://aws.amazon.com/dynamodb/pricing/on-demand/) für weitere Informationen zu Tabellenklassenpreisen.

**Anmerkung**  
Eine Tabellenklassenaktualisierung ist ein Hintergrundprozess. Sie können während einer Tabellenklassenktualisierung weiterhin normal auf Ihre Tabelle zugreifen. Die Zeit zum Aktualisieren Ihrer Tabellenklasse hängt von Ihrem Tabellenverkehr, der Speichergröße und anderen verbundenen Variablen ab. In einem zurückliegenden Zeitraum von 30 Tagen sind nicht mehr als zwei Tabellenklassenaktualisierungen in Ihrer Tabelle zulässig.

# Hinzufügen von Tags und Labels zu Ressourcen in DynamoDB
<a name="Tagging"></a>

Sie können Amazon-DynamoDB-Ressourcen mit *Tags* markieren. Tags helfen Ihnen, Ihre Ressourcen auf unterschiedliche Weise zu kategorisieren, z. B. nach Zweck, Besitzer, Umgebung oder anderen Kriterien. Tags können Sie bei Folgendem unterstützen:
+ Eine Ressource basierend auf den Tags, die Sie ihr zugeordnet haben, schnell zu erkennen.
+ Sehen Sie sich AWS Rechnungen an, aufgeschlüsselt nach Stichwörtern.
**Anmerkung**  
Alle lokalen sekundären Indizes (LSI) und globalen sekundären Indizes (GSI) im Zusammenhang mit markierten Tabellen werden automatisch mit denselben Tags gekennzeichnet. Derzeit kann die Nutzung des DynamoDB-Streams nicht markiert werden.

Tagging wird von AWS Diensten wie Amazon EC2, Amazon S3, DynamoDB und mehr unterstützt. Effizientes Tagging kann Kosteneinblicke bereitstellen, mit denen Sie Berichte für Services erstellen können, die ein spezifisches Tag aufweisen.

Gehen Sie wie folgt vor, um sich mit dem Taggen vertraut zu machen:

1. Lesen Sie [Markierungseinschränkungen in DynamoDB](#TaggingRestrictions).

1. Tags mit [Markieren von Ressourcen in DynamoDB](Tagging.Operations.md) erstellen.

1. Verwenden Sie diese Option[Verwenden von DynamoDB-Tags zum Erstellen von Kostenzuordnungsberichten](#CostAllocationReports), um Ihre AWS Kosten pro aktivem Tag nachzuverfolgen.

Schließlich wird empfohlen, optimale Tagging-Strategien zu befolgen. Weitere Informationen finden Sie unter [AWS -Markierungsstrategien](https://d0.awsstatic.com/aws-answers/AWS_Tagging_Strategies.pdf).

## Markierungseinschränkungen in DynamoDB
<a name="TaggingRestrictions"></a>

 Jedes Tag besteht aus einem Schlüssel und einem Wert, die Sie beide selbst definieren. Beachten Sie die folgenden Einschränkungen: 
+  Jede DynamoDB-Tabelle kann nur über ein Tag mit demselben Schlüssel verfügen. Wenn Sie versuchen, ein vorhandenes Tag (derselbe Schlüssel) hinzuzufügen, wird der vorhandene Tag-Wert auf den neuen Wert aktualisiert. 
+  Bei Tag-Schlüsseln und -Werten muss die Groß- und Kleinschreibung beachtet werden. 
+  Die maximale Schlüssellänge beträgt 128 Unicode-Zeichen. 
+ Die maximale Wertlänge beträgt 256 Unicode-Zeichen. 
+  Namen dürfen Buchstaben, Leerzeichen und Zahlen sowie die folgenden Sonderzeichen enthalten: `+ - = . _ : /` 
+  Die maximale Anzahl an Tags pro Ressource beträgt 50.
+ Die maximale Größe, die für alle Tags in einer Tabelle unterstützt wird, beträgt 10 KB.
+ AWS-zugewiesenen Tagnamen und -werten wird automatisch das `aws:` Präfix zugewiesen, das Sie nicht zuweisen können. AWS-zugewiesene Tagnamen werden nicht auf das Tag-Limit von 50 oder das maximale Größenlimit von 10 KB angerechnet. Von Benutzern zugewiesene Tag-Namen haben das Präfix `user:` im Kostenzuordnungsbericht. 
+  Sie können die Anwendung eines Tags nicht rückdatieren. 

# Markieren von Ressourcen in DynamoDB
<a name="Tagging.Operations"></a>

Sie können die Amazon DynamoDB DynamoDB-Konsole oder die AWS Command Line Interface (AWS CLI) verwenden, um Tags hinzuzufügen, aufzulisten, zu bearbeiten oder zu löschen. Anschließend können Sie diese benutzerdefinierten Tags aktivieren, damit sie in der AWS Fakturierung und Kostenmanagement -Konsole zur Nachverfolgung der Kostenzuordnung erscheinen. Weitere Informationen finden Sie unter [Verwenden von DynamoDB-Tags zum Erstellen von Kostenzuordnungsberichten](Tagging.md#CostAllocationReports). 

 Für die Massenbearbeitung können Sie auch den Tag-Editor in der AWS-Managementkonsole verwenden. Weitere Informationen finden Sie unter [Arbeiten mit dem Tag Editor](https://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/tag-editor.html).

 Informationen zum Verwenden der DynamoDB-API stattdessen finden Sie unter den folgenden Operationen in der [Amazon-DynamoDB-API-Referenz](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/):
+ [TagResource](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_TagResource.html)
+ [UntagResource](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UntagResource.html)
+ [ListTagsOfResource](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ListTagsOfResource.html)

**Topics**
+ [Festlegen von Berechtigungen zum Filtern nach Tags](#Tagging.Operations.permissions)
+ [Hinzufügen von Tags zu neuen oder vorhandenen Tabellen (AWS-Managementkonsole)](#Tagging.Operations.using-console)
+ [Hinzufügen von Tags zu neuen oder vorhandenen Tabellen (AWS CLI)](#Tagging.Operations.using-cli)

## Festlegen von Berechtigungen zum Filtern nach Tags
<a name="Tagging.Operations.permissions"></a>

Wenn Sie Tags zum Filtern Ihrer Tabellenliste in der DynamoDB-Konsole verwenden möchten, stellen Sie sicher, dass die Richtlinien der Benutzer Zugriff auf die folgenden Vorgänge enthalten:
+ `tag:GetTagKeys`
+ `tag:GetTagValues`

Sie können auf diese Vorgänge zugreifen, indem Sie eine neue IAM-Richtlinie an Ihren Benutzer anhängen. Führen Sie dazu die folgenden Schritte aus.

1. Wechseln Sie mit einem Admin-Benutzer zur [IAM-Konsole](https://console.aws.amazon.com/iam/).

1. Wählen Sie im linken Navigationsbereich „Richtlinien“ aus

1. Wählen Sie Richtlinie erstellen.

1. Fügen Sie das folgende Richtliniendokument in den JSON-Editor ein.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "tag:GetTagKeys",
                   "tag:GetTagValues"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

------

1. Schließen Sie den Assistenten ab, und weisen Sie der Richtlinie einen Namen zu (z. B. `TagKeysAndValuesReadAccess`).

1. Wählen Sie im linken Navigationsmenü „Benutzer“ aus.

1. Wählen Sie in der Liste den Benutzer aus, den Sie normalerweise für den Zugriff auf die DynamoDB-Konsole verwenden.

1. Wählen Sie „Berechtigungen hinzufügen“ aus.

1. Wählen Sie die Option Vorhandene Richtlinien direkt anfügen aus.

1. Wählen Sie in der Liste die Richtlinie aus, die Sie zuvor erstellt haben.

1. Schließen Sie den Assistenten ab.

## Hinzufügen von Tags zu neuen oder vorhandenen Tabellen (AWS-Managementkonsole)
<a name="Tagging.Operations.using-console"></a>

Sie können die DynamoDB-Konsole verwenden, um neuen Tabellen Tags hinzuzufügen, wenn Sie sie erstellen, oder um Tags für vorhandene Tabellen hinzuzufügen, zu bearbeiten oder zu löschen.

**Markieren von Ressourcen bei der Erstellung (Konsole)**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die DynamoDB-Konsole unter. [https://console.aws.amazon.com/dynamodb/](https://console.aws.amazon.com/dynamodb/)

1. Wählen Sie im Navigationsbereich **Tables** (Tabellen) und anschließend **Create table** (Tabelle erstellen) aus.

1. Geben Sie auf der Seite **DynamoDB-Tabelle erstellen** einen Namen und einen Primärschlüssel ein. Wählen Sie im Abschnitt **Tags** (Tags) **Add new tag** (Neuen Tag hinzufügen) und geben Sie die Tags ein, die Sie verwenden möchten.

   Informationen zur Tag-Struktur finden Sie unter [Markierungseinschränkungen in DynamoDB](Tagging.md#TaggingRestrictions). 

   Weitere Informationen zum Erstellen von Tabellen finden Sie unter [Grundlegende Operationen für DynamoDB-Tabellen](WorkingWithTables.Basics.md).

**Markieren vorhandener Ressourcen (Konsole)**

Öffnen Sie die DynamoDB-Konsole unter. [https://console.aws.amazon.com/dynamodb/](https://console.aws.amazon.com/dynamodb/)

1. Wählen Sie im Navigationsbereich **Tables** (Tabellen) aus.

1. Wählen Sie eine Tabelle in der Liste aus und wählen Sie dann die Registerkarte **Additional settings** (Zusätzliche Einstellungen). Sie können Ihre Tags im Abschnitt **Tags** unten auf der Seite hinzufügen, bearbeiten oder löschen.

## Hinzufügen von Tags zu neuen oder vorhandenen Tabellen (AWS CLI)
<a name="Tagging.Operations.using-cli"></a>

Die folgenden Beispiele zeigen, wie Sie die verwenden AWS CLI , um Tags anzugeben, wenn Sie Tabellen und Indizes erstellen, und um vorhandene Ressourcen zu taggen.

**Markieren von Ressourcen bei der Erstellung (AWS CLI)**
+ Im folgenden Beispiel wird eine neue `Movies`-Tabelle erstellt und das `Owner`-Tag mit dem Wert `blueTeam` hinzugefügt: 

  ```
  aws dynamodb create-table \
      --table-name Movies \
      --attribute-definitions AttributeName=Title,AttributeType=S \
      --key-schema AttributeName=Title,KeyType=HASH \
      --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5 \
      --tags Key=Owner,Value=blueTeam
  ```

**Markieren vorhandener Ressourcen (AWS CLI)**
+ Im folgenden Beispiel wird das `Owner`-Tag mit dem Wert `blueTeam` für die Tabelle `Movies` hinzugefügt: 

  ```
  aws dynamodb tag-resource \
      --resource-arn arn:aws:dynamodb:us-east-1:123456789012:table/Movies \
      --tags Key=Owner,Value=blueTeam
  ```

**Auflisten aller Tags für eine Tabelle (AWS CLI)**
+ Im folgenden Beispiel werden alle Tags aufgelistet, die mit der Tabelle `Movies` verknüpft sind:

  ```
  aws dynamodb list-tags-of-resource \
      --resource-arn arn:aws:dynamodb:us-east-1:123456789012:table/Movies
  ```

## Verwenden von DynamoDB-Tags zum Erstellen von Kostenzuordnungsberichten
<a name="CostAllocationReports"></a>

AWS verwendet Tags, um die Ressourcenkosten in Ihrem Kostenverteilungsbericht zu organisieren. AWS bietet zwei Arten von Kostenzuordnungs-Tags:
+ Ein von AWS-generierter Tag. AWS definiert, erstellt und wendet dieses Tag für Sie an.
+ Benutzerdefinierte Tags. Sie definieren und erstellen diese Tags und wenden sie an.

Sie müssen beide Arten von Tags separat aktivieren, bevor sie in Cost Explorer oder einem Kostenzuordnungsbericht angezeigt werden können. 

 Um AWS-generierte Tags zu aktivieren: 

1.  Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Billing and Cost Management-Konsole von zu [https://console.aws.amazon.com/billing/Hause aus\$1/](https://console.aws.amazon.com/billing/home#/.). 

1.  Wählen Sie im Navigationsbereich die Option **Cost Allocation Tags** (Kostenzuordnungs-Tags) aus. 

1.  Wählen Sie unter **AWS-generierte Kostenzuordnungs-Tags** die Option **Aktivieren**. 

 So aktivieren Sie benutzerdefinierte Tags: 

1.  Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Billing and Cost Management-Konsole von zu [https://console.aws.amazon.com/billing/Hause aus\$1/](https://console.aws.amazon.com/billing/home#/.). 

1.  Wählen Sie im Navigationsbereich die Option **Cost Allocation Tags** (Kostenzuordnungs-Tags) aus. 

1.  Wählen Sie unter **User-Defined Cost Allocation Tags** (Benutzerdefinierte Kostenzuordnungs-Tags) die Option **Activate** (Aktivieren) aus. 

 Nachdem Sie Stichwörter erstellt und aktiviert haben, AWS wird ein Kostenzuordnungsbericht generiert, in dem Ihre Nutzung und die Kosten nach Ihren aktiven Stichwörtern gruppiert sind. Der Kostenzuordnungsbericht enthält alle Ihre AWS Kosten für jeden Abrechnungszeitraum. Der Bericht enthält getaggte und nicht getaggte Ressourcen, sodass Sie die Gebühren für Ressourcen übersichtlich verwalten können. 

**Anmerkung**  
 Derzeit werden alle Daten, die aus DynamoDB weitergeleitet werden, im Kostenzuordnungsbericht nicht nach Tags aufgeschlüsselt. 

 Weitere Informationen finden Sie unter [Verwendung von Kostenzuordnungs-Tags](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html). 