Cześć,
potrzebuję pomocy z migracją bazy HA. Jestem stosunkowo świeżym użytkownikiem, tj. od około 1,5 roku. Po pewnym czasie zauważyłem, że moja baza niebezpiecznie szybko rośnie. Wtedy dopiero poczytałem, douczyłem się i okroiłem recordera oraz zainstalowałem influxdb.
Jednak szkoda mi tych danych z około roku i chiałbym je zostawić zanim skrócę zapis recordera i obetnę bazę.
Teraz pytanie właściwe: czy ktoś by mnie mógł podprowadzić co mogę zrobić żeby zmigrować te dane? Tylko słyszałem np. o alternatywie MariaDB, może zostać na influxie ale próbowałem coś przenieść i nie mogę sobie poradzić. Od pewnego czasu chyba w HA jest coś takiego jak zapis danych historycznych, który zajmuje mniej miejsca ale obawiam się, że nie mam tych danych bo był włączony recorder. Baza HA w tej chwili ma około 30GB i bardzo szybko rośnie. Prawie 1000 encji
30GB 1000 encji co ty tam kolekcjonujesz?
w sensie za dużo encji czy za dużo GB jak na tą ilość encji?
Siedzi na tym smarthome Sporo encji jest “pustych”, sporo jest wyłączonych z recordera (np. switche).
Swoją drogą jeden licznik energii wystawia chyba z 18 encji a mnie potrzebne głównie 1 lub 2, ale np. samochód wystawia 16, kosiarka 22, każdy ld2410 wystawia ponad 50 … i tak leci. Samego MQTT mam ponad 500.
Niemniej problem pozostaje aktualny - co z tym zrobić.
Niemniej problem pozostaje aktualny - co z tym zrobić.
Przeniesienie 30 giga do innej bazy to już musi być wyczyn, o ile możliwy.
Rzadko kto chyba używa/używał influxdb dla HA.
Nie wiemy na czym masz postawiony HA i jaki?
Swoje kroki zaczął bym od oczyszczenia bazy.
Częściowo jak najbardziej mogę oczyścić ale nie spodziewam się zmniejszenia o więcej niż 30%. W tym rzecz, że chcę te dane historyczne przenieść a potem wyczyścić bazę i skrócić czas recordera do rozsądnych rozmiarów.
Postawione na starym lapku: Debian+Supervisor
Teraz jest tak:
recorder:
purge_keep_days: 7300 # 20 lat (7300 dni)
commit_interval: 600 # Co 10 minuta
include:
domains:
- sensor
- person
- device_tracker
- climate
exclude:
domains:
- button
- switch
- update
- number
entity_globs:
- binary_sensor.530i*
- sensor.530i_xdrive_remaining_*
#od liczników energii
- sensor.electricity_meter_total_forward_reactive_energy_*
- sensor.electricity_meter_frequency_*
- sensor.electricity_meter_power_factor_phase_-*
- sensor.electricity_meter_total_cost_balanced_*
- sensor.electricity_meter_total_cost_*
- sensor.electricity_meter_total_forward_reactive_energy_*
# - sensor.electricity_meter_total_forward_active_energy_*
- sensor.electricity_meter_total_reverse_active_energy_*
- sensor.electricity_meter_total_reverse_reactive_energy_*
- sensor.load_*
- sensor.swap_*
#od ld2410
- sensor.ld2410*
- button.ld2410*
- select.ld2410*
- switch.ld2410*
- number.ld2410*
To chyba tłumaczy wszystko…
Pewnie przegapiłeś moment kiedy wprowadzono statystyki długoterminowe (sierpień 2021). Nie potrzeba mieć bazy z gęstymi danymi dłuższej niż kilka dni, a ulepszenia w obsłudze standardowej sqlite3 z ostatnich lat umożliwiają już rozsądną pracę bez zewnętrznej bazy.
To to ja wiem
Tylko jak się z tego wycofać, żeby nie stracić danych ??
Szczerze? nie mam bladego pojęcia.
Zrób sobie backup i eksperymentuj.
Pierwsze co bym zrobił to skrócił ten okres na tyle aby się przekonać czy przeliczenie bazy przy czyszczeniu danych usunie dane historyczne (tzn. to że usunie to w sumie też wiadomo, ale o tym czy masz też rzadkie dane orócz gęstych, to chyba powinieneś wiedzieć sam).
Gdyby chodziło o sqlite3 to bym był pewien, że tak należy zrobić, ale o influx to mam zerową wiedzę…
niestety tego się spodziewałem