Frage

Wir möchten Cassandra verwenden, um einen Informationsstrom aus verschiedenen Quellen zu speichern.

Ein Problem, mit dem wir konfrontiert sind, ist der beste Weg, um zwischen zwei Daten zu fragen.

Zum Beispiel müssen wir ein Objekt zwischen DateTime DT1 und DateTime DT2 abrufen.

Wir betrachten derzeit den erstellten UNIX -Zeitstempel als Schlüssel, das auf das eigentliche Objekt zeigt und dann mit Get_key_Range zur Abfrage zum Abrufen verwendet werden?

Offensichtlich würde dies nicht funktionieren, wenn zwei Artikel den gleichen Zeitstempel hätten.

Ist dies der beste Weg, um DateTime in NoSQL -Stores im Allgemeinen zu machen?

War es hilfreich?

Lösung

Cassandra -Zeilen können sehr groß sein. Betrachten Sie also, es als Spalten in einer Zeile zu modellieren, anstatt Zeilen in einem CF. Anschließend können Sie die Spaltenscheibenoperationen verwenden, die schneller als Zeilenscheiben sind. Wenn damit keine "natürlichen" Schlüssel zugeordnet sind, können Sie tägliche oder stündliche Schlüssel wie "2010/02/08 13:00" verwenden.

Andernfalls ist die Verwendung von Bereichsabfragen (Get_key_Range ist in 0,5 veraltet; verwenden Get_Range_Slice) die beste Option.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top