

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.

# Clientseitige Zeitstempel in Amazon Keyspaces
<a name="client-side-timestamps"></a>

In Amazon Keyspaces sind clientseitige Zeitstempel Cassandra-kompatible Zeitstempel, die für jede Zelle in Ihrer Tabelle persistent gespeichert werden. Sie können clientseitige Zeitstempel zur Konfliktlösung verwenden, indem Sie Ihre Client-Anwendungen die Reihenfolge der Schreibvorgänge bestimmen lassen. Wenn beispielsweise Clients einer global verteilten Anwendung dieselben Daten aktualisieren, wird durch die clientseitigen Zeitstempel die Reihenfolge beibehalten, in der die Aktualisierungen auf den Clients vorgenommen wurden. Amazon Keyspaces verwendet diese Zeitstempel, um die Schreibvorgänge zu verarbeiten. 

Die clientseitigen Zeitstempel von Amazon Keyspace werden vollständig verwaltet. Sie müssen sich nicht um grundlegende Systemeinstellungen wie Säuberungs- und Verdichtungsstrategien kümmern. 

Wenn Sie Daten löschen, werden die Zeilen mit einem Grabstein zum Löschen markiert. Amazon Keyspaces entfernt veraltete Daten automatisch (in der Regel innerhalb von 10 Tagen), ohne die Leistung oder Verfügbarkeit Ihrer Anwendung zu beeinträchtigen. Als veraltet eingestufte Daten sind nicht für DML-Anweisungen (Data Manipulation Language) verfügbar. Wenn Sie weiterhin Lese- und Schreibvorgänge in Zeilen ausführen, die als veraltet eingestufte Daten enthalten, werden die veralteten Daten weiterhin auf Speicher-, Lesekapazitätseinheiten () und Schreibkapazitätseinheiten (RCUs) angerechnet, bis sie aus dem Speicher gelöscht WCUs werden. 

Nachdem die clientseitigen Zeitstempel für eine Tabelle aktiviert wurden, können Sie in Ihrer DML-CQL-Abfrage (Data Manipulation Language) einen Zeitstempel mit der `USING TIMESTAMP` Klausel angeben. Weitere Informationen finden Sie unter [Verwenden Sie clientseitige Zeitstempel in Abfragen in Amazon Keyspaces](client-side-timestamps-how-to-queries.md). Wenn Sie in Ihrer CQL-Abfrage keinen Zeitstempel angeben, verwendet Amazon Keyspaces den von Ihrem Client-Treiber übergebenen Zeitstempel. Wenn der Client-Treiber keine Zeitstempel bereitstellt, weist Amazon Keyspaces automatisch einen Zeitstempel auf Zellenebene zu, da Zeitstempel dies nicht sein können. `NULL` Um Zeitstempel abzufragen, können Sie die Funktion in Ihrer DML-Anweisung verwenden. `WRITETIME` 

Amazon Keyspaces berechnet keine zusätzlichen Gebühren für die Aktivierung von clientseitigen Zeitstempeln. Bei clientseitigen Zeitstempeln speichern und schreiben Sie jedoch zusätzliche Daten für jeden Wert in Ihrer Zeile. Dies kann zu zusätzlicher Speichernutzung und in einigen Fällen zu zusätzlicher Durchsatznutzung führen. Weitere Informationen zu den Preisen von Amazon Keyspaces finden Sie unter Preise für [Amazon Keyspaces (für Apache Cassandra](https://aws.amazon.com/keyspaces/pricing)).

Wenn clientseitige Zeitstempel in Amazon Keyspaces aktiviert sind, speichert jede Spalte jeder Zeile einen Zeitstempel. Diese Zeitstempel nehmen ungefähr 20—40 Byte ein (abhängig von Ihren Daten) und tragen zu den Speicher- und Durchsatzkosten für die Zeile bei. Diese Metadaten-Bytes werden auch auf Ihr Kontingent für die Zeilengröße von 1 MB angerechnet. Um die Gesamtzunahme des Speicherplatzes zu ermitteln (um sicherzustellen, dass die Zeilengröße unter 1 MB bleibt), berücksichtigen Sie die Anzahl der Spalten in Ihrer Tabelle und die Anzahl der Sammlungselemente in jeder Zeile. Wenn eine Tabelle beispielsweise 20 Spalten hat und jede Spalte 40 Byte an Daten speichert, erhöht sich die Größe der Zeile von 800 Byte auf 1200 Byte. Weitere Informationen zum Schätzen der Größe einer Zeile finden Sie unter[Schätzen Sie die Zeilengröße in Amazon Keyspaces](calculating-row-size.md). Zusätzlich zu den zusätzlichen 400 Byte für den Speicher steigt in diesem Beispiel die Anzahl der pro Schreibvorgang verbrauchten Schreibkapazitätseinheiten (WCUs) von 1 WCU auf 2. WCUs Weitere Hinweise zur Berechnung der Lese- und Schreibkapazität finden Sie unter[read/write Kapazitätsmodi in Amazon Keyspaces konfigurieren](ReadWriteCapacityMode.md).

Nachdem die clientseitigen Zeitstempel für eine Tabelle aktiviert wurden, können Sie sie nicht mehr deaktivieren. 

Weitere Informationen zur Verwendung von clientseitigen Zeitstempeln in Abfragen finden Sie unter. [Verwenden Sie clientseitige Zeitstempel in Abfragen in Amazon Keyspaces](client-side-timestamps-how-to-queries.md)

**Topics**
+ [So lassen sich clientseitige Zeitstempel von Amazon Keyspace in Dienste integrieren AWS](#client-side-timestamps_integration)
+ [Erstellen Sie eine neue Tabelle mit clientseitigen Zeitstempeln in Amazon Keyspaces](client-side-timestamps-create-new-table.md)
+ [Client-seitige Zeitstempel für eine Tabelle in Amazon Keyspaces konfigurieren](client-side-timestamps-existing-table.md)
+ [Verwenden Sie clientseitige Zeitstempel in Abfragen in Amazon Keyspaces](client-side-timestamps-how-to-queries.md)

## So lassen sich clientseitige Zeitstempel von Amazon Keyspace in Dienste integrieren AWS
<a name="client-side-timestamps_integration"></a>

Die folgende clientseitige Zeitstempelmetrik ist in Amazon verfügbar, um eine kontinuierliche Überwachung CloudWatch zu ermöglichen.
+ `SystemReconciliationDeletes`— Die Anzahl der Löschvorgänge, die erforderlich sind, um veraltete Daten zu entfernen.

Weitere Informationen zur Überwachung von CloudWatch Metriken finden Sie unter. [Überwachung von Amazon Keyspaces mit Amazon CloudWatch](monitoring-cloudwatch.md)

Wenn Sie verwenden CloudFormation, können Sie beim Erstellen einer Amazon Keyspaces-Tabelle clientseitige Zeitstempel aktivieren. Weitere Informationen finden Sie im [AWS CloudFormation -Benutzerhandbuch](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-table.html). 

# Erstellen Sie eine neue Tabelle mit clientseitigen Zeitstempeln in Amazon Keyspaces
<a name="client-side-timestamps-create-new-table"></a>

Folgen Sie diesen Beispielen, um eine neue Amazon Keyspaces-Tabelle mit aktivierten clientseitigen Zeitstempeln mithilfe der Amazon Keyspaces AWS-Managementkonsole, Cassandra Query Language (CQL) oder der AWS Command Line Interface

------
#### [ Console ]

**Erstellen Sie eine neue Tabelle mit clientseitigen Zeitstempeln (Konsole)**

1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon Keyspaces-Konsole zu [https://console.aws.amazon.com/keyspaces/Hause](https://console.aws.amazon.com/keyspaces/home).

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

1. Wählen Sie auf der Seite **Tabelle erstellen** im Abschnitt **Tabellendetails** einen Schlüsselraum aus und geben Sie einen Namen für die neue Tabelle ein.

1. Erstellen Sie im Abschnitt **Schema** das Schema für Ihre Tabelle.

1. Wählen Sie im Abschnitt **Tabelleneinstellungen** die Option **Einstellungen anpassen** aus.

1. Fahren Sie mit den **clientseitigen Zeitstempeln** fort.

   Wählen Sie Clientseitige Zeitstempel **aktivieren, um clientseitige Zeitstempel** für die Tabelle zu aktivieren. 

1. Wählen Sie **Create table** (Tabelle erstellen) aus. Ihre Tabelle wird mit aktivierten clientseitigen Zeitstempeln erstellt.

------
#### [ Cassandra Query Language (CQL) ]

**Erstellen Sie eine neue Tabelle mit CQL**

1. Um eine neue Tabelle mit aktivierten clientseitigen Zeitstempeln mithilfe von CQL zu erstellen, können Sie das folgende Beispiel verwenden.

   ```
   CREATE TABLE my_keyspace.my_table (
      userid uuid,
      time timeuuid,
      subject text,
      body text,
      user inet,
      PRIMARY KEY (userid, time)
   ) WITH CUSTOM_PROPERTIES = {'client_side_timestamps': {'status': 'enabled'}};
   ```

1. Um die clientseitigen Zeitstempeleinstellungen für die neue Tabelle zu bestätigen, verwenden Sie eine `SELECT` Anweisung, um sie zu überprüfen, wie im `custom_properties` folgenden Beispiel gezeigt. 

   ```
   SELECT custom_properties from system_schema_mcs.tables where keyspace_name = 'my_keyspace' and table_name = 'my_table';
   ```

   Die Ausgabe dieser Anweisung zeigt den Status der clientseitigen Zeitstempel.

   ```
   'client_side_timestamps': {'status': 'enabled'}
   ```

------
#### [ AWS CLI ]

**Erstellen Sie eine neue Tabelle mit dem AWS CLI**

1. Um eine neue Tabelle mit aktivierten clientseitigen Zeitstempeln zu erstellen, können Sie das folgende Beispiel verwenden.

   ```
   ./aws keyspaces create-table \
   --keyspace-name my_keyspace \
   --table-name my_table \
   --client-side-timestamps 'status=ENABLED' \
   --schema-definition 'allColumns=[{name=id,type=int},{name=date,type=timestamp},{name=name,type=text}],partitionKeys=[{name=id}]'
   ```

1. Führen Sie den folgenden Code aus, um zu überprüfen, ob die clientseitigen Zeitstempel für die neue Tabelle aktiviert sind.

   ```
   ./aws keyspaces get-table \
   --keyspace-name my_keyspace \
   --table-name my_table
   ```

   Die Ausgabe sollte diesem Beispiel ähneln.

   ```
   {
       "keyspaceName": "my_keyspace",
       "tableName": "my_table",
       "resourceArn": "arn:aws:cassandra:us-east-1:111122223333:/keyspace/my_keyspace/table/my_table",
       "creationTimestamp": 1662681206.032,
       "status": "ACTIVE",
       "schemaDefinition": {
           "allColumns": [
               {
                   "name": "id",
                   "type": "int"
               },
               {
                   "name": "date",
                   "type": "timestamp"
               },
               {
                   "name": "name",
                   "type": "text"
               }
           ],
           "partitionKeys": [
               {
                   "name": "id"
               }
           ],
           "clusteringKeys": [],
           "staticColumns": []
       },
       "capacitySpecification": {
           "throughputMode": "PAY_PER_REQUEST",
           "lastUpdateToPayPerRequestTimestamp": 1662681206.032
       },
       "encryptionSpecification": {
           "type": "AWS_OWNED_KMS_KEY"
       },
       "pointInTimeRecovery": {
           "status": "DISABLED"
       },
       "clientSideTimestamps": {
           "status": "ENABLED"
       },
       "ttl": {
           "status": "ENABLED"
       },
       "defaultTimeToLive": 0,
       "comment": {
           "message": ""
       }
   }
   ```

------

# Client-seitige Zeitstempel für eine Tabelle in Amazon Keyspaces konfigurieren
<a name="client-side-timestamps-existing-table"></a>

Folgen Sie diesen Beispielen, um clientseitige Zeitstempel für bestehende Tabellen mithilfe von Amazon Keyspaces AWS-Managementkonsole, Cassandra Query Language (CQL) oder dem zu aktivieren. AWS Command Line Interface

------
#### [ Console ]

**So aktivieren Sie clientseitige Zeitstempel für eine bestehende Tabelle (Konsole)**

1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon Keyspaces-Konsole zu [https://console.aws.amazon.com/keyspaces/Hause](https://console.aws.amazon.com/keyspaces/home).

1. Wählen Sie die Tabelle aus, die Sie aktualisieren möchten, und wählen Sie dann den Tab **Zusätzliche Einstellungen**.

1. Gehen Sie auf der Registerkarte **Zusätzliche Einstellungen** zu Clientseitige Zeitstempel **ändern und wählen Sie Clientseitige Zeitstempel** **aktivieren**

1. Wählen Sie **Änderungen speichern, um die Einstellungen** der Tabelle zu ändern.

------
#### [ Cassandra Query Language (CQL) ]

**Verwenden einer CQL-Anweisung**

1. Aktivieren Sie clientseitige Zeitstempel für eine bestehende Tabelle mit der CQL-Anweisung. `ALTER TABLE`

   ```
   ALTER TABLE my_table WITH custom_properties = {'client_side_timestamps': {'status': 'enabled'}};;
   ```

1. Um die clientseitigen Zeitstempeleinstellungen für die neue Tabelle zu überprüfen, verwenden Sie eine `SELECT` Anweisung, um die Einstellungen zu überprüfen, wie im `custom_properties` folgenden Beispiel gezeigt. 

   ```
   SELECT custom_properties from system_schema_mcs.tables where keyspace_name = 'my_keyspace' and table_name = 'my_table';
   ```

   Die Ausgabe dieser Anweisung zeigt den Status der clientseitigen Zeitstempel.

   ```
   'client_side_timestamps': {'status': 'enabled'}
   ```

------
#### [ AWS CLI ]

**Mit dem AWS CLI**

1. Mithilfe des folgenden Beispiels können Sie clientseitige Zeitstempel für eine vorhandene Tabelle aktivieren. AWS CLI 

   ```
   ./aws keyspaces update-table \
   --keyspace-name my_keyspace \
   --table-name my_table \
   --client-side-timestamps 'status=ENABLED'
   ```

1. Führen Sie den folgenden Code aus, um zu überprüfen, ob die clientseitigen Zeitstempel für die Tabelle aktiviert sind.

   ```
   ./aws keyspaces get-table \
   --keyspace-name my_keyspace \
   --table-name my_table
   ```

   Die Ausgabe sollte diesem Beispiel ähneln und den Status für clientseitige Zeitstempel als angeben. `ENABLED`

   ```
   {
       "keyspaceName": "my_keyspace",
       "tableName": "my_table",
       "resourceArn": "arn:aws:cassandra:us-east-1:111122223333:/keyspace/my_keyspace/table/my_table",
       "creationTimestamp": 1662681312.906,
       "status": "ACTIVE",
       "schemaDefinition": {
           "allColumns": [
               {
                   "name": "id",
                   "type": "int"
               },
               {
                   "name": "date",
                   "type": "timestamp"
               },
               {
                   "name": "name",
                   "type": "text"
               }
           ],
           "partitionKeys": [
               {
                   "name": "id"
               }
           ],
           "clusteringKeys": [],
           "staticColumns": []
       },
       "capacitySpecification": {
           "throughputMode": "PAY_PER_REQUEST",
           "lastUpdateToPayPerRequestTimestamp": 1662681312.906
       },
       "encryptionSpecification": {
           "type": "AWS_OWNED_KMS_KEY"
       },
       "pointInTimeRecovery": {
           "status": "DISABLED"
       },
       "clientSideTimestamps": {
           "status": "ENABLED"
       },
       "ttl": {
           "status": "ENABLED"
       },
       "defaultTimeToLive": 0,
       "comment": {
           "message": ""
       }
   }
   ```

------

# Verwenden Sie clientseitige Zeitstempel in Abfragen in Amazon Keyspaces
<a name="client-side-timestamps-how-to-queries"></a>

Nachdem Sie die clientseitigen Zeitstempel aktiviert haben, können Sie den Zeitstempel in Ihren `INSERT``UPDATE`, und `DELETE` -Anweisungen mit der Klausel übergeben. `USING TIMESTAMP` 

Der Zeitstempelwert `bigint` entspricht einer Anzahl von Mikrosekunden seit der Standardbasiszeit, bekannt alsepoch: 1. Januar 1970 um 00:00:00 GMT. Ein vom Kunden bereitgestellter Zeitstempel muss zwischen 2 Tagen in der Vergangenheit und 5 Minuten in der future von der aktuellen Wanduhr liegen.

Amazon Keyspaces speichert Zeitstempel-Metadaten für die gesamte Lebensdauer der Daten. Sie können die `WRITETIME` Funktion verwenden, um nach Zeitstempeln zu suchen, die in der Vergangenheit aufgetreten sind. Weitere Hinweise zur CQL-Syntax finden Sie unter. [DML-Anweisungen (Datenmanipulationssprache) in Amazon Keyspaces](cql.dml.md)

Die folgende CQL-Anweisung ist ein Beispiel für die Verwendung eines Zeitstempels als. `update_parameter` 

```
INSERT INTO catalog.book_awards (year, award, rank, category, book_title, author, publisher)
   VALUES (2022, 'Wolf', 4, 'Non-Fiction', 'Science Update', 'Ana Carolina Silva', 'SomePublisher') 
   USING TIMESTAMP 1669069624;
```

Wenn Sie in Ihrer CQL-Abfrage keinen Zeitstempel angeben, verwendet Amazon Keyspaces den von Ihrem Client-Treiber übergebenen Zeitstempel. Wenn der Client-Treiber keinen Zeitstempel bereitstellt, weist Amazon Keyspaces Ihrem Schreibvorgang einen serverseitigen Zeitstempel zu. 

Um den Zeitstempelwert zu sehen, der für eine bestimmte Spalte gespeichert ist, können Sie die `WRITETIME` Funktion in einer `SELECT` Anweisung verwenden, wie im folgenden Beispiel gezeigt. 

```
SELECT year, award, rank, category, book_title, author, publisher, WRITETIME(year), WRITETIME(award), WRITETIME(rank),
  WRITETIME(category), WRITETIME(book_title), WRITETIME(author), WRITETIME(publisher) from catalog.book_awards;
```