Możesz przeczytać w przykładzie użycia serii ElasticSearch z użyciem przykładów: here.
Ale myślę, że kolumnowe bazy danych lepiej pasują do twoich wymagań.
Rozumiem, że ElasticSearch działa najlepiej, gdy zapytania zwracają niewielki podzbiór wyników, i buforuje takie parametry, które zostaną użyte później. Jeśli te same parametry zostaną użyte ponownie w zapytaniach, może wykorzystać te wyniki z pamięci podręcznej w połączeniu, dzięki czemu wyniki są naprawdę szybkie. Jednak w danych szeregów czasowych zwykle trzeba agregować dane, co oznacza, że będziesz przechodzić wiele wierszy i kolumn razem. Takie zachowanie jest dość uporządkowane i łatwe do modelowania, w którym to przypadku nie wydaje się, aby ElasticSearch działał lepiej niż w kolumnowych bazach danych. Z drugiej strony może zapewniać łatwość obsługi, mniej tuningu itp., Z których wszystkie mogą sprawić, że będzie bardziej preferowany.
Bazy kolumnowe zazwyczaj zapewniają bardziej wydajną strukturę danych dla szeregów czasowych. Jeśli twoje struktury zapytań są znane z dużym wyprzedzeniem, możesz użyć Cassandry. Pamiętaj, że jeśli twoje zapytania będą prośby bez użycia klucza podstawowego, Cassandra nie będzie działać. Może być konieczne utworzenie różnych tabel z tymi samymi danymi dla różnych zapytań, ponieważ szybkość odczytu zależy od sposobu zapisywania na dysku. Musisz nauczyć się jego zawiłości, przykładem serii czasowej jest here.
Inną kolumnową bazą danych, którą można wypróbować, jest rozszerzenie kolumnowe przewidziane dla PostgreSQL. Biorąc pod uwagę, że twój maksymalny rozmiar bazy danych wynosi około 180 * 12 = 2,16 TB, ta metoda powinna działać idealnie i może być najlepszą opcją. Możesz także oczekiwać znacznej kompresji rozmiaru około 3x. Możesz dowiedzieć się więcej na ten temat here.
Zobacz http://stackoverflow.com/a/37133862/3524828 –