Top 23 Fragen zum Cassandra-Interview & Antworten

Anonim

PDF Herunterladen

1) Erklären Sie, was Cassandra ist.

Cassandra ist ein Open-Source-Datenspeichersystem, das bei Facebook für die Suche im Posteingang entwickelt wurde und zum Speichern und Verwalten großer Datenmengen auf Commodity-Servern entwickelt wurde. Es kann als beides dienen

  • Echtzeit-Datenspeichersystem für Online-Anwendungen
  • Auch als leseintensive Datenbank für Business Intelligence-Systeme

2) Was ist die Verwendung von Cassandra und warum wird Cassandra verwendet?

Cassandra wurde entwickelt, um Big-Data-Workloads über mehrere Knoten hinweg ohne einen einzigen Fehlerpunkt zu bewältigen. Die verschiedenen Faktoren, die für die Verwendung von Cassandra verantwortlich sind, sind

  • Es ist fehlertolerant und konsistent
  • Skalierbarkeit von Gigabyte bis Petabyte
  • Es ist eine spaltenorientierte Datenbank
  • Kein einziger Fehlerpunkt
  • Keine separate Caching-Ebene erforderlich
  • Flexibles Schemadesign
  • Es verfügt über eine flexible Datenspeicherung, eine einfache Datenverteilung und schnelle Schreibvorgänge
  • Es unterstützt ACID-Eigenschaften (Atomicity, Consistency, Isolation und Durability)
  • Multi-Rechenzentrum und Cloud-fähig
  • Datenkompression

3) Erklären Sie, was in Cassandra ein zusammengesetzter Typ ist.

In Cassandra ermöglicht der zusammengesetzte Typ das Definieren eines Schlüssels oder eines Spaltennamens mit einer Verkettung von Daten unterschiedlichen Typs. Sie können zwei Arten von zusammengesetzten Typen verwenden

  • Zeilenschlüssel
  • Spaltenname

4) Wie speichert Cassandra Daten?

  • Alle Daten werden als Bytes gespeichert
  • Wenn Sie den Validator angeben, stellt Cassandra sicher, dass diese Bytes gemäß den Anforderungen codiert werden
  • Dann ordnet ein Komparator die Spalte basierend auf der für die Codierung spezifischen Reihenfolge
  • Während Composite nur Byte-Arrays mit einer bestimmten Codierung sind, speichert es für jede Komponente eine Länge von zwei Bytes, gefolgt von der bytecodierten Komponente, gefolgt von einem Abschlussbit.

5) Erwähnen Sie, was die Hauptkomponenten des Cassandra-Datenmodells sind.

Die Hauptkomponenten des Cassandra-Datenmodells sind

  • Cluster
  • Schlüsselraum
  • Säule
  • Spalte & Familie

6) Erklären Sie, was eine Säulenfamilie in Cassandra ist.

Die Säulenfamilie in Cassandra wird für eine Sammlung von Zeilen bezeichnet.

7) Erklären Sie, was ein Cluster in Cassandra ist.

Ein Cluster ist ein Container für Keyspaces. Die Cassandra-Datenbank ist auf mehrere Computer unterteilt, die zusammenarbeiten. Der Cluster ist der äußerste Container, der die Knoten in einem Ringformat anordnet und ihnen Daten zuweist. Diese Knoten verfügen über ein Replikat, das bei einem Datenverarbeitungsfehler die Verantwortung übernimmt.

8) Die anderen Komponenten von Cassandra auflisten?

Die anderen Komponenten von Cassandra sind

  • Knoten
  • Rechenzentrum
  • Cluster
  • Protokoll festschreiben
  • Mem-Tabelle
  • SSTable
  • Blütenfilter

9) Erklären Sie, was ein Schlüsselraum in Cassandra ist.

In Cassandra ist ein Schlüsselbereich ein Namespace, der die Datenreplikation auf Knoten bestimmt. Ein Cluster besteht aus einem Schlüsselbereich pro Knoten.

10) Wie lautet die Syntax zum Erstellen eines Schlüsselraums in Cassandra?

Die Syntax zum Erstellen eines Schlüsselraums in Cassandra lautet

CREATE KEYSPACE MIT

11) Erwähnen Sie, welche Werte in der Cassandra-Spalte gespeichert sind.

In der Cassandra-Spalte gibt es grundsätzlich drei Werte

  • Spaltenname
  • Wert
  • Zeitstempel

12) Erwähnen Sie, wann Sie den Schlüsselraum ändern verwenden können?

Mit ALTER KEYSPACE können Eigenschaften wie die Anzahl der Replikate und das durable_write eines Schlüsselbereichs geändert werden.

13) Erklären Sie, was Cassandra-Cqlsh ist.

Cassandra-Cqlsh ist eine Abfragesprache, mit der Benutzer mit ihrer Datenbank kommunizieren können. Mit Cassandra cqlsh können Sie folgende Dinge tun

  • Definieren Sie ein Schema
  • Fügen Sie Daten ein und
  • Führen Sie eine Abfrage aus

14) Erwähnen Sie, was die Shell-Befehle "Capture" und "Consistency" bestimmen.

In Cassandra gibt es verschiedene Cqlsh-Shell-Befehle. Mit dem Befehl „Erfassen“ wird die Ausgabe eines Befehls erfasst und einer Datei hinzugefügt, während mit dem Befehl „Konsistenz“ die aktuelle Konsistenzstufe angezeigt oder eine neue Konsistenzstufe festgelegt wird.

15) Was ist beim Erstellen einer Tabelle in Cassandra obligatorisch?

Während das Erstellen eines Tabellenprimärschlüssels obligatorisch ist, besteht er aus einer oder mehreren Spalten einer Tabelle.

16) Erwähnen Sie, worauf beim Hinzufügen einer Spalte zu achten ist.

Beim Hinzufügen einer Spalte müssen Sie darauf achten, dass die

  • Der Spaltenname steht nicht in Konflikt mit den vorhandenen Spaltennamen
  • Tabelle ist nicht mit kompakter Speicheroption definiert

17) Erwähnen Sie, was Cassandra-CQL-Sammlungen sind.

Mit Cassandra CQL-Sammlungen können Sie mehrere Werte in einer einzigen Variablen speichern. In Cassandra können Sie CQL-Sammlungen auf folgende Weise verwenden

  • Liste : Wird verwendet, wenn die Reihenfolge der Daten beibehalten werden muss und ein Wert mehrmals gespeichert werden soll (enthält die Liste der eindeutigen Elemente).
  • SET : Wird verwendet, um eine Gruppe von Elementen zu speichern und in sortierten Reihenfolgen zurückzugeben (enthält sich wiederholende Elemente).
  • MAP : Dies ist ein Datentyp, der zum Speichern eines Schlüssel-Wert-Paares von Elementen verwendet wird

18) Erklären Sie, wie Cassandra Daten schreibt?

Cassandra schreibt Daten in drei Komponenten

  • Commitlog schreiben
  • Memtable schreiben
  • SStable schreiben

Cassandra schreibt Daten zuerst in ein Festschreibungsprotokoll und dann in eine speicherinterne Tabellenstruktur-Memtable und schließlich in SStable

19) Erklären Sie, was Memtable in Cassandra ist.

  • Cassandra schreibt die Daten in eine In-Memory-Struktur, die als Memtable bekannt ist
  • Es ist ein speicherinterner Cache mit Inhalten, die als Schlüssel / Spalte gespeichert sind
  • Nach Schlüssel Memtable-Daten werden sortiert
  • Für jede ColumnFamily gibt es eine separate Memtable, die Spaltendaten vom Schlüssel abruft

20) Erklären Sie, woraus SStable besteht.

SStable besteht hauptsächlich aus 2 Dateien

  • Indexdatei (Bloom Filter & Key Offset Paare)
  • Datendatei (Aktuelle Spaltendaten)

21) Erklären Sie, wofür Bloom Filter in Cassandra verwendet wird.

Ein Bloom-Filter ist eine platzsparende Datenstruktur, mit der getestet wird, ob ein Element Mitglied einer Menge ist. Mit anderen Worten wird es verwendet, um zu bestimmen, ob eine SSTable Daten für eine bestimmte Zeile enthält. In Cassandra wird es verwendet, um E / A zu speichern, wenn ein KEY LOOKUP durchgeführt wird.

22) Erklären Sie, wie Cassandra geänderte Daten in das Commitlog schreibt?

  • Cassandra verkettet geänderte Daten mit Commitlog
  • Commitlog fungiert als Absturzwiederherstellungsprotokoll für Daten
  • Bis die geänderten Daten mit dem Commitlog-Schreibvorgang verknüpft sind, wird dies niemals als erfolgreich angesehen

Daten gehen nicht verloren, sobald das Commitlog in die Datei geschrieben wurde

23) Erklären Sie, wie Cassandra Daten löscht?

SSTables sind unveränderlich und können keine Zeile aus SSTables entfernen. Wenn eine Zeile gelöscht werden muss, weist Cassandra den Spaltenwert einem speziellen Wert namens Tombstone zu. Wenn die Daten gelesen werden, gilt der Tombstone-Wert als gelöscht.