03-08-2021, 09:19 AM
W moim systemie dane strasznie dużo ważą. Kończy mi się wolne miejsce, pomimo użycia best compression na indeksie. Czy jest jeszcze jakaś możliwość zmniejszenia ilości danych w systemie ?
zmniejszenie danych w elasticsearch
|
03-08-2021, 09:19 AM
W moim systemie dane strasznie dużo ważą. Kończy mi się wolne miejsce, pomimo użycia best compression na indeksie. Czy jest jeszcze jakaś możliwość zmniejszenia ilości danych w systemie ?
Rozmiar danych w elasticsearch jest bardzo ważnym zagadnieniem. Jest kilka rzeczy, na które które warto spojrzeć aby dane ważyły mniej.
Jeżeli compression jest w indeksie ustawione na best_compression to mimo wszystko jest jeszcze kilka kroków. Polecam sprawdzić : - Czy indeksujemy pole _all , albo _source . Ponieważ na bazie komunikatu przechowujemy całą jego stukturę, to pole z "całością" jest nadmiarowe. Nie indeksujmy go. - Być może są jeszcze pola, która możemy wykluczyć ? - Ale najważniejsze, czy zadbaliśmy o dobre dopasowanie typów pół do naszych danych ? Jeżeli indeksujemy liczby i niewielkiej wartości to rozrzutnością jest stosowanie do ich zapisu typu float. Być może "short" nam całkowicie wystarczy ? https://www.elastic.co/guide/en/elastics...umber.html Zmiany pól ustawiane są w mappingu indeksu. Nie jest to łatwa operacja, ale zobacz jaki daje efekt. Wykonaliśmy testy zajmowanych danych na bazie analizy ruchu sieciowego. Wstępnie dane wyglądały tak: Default mapping, który używa longów: "count": 2115314, "size": "878.2mb", "size_in_bytes": 920927930 920927930/2115314 wielkość jednej próbki na dysku 435.36 - bajtów Po lekkiim zmodyfikowany mappingu - bez straty jakości : "count": 4808119, "size": "1.2gb", "size_in_bytes": 1301856019 1301856019/4808119 wielkość jednej próbki na dysku 270 - bajtów Czyli oszczędzamy 40% miejsca na każdej próbce ! A co w przypadku, gdy nadal brakuje miejsca na dysku ? Wtedy musimy spojrzeć na moduł Archiwum naszego projektu Energy Logserver. https://kb.energylogserver.pl/en/latest/...chive.html Moduł przenosi dane z indeksów do silnie skompresowanych plików płaskich. W GUI można stworzyć zadanie archwizacyjne oraz zadanie Recovery. Co ciekawe, to fakt, że system pozwala wyszukiwać dane w plikach archiwalnych, bez ich otwierania. |
|