Gå til indhold

Performance Optimering i Home Assistant

Performance Database Avanceret

Et langsomt Home Assistant er frustrerende. Dashboards der tager evigheder at loade, automationer med forsinkelse, og en UI der hakker. Heldigvis kan de fleste problemer løses med den rette konfiguration.


ProblemSymptomerÅrsag
Langsom UIDashboard loader langsomtStor database, mange entities
Treg historikGrafer tager lang tidSQLite flaskehals
Høj CPUKonstant 80%+ belastningFor mange integrations polling
SD-kort slidKorrupt database, crashesFor mange database-skrivninger
Langsom opstart5+ minutter til bootStor database, mange add-ons

Recorder er Home Assistants historik-motor. Den skriver alt som standard - det er ofte for meget.

# configuration.yaml
recorder:
purge_keep_days: 7 # Behold kun 7 dages historik
commit_interval: 1 # Skriv til database hvert sekund
auto_purge: true # Automatisk oprydning kl. 04:12
# configuration.yaml
recorder:
purge_keep_days: 7
exclude:
# Domæner der genererer MEGET data
domains:
- automation # Automationer behøver ikke historik
- updater # Opdateringsstatus
- camera # Kamera-states (billederne gemmes ikke)
# Specifikke entity patterns
entity_globs:
- sensor.sun_* # Sol sensorer (opdateres konstant)
- sensor.*_battery # Batteri (ændrer sig langsomt)
- binary_sensor.updater
# Individuelle entities
entities:
- sensor.date_time
- sensor.time
- sensor.uptime

Alternativ tilgang - kun gem det du faktisk bruger:

# configuration.yaml
recorder:
purge_keep_days: 14
include:
domains:
- sensor # Sensorer
- climate # Termostater
- light # Lys (for energi-tracking)
entities:
- person.brian # Tilstedeværelse
- binary_sensor.motion_stue
exclude:
# Undtagen disse fra inkluderede domæner
entity_globs:
- sensor.*_battery
- sensor.*_linkquality
Entity TypeHvorfor
sensor.*_batteryÆndrer sig langsomt
sensor.*_linkqualityZigbee signal - sjældent nødvendigt
sensor.date_timeOpdateres hvert sekund
binary_sensor.updaterUnødvendigt
automation.*Trigger-historik er sjældent nyttig
script.*Samme som automation
*_last_seenZigbee last seen timestamps

For større installationer anbefales MariaDB fremfor SQLite.

SituationAnbefaling
< 50 entitiesSQLite er fint
50-200 entitiesSQLite med optimering
200+ entitiesOvervej MariaDB
Raspberry Pi + SD-kortMariaDB på ekstern SSD
Langsomme graferMariaDB hjælper
  1. Gå til Indstillinger → Add-ons → Add-on Store

  2. Søg “MariaDB” og installer

  3. Konfigurer add-on:

    databases:
    - homeassistant
    logins:
    - username: homeassistant
    password: "dit-stærke-password"
    rights:
    - username: homeassistant
    database: homeassistant
  4. Start add-on

  5. Opdater configuration.yaml:

    recorder:
    db_url: mysql://homeassistant:dit-stærke-password@core-mariadb/homeassistant?charset=utf8mb4
    purge_keep_days: 14
  6. Genstart Home Assistant

For bedre performance, tilføj options i add-on config:

{
"databases": ["homeassistant"],
"logins": [
{
"username": "homeassistant",
"password": "dit-password"
}
],
"rights": [
{
"username": "homeassistant",
"database": "homeassistant"
}
],
"options": {
"innodb_buffer_pool_size": "256M",
"max_connections": 200
}
}
ParameterVærdiBeskrivelse
innodb_buffer_pool_size256M-512MRAM til database cache
max_connections200Samtidige forbindelser

Deaktiver Logbook for Irrelevante Entities

Sektion kaldt “Deaktiver Logbook for Irrelevante Entities”
# configuration.yaml
logbook:
exclude:
domains:
- automation
- script
- group
entity_globs:
- sensor.*_battery
- sensor.*_linkquality
# configuration.yaml
history:
exclude:
domains:
- automation
- script
- updater
entity_globs:
- sensor.*_battery

Mange integrationer poller for ofte:

# configuration.yaml
# Eksempel: Reduce polling for template sensorer
sensor:
- platform: template
sensors:
daglig_forbrug:
friendly_name: "Dagligt Forbrug"
value_template: "{{ states('sensor.energi') }}"
# Opdater kun hvert 5. minut
scan_interval: 300
  1. Gå til Indstillinger → Enheder & Tjenester

  2. Gennemgå alle integrationer

  3. Fjern/deaktiver dem du ikke bruger

  4. Særligt: Cloud-baserede integrationer der poller


Reducer log-niveau for at spare resources:

# configuration.yaml
logger:
default: warning # Kun advarsler og fejl
logs:
homeassistant.core: warning
homeassistant.components.mqtt: warning
homeassistant.components.zha: warning
# Debug kun for fejlfinding:
# homeassistant.components.automation: debug
# configuration.yaml
# Kun hvis du ikke bruger dem:
discovery: # Automatisk opdagelse
zeroconf: # mDNS
ssdp: # UPnP discovery
AnbefalingHvorfor
Brug SSD10x hurtigere end SD-kort
USB 3.0 adapterUndgå USB 2.0 flaskehals
Aktiv kølingPi throttler ved 80°C
Overclocking (forsigtig)Kan give 20%+ boost

# Automation til at tracke database størrelse
sensor:
- platform: sql
db_url: mysql://homeassistant:password@core-mariadb/homeassistant?charset=utf8mb4
queries:
- name: Database Size
query: "SELECT ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) as size FROM information_schema.TABLES WHERE table_schema = 'homeassistant'"
column: "size"
unit_of_measurement: "MB"
# configuration.yaml
sensor:
- platform: systemmonitor
resources:
- type: processor_use
- type: memory_use_percent
- type: disk_use_percent
arg: /
- type: load_1m
- type: load_5m

  • Tjek database størrelse
  • Se efter errors i logs
  • Verificer automationer kører
  • Ryd op i ubrugte entities
  • Gennemgå recorder excludes
  • Opdater integrationer

Hvis databasen er blevet for stor:

# Developer Tools → Services
service: recorder.purge
data:
keep_days: 3
repack: true

  • Reducer purge_keep_days til 7
  • Ekskluder automation, script domæner
  • Ekskluder *_battery, *_linkquality entities
  • Reducer logger til warning
  • Gennemgå alle entities - ekskluder unødvendige
  • Tjek polling-intervaller på integrationer
  • Deaktiver ubrugte integrationer
  • Tilføj system monitoring
  • Migrer til MariaDB
  • Installer på SSD (Raspberry Pi)
  • Fine-tune MariaDB parameters
  • Opsæt InfluxDB for langtids-data

Ofte stillede spørgsmål

Hvor mange dages historik bør jeg beholde?
7 dage er fint for de fleste. Hvis du bruger energi-grafer eller statistik, kan 14-30 dage give mening. Husk at ekskludere unødvendige entities - det er vigtigere end antallet af dage.
Mister jeg historik når jeg skifter til MariaDB?
Ja, du starter med en tom database. Det er teknisk muligt at migrere data, men det er komplekst og fejlbehæftet. De fleste starter bare forfra.
Hvorfor er min Raspberry Pi langsom?
SD-kort er langsomme til database-operationer. Skift til en ekstern SSD via USB 3.0, installer MariaDB, og tilføj aktiv køling. Det gør en kæmpe forskel.
Kan for mange integrationer gøre HA langsom?
Ja, især cloud-baserede integrationer der poller ofte. Gennemgå dine integrationer og deaktiver dem du ikke bruger. Tjek også om nogle integrationer har unødvendigt høj poll-frekvens.

Backup & Sikkerhed

Beskyt dit optimerede system.

Se guide →

Dashboard Design

Byg hurtige, lette dashboards.

Se guide →


Sidst opdateret: December 2025


Kommentarer