„Mit Cassandra können wir benutzerdefinierte Typen definieren, die verwandte Informationen in einer Tabelle enthalten können. Wenn Sie keinen Typ finden, der Ihre Datentypen geführt hat, können Sie integrierte Typen verwenden, um einen anderen Typ zu definieren, der Ihr gewünschtes Layout erfasst.
Es ist gut zu beachten. Sie können die Punktnotation verwenden, um auf eine Tabelle aus einem anderen Tastaturspace zuzugreifen.
In diesem Beitrag wird erläutert, wie Sie einen Benutzertyp mit dem Befehl erstellen type definieren können.”
Befehlssyntax erstellen
Der folgende Befehl zeigt die Syntax des Befehlstyps erstellen:
Typ erstellen [falls nicht existiert]
Schlüsselspace_Name.Modellname(
field_name cassandra_type [,]
[field_name cassandra_type] [,…]
);
Der Befehl unterstützt die IF -existierende Klausel, mit der Sie Fehler aufgeben können, wenn der Befehl mit einem ähnlichen Namen im Zieltyp vorliegt.
Typ_Name muss einen eindeutigen Namen enthalten, der den Namensregeln von Cassandra entspricht.
Schließlich können Sie die Felder für Ihren Typ und ihren jeweiligen CQL -Typ definieren. Verwenden Sie keine Zählerfelder in benutzerdefinierten Typen.
Beispiel
Das folgende Beispiel zeigt, wie Sie einen benutzerdefinierten Typ definieren, der CVE -Berichte enthält.
Tropfen Sie den Keyspace ab, wenn existiert Zero_Day;
Erstellen Sie Schlüsselspace Zero_Day
mit replication =
'Klasse': 'SimpleStrategy' ',
'replication_factor': 1
;
Verwenden Sie Zero_Day;
Erstellen Sie Typ cve_reports (
CVE_Number Text,
report_date Datum,
betroffen_vendor text,
Schweregrad schweben,
);
Die obige Abfrage beginnt mit dem Erstellen eines Schlüsselspace "Zero_Day", der den definierten Benutzertyp enthält.
Sie werden feststellen, dass die Anweisung Create Type ein ähnliches Format wie Tabellenerstellung folgt. Obwohl dies wahr ist, dienen sie unterschiedlichen Zwecken, und einer kann eine bessere Wahl sein als die andere.
NOTIZ: Berücksichtigen Sie die Auswirkungen der Leistung, bevor Sie eine Tabelle über einen benutzerdefinierten Typ auswählen, und umgekehrt umgekehrt.
Wir können dann wie gezeigt Daten in die obige Tabelle einfügen:
Wir können eine Tabelle mit dem Typ cve_reports erstellen und Beispieldaten einfügen wie gezeigt:
Erstellen von Tabellenaufzeichnungen (
Id int,
cve_reports cve_reports,
Primärschlüssel (ID)
);
Daten einfügen
Einfügen in Datensätze (ID, CVE_Reports) Werte (1, CVE_Number: 'CVE-2021-33852', Report_Date: '2022-12-02', AffeCT_VENDOR: 'WordPress', Schweregrad: 6.0);
Wir können dann die hinzugefügten Daten als:
aus Datensätzen auswählen;
Resultierende Ausgabe
Abschluss
Dieser Beitrag behandelte die Grundlagen des Erstellens und Verwendens benutzerdefinierter Typen in Apache Cassandra. Wir haben auch besprochen, wie Sie eine Tabelle mit benutzerdefinierten Typen erstellen und Daten in eine benutzerdefinierte Spalte einfügen.
Glückliche Codierung!!