Ich bin auf der Suche nach einer Cassandra-Zeitreihe-Datenbank für die Speicherung von Millionen von Serien von täglichen Daten, die potenziell insgesamt bis zu 100B Datenpunkte haben können.Entwerfen von Zeitreihen-Datenbank in Cassandra
ich in diesem Artikel angesehen: http://rubyscale.com/blog/2011/03/06/basic-time-series-with-cassandra/
Dieser Entwurf sehr gesund ist. Im Wesentlichen kann ich die täglichen Zeitstempel als Spalten setzen und ggf. die Spalten durch Anhängen des Tages an die Zeile zerlegen.
Zwei Fragen, die ich habe:
- ich die Speicherung von bis zu 20.000 timestamped Suche (täglich) Spalten. Ist es sogar notwendig, Zeilen zu zerteilen, z. Jahr mit dieser Anzahl von Spalten? Gibt es einen Vor-/Nachteil beim Shardern von Zeilen, um die Anzahl der Spalten auf 365 pro Jahr zu reduzieren.
- Eine andere Idee, die ich habe, ist, anstatt Spalten für Zeile zu sharten, um Spaltenfamilie pro Jahr zu erstellen. Auf diese Weise müsste ich beim Zugriff auf die Daten aus mehreren Jahren mehrere Spaltenfamilien anstatt einer Spaltenfamilie abfragen und die Ergebnisse auf der Clientseite zusammenführen. Würde dieser Ansatz die Dinge beschleunigen oder eher verlangsamen?
Sie denken also, dass es keine Punkte gibt, wenn Tabellen/Spaltenfamilien in separate Spaltenfamilien aufgeteilt werden, sondern eher nach Zeilen? Gibt es einen Nachteil, wenn Sie zu viele Zeilen in einer einzelnen Spaltenfamilie haben? – datageek
Spaltenfamilie ist nur eine zusätzliche Schlüsselebene.Wenn meine Daten von der gleichen Art sind und die gleichen Einstellungen in Bezug auf Zwischenspeicherung, Vergleich (Spaltennamen) usw. benötigen, dann lege ich sie in die gleiche Spaltenfamilie. Plus-Säulenfamilien sind nicht so leicht zu verwalten. Wenn Sie nur auf einen neuen Schlüssel schreiben, wird es erstellt. UND Sie können nicht aus separaten CFs in einer Abfrage lesen. –