Witam,
W ramach projektu uczelnianego będziemy tworzyć prototyp aplikacji zbierającej, analizującej i wizualizującej dane z czujników pomiarowych. Dane mają być dostarczane przez HTTP, czujników ma być kilkaset lub więcej. Dodatkowe ograniczenia to język - Java, baza danych - ma być nierelacyjna, "raczej mała" (do 1 tys. zapisów/s, do 10TB). W sieci znalazłem informację o systemach OLAP, ale wszystkie, do których dotarłem bazują na bazach relacyjnych.
W związku z tym, że nie mam żadnego doświadczenia z podobnymi systemami, proszę o sugestie jakie narzędzia, frameworki itp. będą odpowiednie do takiego zadania.
Myślę, że ważnym aspektem wśród wymagań będą u ciebie dwie rzeczy:
-
Online czy offline - Czy twoja wizualizacja ma się zmieniać dynamicznie? Czy też cyklicznie, jednorazowo dostaniesz pewną ilość danych
-
Okres, co jaki będą u ciebie odbierane dane - Jeśli będzie krótki i wizualizacja ma być online, no to wówczas obliczenia nie mogą być zbyt skomplikowane, żeby zdążyły się wykonać (mówię tu także o połączeniu z bazą danych o której wspomniałeś).
Dane mają być dla różnych czujników będą dostarczane mniej lub bardziej regularnie w "niewielkich odstępach czasowych", łącznie do kilkuset na sekundę. System ma być gotowy również na odbieranie danych przesyłanych w paczkach. Komunikacja będzie inicjowana przez urządzenia pomiarowe. Wizualizacja ma być aktualizowana na bieżąco tzn. po przyjściu danych z odpowiedniego czujnika, natomiast analityka i wykrywanie anomalii ma być wykonywana na danych przechowywanych w bazie.
W sieci znalazłem informacje o tzw. time-series databases np. InfluxDB, które wydają się być odpowiednie do takiego systemu. Byłbym wdzięczny za opinie czy warto iść w tym kierunku.