Szukam sposobu przechowywania danych z sygnaturą czasową.Najlepszy sposób na przechowywanie danych serii czasowej z dużym napisem i wysoką agregacją. (~ 1 miliard punktów)
Każda sygnatura czasowa może mieć od 1 do 10 pól danych.
Czy mogę przechowywać dane jako (time, key, value)
przy użyciu prostego rozwiązania do obsługi danych lub SQL? jak by to porównać do rozwiązania noSQL takiego jak mongo, gdzie mogę przechowywać {time:.., key1:..., key2:...}
?
Będzie przechowywać około 10 punktów danych z maksymalną prędkością około 10 pól na sekundę. Dane mogą być gromadzone nawet przez 10 lat, łatwo gromadząc dane o rekordach miliardów. Baza danych powinna być w stanie pomóc w tworzeniu wykresów danych z zapytaniami o zakres czasowy.
Powinien być w stanie obsłużyć dużą częstotliwość pisania, ~ 100 na sekundę (ok, to nie jest tak wysoka, ale wciąż ..), jednocześnie jest w stanie obsłużyć zapytania, które zwracają około miliona rekordów (może jeszcze więcej)
Samo dane są bardzo proste, są to tylko pomiary elektroniczne. Niektóre muszą być mierzone z wysoką częstotliwością (~ 100 milisekund), a inne co 1 minutę.
Czy ktoś, kto użył czegoś takiego jak ten komentarz na plusy i minusy metody, której użyli?
(Oczywiście jest to bardzo specyficzny scenariusz, więc zdecydowanie nie ma na celu włączenia tego, co jest najlepszym pytaniem o bazę danych).
dane próbki:
{ _id: Date(2013-05-08 18:48:40.078554),
V_in: 2.44,
I_in: .00988,
I_max: 0.11,
},
{_id: Date(2013-05-08 18:48:40.078325),
I_max: 0.100,
},
{ _id: Date(2001-08-09 23:48:43.083454),
V_out: 2.44,
I_in: .00988,
I_max: 0.11,
},
Dziękuję.
Czy Twoje punkty pomiarowe mają jakieś powiązania? Czy znaczniki czasu są unikalne dla pomiaru lub czy wiele pomiarów (różnych parametrów) ma dokładnie taki sam znacznik czasu? Jaka jest wymagana rozdzielczość znacznika czasu (milisekundy, mikrosekundy itp.)? – engineerC
freq. timestamp ~ 100millis i planując użyć timestamp jako unikalnego Id jeśli to możliwe (noSQL) Będę aktualizować pytanie. – xcorat