Szukam utworzenia bazy danych czasowych Cassandra do przechowywania milionów serii dziennych danych, które potencjalnie mogą mieć łącznie do 100B punktów danych.Projektowanie bazy danych czasu w Cassandra
Spojrzałem w tym artykule: http://rubyscale.com/blog/2011/03/06/basic-time-series-with-cassandra/
Ten projekt jest bardzo dobra. Zasadniczo mogę umieścić dzienne znaczniki czasu w kolumnach, aw razie potrzeby wyodrębnić kolumny, dodając dzień do wiersza.
dwa pytania mam:
- Patrzę na zapisanie do 20.000 o czasie, (dzienne) kolumn. Czy trzeba nawet odrywać rzędy np. rok z taką ilością kolumn? Czy istnieje korzyść/wada polegająca na odrzucaniu wierszy w celu zmniejszenia liczby kolumn do 365 w ciągu roku.
- Inną ideą, którą mam, jest raczej niż dzielenie kolumn według wierszy, aby utworzyć rodzinę kolumn na każdy rok. W ten sposób podczas uzyskiwania dostępu do danych z wielu lat musiałbym zapytać wiele rodzin kolumn, a nie jedną rodzinę kolumn i dołączyć wyniki po stronie klienta. Czy takie podejście przyspieszy lub spowolni wszystko?
Więc myślisz, że nie ma punktów w dzieleniu tabel/rodzin kolumn na oddzielne rodziny kolumn, ale raczej w wierszach? Czy jest jakaś wada polegająca na posiadaniu zbyt wielu rzędów w rodzinie z jedną kolumną? – datageek
Rodzina kolumn to tylko dodatkowy poziom klucza.Jeśli moje dane mają ten sam charakter i wymagają tych samych ustawień w zakresie buforowania, porównywania (nazwy kolumn) itp. Następnie umieszczam je w tej samej rodzinie kolumn. Plus rodziny kolumn nie są tak łatwe do zarządzania programaktycznie. Podczas pisania do nowego klucza zostanie utworzony. I nie można odczytać z oddzielnych CF w jednym zapytaniu. –