

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.

# Funktionale Unterschiede: Amazon Keyspaces im Vergleich zu Apache Cassandra
<a name="functional-differences"></a>

Im Folgenden sind die funktionalen Unterschiede zwischen Amazon Keyspaces und Apache Cassandra aufgeführt.

**Topics**
+ [

## Apache Cassandra APIs, Operationen und Datentypen
](#functional-differences.cassandra-apis)
+ [

## Asynchrones Erstellen und Löschen von Schlüsselräumen und Tabellen
](#functional-differences.table-keyspace-management)
+ [

## Authentifizierung und Autorisierung
](#functional-differences.auth)
+ [

## Batch
](#functional-differences.batch)
+ [

## Erfassung von Datenänderungen (Change Data Capture, CDC)
](#functional-differences.cdc)
+ [

## Cluster-Konfiguration
](#functional-differences.cluster-config)
+ [

## Verbindungen
](#functional-differences.connections)
+ [

## `IN`Schlüsselwort
](#functional-differences.IN-keyword)
+ [

## `FROZEN`Sammlungen
](#functional-differences.frozen-collections)
+ [

## Einfache Transaktionen
](#functional-differences.light-transactions)
+ [

## Lastausgleich
](#functional-differences.load-balancing)
+ [

## Paginierung
](#functional-differences.paging)
+ [

## Partitionierer
](#functional-differences.partitioners)
+ [

## Vorbereitete Aussagen
](#functional-differences.prepared-statements)
+ [

## Bereich löschen
](#functional-differences.range-delete)
+ [

## Systemtabellen
](#functional-differences.system-tables)
+ [

## Zeitstempel
](#functional-differences.timestamps)
+ [

## Benutzerdefinierte Typen () UDTs
](#functional-differences.UDTs)

## Apache Cassandra APIs, Operationen und Datentypen
<a name="functional-differences.cassandra-apis"></a>

Amazon Keyspaces unterstützt alle häufig verwendeten Cassandra-Datenebenenoperationen, z. B. das Erstellen von Schlüsselräumen und Tabellen, das Lesen von Daten und das Schreiben von Daten. Informationen zu den zurzeit unterstützten Komponenten finden Sie unter [Unterstützte Cassandra APIs, Operationen, Funktionen und Datentypen](cassandra-apis.md).

## Asynchrones Erstellen und Löschen von Schlüsselräumen und Tabellen
<a name="functional-differences.table-keyspace-management"></a>

Amazon Keyspaces führt DDL-Operationen (Data Definition Language) wie das asynchrone Erstellen und Löschen von Schlüsselräumen, Tabellen und Typen durch. Informationen zur Überwachung des Erstellungsstatus von Ressourcen finden Sie unter und. [Überprüfen Sie den Status der Schlüsselraumerstellung in Amazon Keyspaces](keyspaces-create.md) [Überprüfen Sie den Status der Tabellenerstellung in Amazon Keyspaces](tables-create.md) Eine Liste der DDL-Anweisungen in der CQL-Sprachreferenz finden Sie unter. [DDL-Anweisungen (Datendefinitionssprache) in Amazon Keyspaces](cql.ddl.md)

## Authentifizierung und Autorisierung
<a name="functional-differences.auth"></a>

 Amazon Keyspaces (für Apache Cassandra) verwendet AWS Identity and Access Management (IAM) für die Benutzerauthentifizierung und -autorisierung und unterstützt die entsprechenden Autorisierungsrichtlinien wie Apache Cassandra. Daher unterstützt Amazon Keyspaces die Sicherheitskonfigurationsbefehle von Apache Cassandra nicht. 

## Batch
<a name="functional-differences.batch"></a>

Amazon Keyspaces unterstützt die folgenden Batch-Befehle:
+ **Protokollierter Batch** — unterstützt bis zu 100 Befehle pro Batch.
+ **Nicht protokollierter Stapel** — unterstützt bis zu 30 Befehle pro Batch.

 In einem Batch sind nur **INSERT** **DELETE** Befehle**UPDATE**, oder zulässig. 

## Erfassung von Datenänderungen (Change Data Capture, CDC)
<a name="functional-differences.cdc"></a>

In Apache Cassandra kopiert Change Data Capture (CDC) Commit-Log-Segmente, die Tabellenaktualisierungen erfassen, in ein bestimmtes Verzeichnis auf dem Knoten. Jeder Änderungsdatensatz im CDC-Protokoll kann Aktualisierungen in mehreren Schlüsselräumen und Tabellen enthalten. Wenn eine Zeile aktualisiert oder gelöscht wird, zeigt das Apache Cassandra CDC-Protokoll nur die geänderten Spalten an. Das Protokoll enthält nicht den vorherigen Status der Daten vor der Änderung. Um die vollständigen Details der Datenänderungen zu verstehen, müssen Sie diese Protokolle mit speziellen Cassandra-Tools deserialisieren.

Mit Amazon Keyspaces CDC-Streams können Sie die Art der Informationen auswählen, die der CDC-Stream für jede Zeile sammelt. Standardmäßig erfassen Amazon Keyspaces CDC-Streams die Version der Zeile vor und nach der Änderung. Amazon Keyspaces CDC stellt deduplizierte und geordnete Änderungsdatensätze auf Tabellenebene bereit.

[In Amazon Keyspaces ist jeder CDC-Stream eine AWS Ressource mit einem Amazon-Ressourcennamen (ARN), und Ihre Anwendung kann Amazon Keyspaces-CDC-Streams mithilfe der Amazon Keyspaces CDC-API über einen der verfügbaren Endpunkte konsumieren.](CDC_access-endpoints.md) 

Weitere Informationen zu Amazon Keyspaces CDC finden Sie unter. [Arbeiten mit Change Data Capture (CDC) -Streams in Amazon Keyspaces](cdc.md)

## Cluster-Konfiguration
<a name="functional-differences.cluster-config"></a>

Amazon Keyspaces ist serverlos, sodass keine Cluster, Hosts oder virtuellen Java-Maschinen (JVMs) konfiguriert werden müssen. Cassandras Einstellungen für Komprimierung, Komprimierung, Caching, Garbage-Collection und Bloom-Filterung gelten nicht für Amazon Keyspaces und werden ignoriert, falls angegeben.

## Verbindungen
<a name="functional-differences.connections"></a>

Sie können vorhandene Cassandra-Treiber für die Kommunikation mit Amazon Keyspaces verwenden, müssen die Treiber jedoch anders konfigurieren. Amazon Keyspaces unterstützt bis zu 3.000 CQL-Abfragen pro TCP-Verbindung pro Sekunde, aber die Anzahl der Verbindungen, die ein Treiber herstellen kann, ist unbegrenzt. 

Die meisten Open-Source-Cassandra-Treiber richten einen Verbindungspool zu Cassandra ein und verteilen Abfragen über diesen Verbindungspool. Amazon Keyspaces stellt Treibern 9 Peer-IP-Adressen zur Verfügung, und das Standardverhalten der meisten Treiber besteht darin, eine einzige Verbindung zu jeder Peer-IP-Adresse herzustellen. Daher beträgt der maximale CQL-Abfragedurchsatz eines Treibers, der die Standardeinstellungen verwendet, 27.000 CQL-Abfragen pro Sekunde. 

Um diese Zahl zu erhöhen, empfehlen wir, die Anzahl der Verbindungen pro IP-Adresse zu erhöhen, die Ihr Treiber in seinem Verbindungspool verwaltet. Wenn Sie beispielsweise die maximale Anzahl an Verbindungen pro IP-Adresse auf 2 festlegen, verdoppelt sich der maximale Durchsatz Ihres Treibers auf 54.000 CQL-Abfragen pro Sekunde. 

Als bewährte Methode empfehlen wir, Treiber so zu konfigurieren, dass sie 500 CQL-Abfragen pro Sekunde und Verbindung verwenden, um Mehraufwand zu vermeiden und die Verteilung zu verbessern. In diesem Szenario sind für die Planung von 18.000 CQL-Abfragen pro Sekunde 36 Verbindungen erforderlich. Die Konfiguration des Treibers für 4 Verbindungen an 9 Endpunkten ermöglicht 36 Verbindungen, die 500 Anfragen pro Sekunde ausführen. Weitere Informationen zu bewährten Methoden für Verbindungen finden Sie unter[Optimieren Sie die Client-Treiberverbindungen für die serverlose Umgebung](connections.md).

Bei der Verbindung mit VPC-Endpunkten sind möglicherweise weniger Endpunkte verfügbar. Das bedeutet, dass Sie die Anzahl der Verbindungen in der Treiberkonfiguration erhöhen müssen. Weitere Informationen zu bewährten Methoden für VPC-Verbindungen finden Sie unter[So konfigurieren Sie Verbindungen über VPC-Endpunkte in Amazon Keyspaces](connections.md#connections.VPCendpoints).

## `IN`Schlüsselwort
<a name="functional-differences.IN-keyword"></a>

Amazon Keyspaces unterstützt das `IN` Schlüsselwort in der `SELECT` Anweisung. `IN`wird mit `UPDATE` und `DELETE` nicht unterstützt. Wenn das `IN` Schlüsselwort in der `SELECT` Anweisung verwendet wird, werden die Ergebnisse der Abfrage in der Reihenfolge zurückgegeben, in der die Schlüssel in der `SELECT` Anweisung dargestellt werden. In Cassandra sind die Ergebnisse lexikografisch geordnet. 

Bei Verwendung ` ORDER BY` wird eine vollständige Neuanordnung mit deaktivierter Paginierung nicht unterstützt und die Ergebnisse werden innerhalb einer Seite angeordnet. Slice-Abfragen werden mit dem Schlüsselwort nicht unterstützt. `IN` `TOKENS`werden mit dem `IN` Schlüsselwort nicht unterstützt. Amazon Keyspaces verarbeitet Abfragen mit dem `IN` Schlüsselwort, indem es Unterabfragen erstellt. Jede Unterabfrage zählt als Verbindung im Rahmen der Obergrenze von 3.000 CQL-Abfragen pro TCP-Verbindung pro Sekunde. Weitere Informationen finden Sie unter [Verwenden Sie den `IN` Operator mit der `SELECT` Anweisung in einer Abfrage in Amazon Keyspaces](in.select.md).

## `FROZEN`Sammlungen
<a name="functional-differences.frozen-collections"></a>

Das `FROZEN` Schlüsselwort in Cassandra serialisiert mehrere Komponenten eines Sammlungsdatentyps zu einem einzigen unveränderlichen Wert, der wie ein behandelt wird. `BLOB` `INSERT`und `UPDATE` Anweisungen überschreiben die gesamte Sammlung.

Amazon Keyspaces unterstützt standardmäßig bis zu 8 Verschachtelungsebenen für eingefrorene Sammlungen. Weitere Informationen finden Sie unter [Amazon Keyspaces-Servicekontingente](quotas.md#table).

Amazon Keyspaces unterstützt keine Ungleichheitsvergleiche, bei denen die gesamte eingefrorene Sammlung in einer Bedingung `UPDATE` oder `SELECT` Anweisung verwendet wird. Das Verhalten für Sammlungen und eingefrorene Sammlungen ist in Amazon Keyspaces dasselbe.

Wenn Sie eingefrorene Sammlungen mit clientseitigen Zeitstempeln verwenden und der Zeitstempel eines Schreibvorgangs dem Zeitstempel einer vorhandenen Spalte entspricht, die nicht abgelaufen oder als veraltet markiert ist, führt Amazon Keyspaces keine Vergleiche durch. Stattdessen kann der Server den neuesten Writer ermitteln, und der letzte Writer gewinnt. 

Weitere Informationen zu eingefrorenen Sammlungen finden Sie unter[Sammlungstypen](cql.elements.md#cql.data-types.collection).

## Einfache Transaktionen
<a name="functional-differences.light-transactions"></a>

Amazon Keyspaces (für Apache Cassandra) unterstützt vollständig die Funktionen zum Vergleichen und Einstellen von **DELETE** Befehlen**INSERT**, und**UPDATE**, die in Apache Cassandra als *Lightweight Transactions* (LWTs) bezeichnet werden. Als serverloses Angebot bietet Amazon Keyspaces (für Apache Cassandra) gleichbleibende Leistung in jeder Größenordnung, auch für einfache Transaktionen. Mit Amazon Keyspaces gibt es keine Leistungseinbußen bei der Verwendung einfacher Transaktionen.

## Lastausgleich
<a name="functional-differences.load-balancing"></a>

Die `system.peers` Tabelleneinträge entsprechen den Load Balancern von Amazon Keyspaces. Um optimale Ergebnisse zu erzielen, empfehlen wir, eine Round-Robin-Load-Balancing-Richtlinie zu verwenden und die Anzahl der Verbindungen pro IP an die Anforderungen Ihrer Anwendung anzupassen.

## Paginierung
<a name="functional-differences.paging"></a>

Amazon Keyspaces paginiert Ergebnisse auf der Grundlage der Anzahl der Zeilen, die es liest, um eine Anfrage zu verarbeiten, und nicht auf der Anzahl der Zeilen, die in der Ergebnismenge zurückgegeben werden. Daher können einige Seiten weniger Zeilen enthalten, als Sie unter SEITENGRÖSSE für gefilterte Abfragen angeben. Darüber hinaus paginiert Amazon Keyspaces die Ergebnisse nach dem Lesen von 1 MB Daten automatisch, um Kunden eine konsistente Leseleistung im einstelligen Millisekundenbereich zu bieten. Weitere Informationen finden Sie unter [Ergebnisse in Amazon Keyspaces paginieren](paginating-results.md).

In Tabellen mit statischen Spalten legen sowohl Apache Cassandra als auch Amazon Keyspaces den statischen Spaltenwert der Partition am Anfang jeder Seite in einer mehrseitigen Abfrage fest. Wenn eine Tabelle aufgrund des Paginierungsverhaltens von Amazon Keyspaces große Datenzeilen enthält, ist die Wahrscheinlichkeit höher, dass das Ergebnis eines Bereichslesevorgangs für Amazon Keyspaces mehr Seiten zurückgibt als für Apache Cassandra. Folglich besteht in Amazon Keyspaces eine höhere Wahrscheinlichkeit, dass gleichzeitige Aktualisierungen der statischen Spalte dazu führen können, dass der Wert der statischen Spalte auf verschiedenen Seiten des Ergebnissatzes für den Bereich Read unterschiedlich ist. 

## Partitionierer
<a name="functional-differences.partitioners"></a>

Die Standard-Partitionierung in Amazon Keyspaces ist Cassandra-Compatible. `Murmur3Partitioner` Darüber hinaus haben Sie die Wahl, entweder die Amazon Keyspaces `DefaultPartitioner` oder die `RandomPartitioner` Cassandra-kompatiblen zu verwenden. 

Mit Amazon Keyspaces können Sie den Partitionierer für Ihr Konto sicher ändern, ohne Ihre Amazon Keyspaces-Daten neu laden zu müssen. Nach Abschluss der Konfigurationsänderung, die etwa 10 Minuten dauert, sehen Kunden die neue Partitionierungseinstellung automatisch, wenn sie das nächste Mal eine Verbindung herstellen. Weitere Informationen finden Sie unter [Arbeiten mit Partitionierern in Amazon Keyspaces](working-with-partitioners.md).

## Vorbereitete Aussagen
<a name="functional-differences.prepared-statements"></a>

Amazon Keyspaces unterstützt die Verwendung von vorbereiteten Anweisungen für DML-Operationen (Data Manipulation Language), z. B. das Lesen und Schreiben von Daten. Amazon Keyspaces unterstützt derzeit nicht die Verwendung von vorbereiteten Anweisungen für DDL-Operationen (Data Definition Language), wie das Erstellen von Tabellen und Schlüsselräumen. DDL-Operationen müssen außerhalb von vorbereiteten Anweisungen ausgeführt werden.

## Bereich löschen
<a name="functional-differences.range-delete"></a>

**Wichtig**  
Ab dem 1. Juli 2026 werden Vorgänge zum Löschen von Bereichen von der synchronen zur asynchronen Verarbeitung übergehen. Nach dieser Änderung bestätigt eine erfolgreiche Antwort, dass Ihre Löschanforderung akzeptiert wurde, der Löschvorgang jedoch möglicherweise noch im Gange ist. Um zu überprüfen, ob der Löschvorgang abgeschlossen ist, fragen Sie nach Elementen im angegebenen Bereich ab. Wenn die Abfrage keine Ergebnisse zurückgibt, ist der Löschvorgang abgeschlossen.

Amazon Keyspaces unterstützt das Löschen von Zeilen im Bereich. Ein Bereich ist ein zusammenhängender Satz von Zeilen innerhalb einer Partition. Sie geben einen Bereich in einer DELETE-Operation mithilfe einer WHERE-Klausel an. Sie können den Bereich als gesamte Partition angeben. 

Darüber hinaus können Sie einen Bereich als Teilmenge zusammenhängender Zeilen innerhalb einer Partition angeben, indem Sie relationale Operatoren verwenden (z. B. '>', '<') oder indem Sie den Partitionsschlüssel angeben und eine oder mehrere Clusterspalten weglassen. Mit Amazon Keyspaces können Sie bis zu 1.000 Zeilen innerhalb eines Bereichs in einem einzigen Vorgang löschen. 

Bereichslöschungen sind nicht isoliert. Das Löschen einzelner Zeilen ist für andere Vorgänge sichtbar, während ein Bereich gelöscht wird.

## Systemtabellen
<a name="functional-differences.system-tables"></a>

Amazon Keyspaces füllt die Systemtabellen, die für die Open-Source-Cassandra-Treiber von Apache 2.0 erforderlich sind. Die Systemtabellen, die für einen Client sichtbar sind, enthalten Informationen, die für den authentifizierten Benutzer eindeutig sind. Die Systemtabellen werden vollständig von Amazon Keyspaces gesteuert und sind schreibgeschützt. Weitere Informationen finden Sie unter [Systemschlüsselräume in Amazon Keyspaces](working-with-keyspaces.md).

Ein schreibgeschützter Zugriff auf Systemtabellen ist erforderlich, und Sie können ihn mithilfe von IAM-Zugriffsrichtlinien steuern. Weitere Informationen finden Sie unter [Verwalten des Zugriffs mit Richtlinien](security-iam.md#security_iam_access-manage). Sie müssen tagbasierte Zugriffskontrollrichtlinien für Systemtabellen unterschiedlich definieren, je nachdem, ob Sie die AWS SDK- oder Cassandra Query Language (CQL) -API-Aufrufe über Cassandra-Treiber und Entwicklertools verwenden. Weitere Informationen zur tagbasierten Zugriffskontrolle für Systemtabellen finden Sie unter. [Amazon Keyspaces-Ressourcenzugriff basierend auf Tags](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-tags)

Wenn Sie über Amazon [VPC-Endpunkte auf Amazon](vpc-endpoints.md) Keyspaces zugreifen, werden in der `system.peers` Tabelle Einträge für jeden Amazon VPC-Endpunkt angezeigt, für den Amazon Keyspaces Zugriffsberechtigungen besitzt. Infolgedessen gibt Ihr Cassandra-Treiber möglicherweise eine [Warnmeldung](vpc-endpoints.md#vpc_troubleshooting) über den Kontrollknoten selbst in der Tabelle aus. `system.peers` Sie können diese Warnung getrost ignorieren.

## Zeitstempel
<a name="functional-differences.timestamps"></a>

In Amazon Keyspaces sind Zeitstempel auf Zellenebene, die mit den Standardzeitstempeln in Apache Cassandra kompatibel sind, eine optionale Funktion.

Die `USING TIMESTAMP` Klausel und die `WRITETIME` Funktion sind nur verfügbar, wenn clientseitige Zeitstempel für eine Tabelle aktiviert sind. Weitere Informationen zu clientseitigen Zeitstempeln in Amazon Keyspaces finden Sie unter. [Clientseitige Zeitstempel in Amazon Keyspaces](client-side-timestamps.md)

## Benutzerdefinierte Typen () UDTs
<a name="functional-differences.UDTs"></a>

Der Ungleichheitsoperator wird UDTs in Amazon Keyspaces nicht unterstützt.

Informationen zur Arbeit mit UDTs Amazon Keyspaces finden Sie unter[Benutzerdefinierte Typen (UDTs) in Amazon Keyspaces](udts.md).

Informationen darüber, wie viele pro Schlüsselraum unterstützt UDTs werden, welche Verschachtelungsebenen unterstützt werden und welche anderen Standardwerte und Kontingente damit in Zusammenhang UDTs stehen, finden Sie unter. [Kontingente und Standardwerte für benutzerdefinierte Typen (UDTs) in Amazon Keyspaces](quotas.md#quotas-udts)