Model danych Cassandry dla szeregów czasowych

Pracuję nad modelem danych Cassandra do przechowywania szeregów czasowych (jestem nowicjuszem Cassandry). Mam dwie aplikacje: dane giełdowe w ciągu dnia i dane z czujników.

Dane giełdowe zostaną zapisane z rozdzielczością czasową jednej minuty. Siedem pól danych tworzy jeden przedział czasowy: Symbol, Datetime, Open, High, Low, Close, Volume

Przeszukuję dane głównie za pomocą symbolu i daty. na przykład podaj mi wszystkie dane dotyczące AAPL między 2013-01-01 a 2013-01-31 zamówione przez Datetime. Zaleceniem dla zapytań kasandry jest zapytanie całych kolumn. Można więc utworzyć pięć wierszy za pomocą klawiszy Open, High, Low, Close, Volume. I dla każdego symbolu i minuty własną kolumnę. Na przykład. „AAPL: 2013-01-04T130400Z”. Spowodowałoby to utworzenie tabeli zawierającej pięć wierszy i n * kolumn NT, gdzie n = liczba symboli, nT = liczba minut. Przez większość czasu sprawdzam zakresy dat. To znaczy. wszystkie minuty dnia. Mogłem więc zmienić kolejność danych, aby uzyskać kolumny o nazwach „AAPL: 2013-01-04” i wiersze: OpenT130400Z, HighT130400Z, LowT130400Z, CloseT130400Z, VolumeT130400Z. Spowodowałoby to powstanie tabeli o n * nD kolumnach (n: liczba symboli, nD: liczba dni) i 5 * nM wierszy (nM: liczba minut / wpisów na dzień).

Podsumowując: mam kolumny, które przechowują informacje przez cały dzień za jeden symbol.

Znalazłem opis radzenia sobie z danymi szeregów czasowych w Cassandrze tutajhttp://www.datastax.com/dev/blog/advanced-time-series-with-cassandra Ale tak naprawdę nie rozumiem, jeśli używają godziny (1332960000) jako nazwy kolumny lub klucza wiersza !? Zrozumiałem, że używają godziny jako klucza wiersza i mają małe znaczniki czasu jako kolumny. Mieli więc stały numer kolumny. Ale miałoby to wady w czytaniu, ponieważ musiałbym wykonać zapytanie o zakres kluczy! Czy mam rację?

Drugie pytanie: jeśli mam dane z czujników, które są o wiele bardziej szczegółowe niż 1 minutowe dane giełdowe (powiedzmy, że muszę zapisać znaczniki czasu z rozdzielczością mikrosekund), jak sobie z tym poradzę? Gdybym używał kolumn do zapisywania złożonego kanału czujnika i godzin, a także rzędów na mikrosekundy od ostatniej godziny, skutkowałoby to 3,600,000,000 wierszy i n * nH kolumn (n: liczba czujników, nH: liczba godzin). Nie mogłem użyć mikrosekund od ostatniej godziny dla kolumn, ponieważ mam 3,6 miliarda punktów, czyli więcej niż dozwolona liczba 2 miliardów kolumn.

Dostałem to? Co myślisz o tym problemie? Jak to rozwiązać?

Dziękuję Ci!

Najlepsze, Malte

questionAnswers(1)

yourAnswerToTheQuestion