Purge de la base de donnees HA

Question stupide pour éviter une surcharge de la base de données de HA :

Est il possible de la délocaliser ?

Effectivement, j’ai vu des truc où il était possible de modifier le nom de la base dans le fichier de configuration

Mais, par exemple, j’ai un serveur MySQL qui tourne sur une autre VM
Serai il possible de créer une database sur ce serveur et de configurer HA pour l’utiliser
Comme ça, il n’y a plus de fichier de DB en local

Du coup, plutôt que rationaliser la taille de la base, tu va cumuler à la fois les effets négatifs de ‹ beaucoup de données › et ajouter la latence réseau…

effectivement, vu comme ça
c’etait une question ouverte

ça n’a donc aucun intérêt

Salut !
J’ai recement ajouté de quoi monitorer la taille de ma base de donnée sur HA et stupeur : elle est énooorme ! :astonished: 9Gb !!!
J’avais pourtant configuré Recorder il y a bien longtemps. Mais j’imagine que les ajout d’entité au fur et à mesure ont fait que… bref.
J’ai reconfiguré Recorder :

recorder:
  # gere les donnees sauvegardees en DB
  auto_purge: true
  purge_keep_days: 7 # durée de conservation des données
  exclude: # permet d'exclure tous les éléments listé ci-dessous de votre base de données
    domains: # filtrage par domaine
      - automation
      #- binary_sensor
      - camera
      - device_tracker
      - group
      - input_datetime
      - light
      - person
      - script
      #- sensor
      - sun
      #- switch
      - vacuum
      - weather
      - zone
    entities: # filtrage par entités spécifiques
      #- binary_sensor.phone_1_en_charge
      #- binary_sensor.phone_2_en_charge
      - binary_sensor.updater
      - sensor.666_weather_alert
      #- sensor.aqaratemphum1_battery_level
      #- sensor.aqaratemphum2_battery_level
      #- sensor.aqaratemphum3_battery_level
      #- sensor.aqaratemphum4_battery_level
      - sensor.daylight
      - sensor.hacs
      - sensor.last_boot
      - sensor.samba_backup
      - sensor.water_sensor_battery_level
      - sensor.date
      - switch.fluxer_cuisine
    entity_globs:
      - binary_sensor.phone_*_en_charge
      - sensor.aqaratemphum*_battery_level
      - sensor.ma_ville_*
      - sensor.phone_*
      - sensor.prixcarburant_*
      - sensor.robot_aspirateur_*
    event_types: # filtrage par evenements
      - call_service 

J’ai ensuite voulu jouer avec recorder.purge en y précisant 4 jours puis 1 jour. Alors visiblement, ca à l’air de supprimer les vieilles données.
Mais la taille de ma base de donnée de diminue pas et reste à 9Gb ! J’ai pourtant passé repack à True…

Des idées ?

1 « J'aime »

Salut,

Tu activé l’option repack qui justement retaille le fichier ?

Oui mais rien n’y fait: la DB reste à 9Gb

Dans ce cas, regarde les entrées les plus présentes…

2 « J'aime »

Du coup, je m’en suis sorti en… supprimant la base de donnée… => Je suis passé à une DB de 145Mb :smiley:
J’ai au passage remarqué que l’addon SAMBA SHARE ne marchait plus : ayant activé le firewall en mode RESTRICTED sur mon NAS, il avait bloqué les port SAMBA et donc l’addon n’arrivait plus à accéder à mon NAS. Résultat : les backup s’entassaient sans être supprimés :s
J’ai pu ramener ma carte SD à 21%

Surement un peu violent de tout virer mais bon…
Prochaine étape : remplacer la carte SD :wink:

Oui très violent… J’aurais aimé ne pas en arriver là… Mais je n’arrivais pas à accéder à sqlite via ssh… Et comme lors de mes tests j’étais prêt à purger jusqu’à -1 jour, je me suis dis : après tout quelle est la différence avec supprimer la base ? :smiley:

Oui j’y pense pour le ssd. J’ai HA depuis un an et je n’ai eu aucun problème avec la SD… Pour le ssd, n’importe lequel qui traîne d’un vieux pc ?

Avec un PI3, tu as tout intérêt à prendre du msata… c’est moins gourmand en alimentation.
Après si tu as le matos qui traine et les bons adaptateurs, ça s’essaye, les bonnes surprises ça arrive aussi

Bonsoir,
Par défaut le « days to keep » est à combien ?
Lorsque l’on utilise influxDB, les historiques viennent de la base sqlLite ou d’influxDB?

Bob

C’est 10 jours, tu peux voir les valeurs par défaut dans la doc.
InfluxDB et SqlLite c’est totalement séparé par défaut Influx garde à vie.

1 « J'aime »

Et les données historiques sont issues de la base configurée dans le recoder

Ok, merci, mais je ne vois pas influx DB dans la liste :
The supported database solutions are:

MariaDB ≥ 10.3
MySQL ≥ 8.0
PostgreSQL ≥ 12
SQLite ≥ 3.31.0

J’utilise Grafana mais il me reste à trouver la solution pour pouvoir afficher mes graphiques sur mon téléphone, « 401 : Unauthorised » mais c’est un autre sujet :wink:

Bob

InfluxDB ce n’est pas une base SQL relationnelle et ne peut être utilisée en tant que « recorder ».
Ca ne marche pas du tout de la même façon.

Pour le recorder et les infos stockées par HA dont les historiques et les stats, c’est dans une des bases listées.

Oui, elle stocke par unité de mesure / entitiy il me semble.
C’est Top en tous les cas.
Ma base « home-assistant_v2.db » fait moins de 500Mo, tout petit par rapport à ce que je connais au taf :slight_smile:

A mon dernier nettoyage de DB, je suis passé de 400Mo à 37Mo pour 7 jours de stockage.
Virer les l’enregistrement des entités inutiles ca aide beaucoup. Surtout avec la freebox qui bombarde le status des toutes les appareils qu’elle connait toutes les quelques sec .

Mais c’était sur la base avant les statistiques et les historiques.
Je suis remonté à 160Mo maintenant

L’usage d’influxdb fonctionne sous forme d’intégration InfluxDB - Home Assistant

Je suis un peu perdu sur la configuration

Je vais partir avec seulement une inclusion :

#Base de données
recorder:
  auto_purge: true
  commit_interval: 20
  purge_keep_days: 7
  include:
    entities:
      - sensor.alarm_status

  exclude:
    domains:
      - automation
      - alarm_control_panel
      - calendar
      - camera
      - climate
      - device_tracker
      - group
      - media_player
      - person
      - proximity
      - scene
      - script
      - sun
      - switch
      - timer
      - weather
      - zone
    event_types:
      - automation_triggered
      - script_started
      - service_registered
      - home_assistant_start
      - home_assistant_stop
    entities:
      - sun.sun
      - sensor.last_boot
      - sensor.date
      - sensor.time
1 « J'aime »