2011-01-13 8 views
5

Wir verwenden Cassandra 0.6 und haben jetzt Spaltenfamilien mit Millionen von Schlüsseln. Wir sind daran interessiert, die neue Funktion des sekundären Index zu verwenden, die in der Version 0.7 verfügbar ist, konnten jedoch keine Dokumentation darüber finden, wie der neue Index gespeichert wird.Wie werden die 0,7 Sekundären Indizes von Cassandra gespeichert?

Gibt es Speicherplatzbeschränkungen oder ist der Index ähnlich wie bei Schlüsseln in mehreren Knoten gespeichert?

Ich habe versucht, die Cassandra-Website für eine Antwort durchkämmen, aber ohne Erfolg.

Antwort

6

Sekundärindizes werden als Spaltenfamilien gespeichert, auf die der Benutzer nicht zugreifen kann. Ihre Größe wird ungefähr lauten:

(Kardinalität der Menge der indizierten Werte * die durchschnittliche Größe der Indexwerte) + (die Anzahl der Schlüssel in der indizierten Spaltenfamilie * die durchschnittliche Größe der Schlüssel in der Spaltenfamilie).

Knoten indexieren nur Zeilen, die lokal gespeichert werden - also nur Zeilen, für die sie ein Replikat sind.

+0

Hallo Tyler Hobbs, das ist ein sehr interessantes und informatives Posting. Sie sprechen von "Indizes werden als CFs gespeichert": Bedeutet dies, dass ALLE Indizes unter EINER neuen CF gespeichert werden oder bedeutet dies, dass JEDER Index als seine eigene CF (mit einer einzelnen Zeile) gespeichert wird. Vielen Dank!! – Markus

+1

Jeder Index wird als eigene CF gespeichert. –

+0

ist es in Datenverzeichnis gespeichert? Ich meine, kann ich den Größenunterschied sehen? – samarth