kurzes Update zum aktuellen Stand meiner Umstellung auf reine DB-only-Logik (keine In-Memory-Strukturen / JSON mehr im RAM, alles läuft über SQL-Schicht).
Aktueller Zwischenstand – Kurz-Checkliste
Nur noch DB-Lesen → ja (komplett über SQL-Abstraktionsschicht)
Nur noch DB-Schreiben → ja
Berechnungen → fast komplett in SQL (Views, CTEs, Window-Funktionen, …)
Datenbank-Statistik (Stand heute)
Name
Anzahl
Tabellen
68
Views
6
Indizes
19
Spalten gesamt
716
Datenpunkte (Zeilen)
28.584
Funktionsmodule – Status
STATS (Auswertungen / Aggregationen) → nur noch DB → fertig
EOD (End-of-Day) Berechnungen → ja
Prognose-Engine → ja
Wetterberechnungen (historisch + aktuell) → ja
KI-Modul 1 → ja
KI-Modul 2 → noch diverse Bugs (hauptsächlich Edge-Cases)
KI-Modul 3 → ja
Physics Engine (physikalische Modelle) → noch nicht komplett
Warnungen allgemein → ~80%
Frostwarnung → ja
Schneewarnung / Schmelzmodell → nein
MPPT Clipping → ja
Akku Clipping (SoC-Ramp etc.) → ja
Wetter-Fusion (Multi-Source) → ja
ML-basiertes Wetter-Modell → nein (steht noch aus)
Astronomische Berechnungen (Sonnenstand etc.) → ja
Externe Sensoren (MQTT / REST) → ja
Automatisierte Routinen / Jobs → ~70% portiert
Sonstiges / Infrastruktur
Fehlerlogging (eigenes Log) → ja
Fehler im Home Assistant Log → ja (wird noch reduziert)
Fallback / Graceful Degradation → ja
Startzeit der Integration → ~5 Sekunden (akzeptabel)
Blocking Calls → nein (alles async / await)
SQL-Injection-Schutz / manipulierbar → ja (Prepared Statements + Validierung)
Json → SQLite-Migration Skript → ja, aber noch zu langsam (~30 min bei 28k Zeilen → Optimierung läuft)
x86 Plattform → voll funktionsfähig
ARM (z. B. RPi, ODROID, …) → bedingt (ein paar Performance- & Timeout-Themen)
Proxmox-Umgebung → nein (Timeout-Probleme bei großen Migrationen → wird noch gefixt)
SQL-Schicht – Features
Batch- & Single-Commits → ja
Vollständiges CRUD → ja
Singleton-Pattern für STATS → ja
DB-Schema-Management (Versionierung) → ja
Debug-Query-Logging → ja
BLOB-Unterstützung → nein (aktuell nicht benötigt)
SQL Data-Manager (Abstraktion) → ja
Nächste Meilensteine (Priorität absteigend):
ML-Wetter-Modell einbauen
Schneewarnung / Schmelzphysik fertigstellen
Physics Engine komplettieren
Migrationsskript beschleunigen (< 5 min Ziel)
KI-2 Bugs wegfixen
ARM & Proxmox stabil bekommen
Zara
HINWEIS:
Proxmox macht aktuell noch Probleme, da Proxmox keine Rückmeldung bekommt wenn ein Prozess im HA länger dauert (Migration / GRID-Search) > Proxmox denkt " Container hängt" und würgt ihn ab. Besonders, da das Migrationsskript und Grid-Search) im RAM laufen. Proxmox denkt " ohh 100% Auslastung da stimmt was nicht"
Auf x86 und ARM kein Problem, da HA selber nicht einfriert sondern regelmäßig einen Flag bekommt " Alles gut"
Macht es nicht mehr Sinn, das Alle erstmal mit einem Clean Install anfangen und von diesem Punkt aus erstmal einige Wochen der Fokus auf Bug Tracking und Fixing liegt - also Stabilität/Prognose-Genauigkeit vor zusätzlichen Features…? Also das Script komplett von der Liste streichen…
Ich denke mal, das Tom versucht, diesen Neustart zu verhindern.
Da dieses Daten neu sammeln nicht sinnvoll ist. Man brauch in der Tat viele Daten und dann immer neu starten ist nicht die Lösung.
Heute schaut es so bei mir aus.
Anfänglich sehr Sonnig mit einer Regenpause und dann nochmal klarer Himmel.
Aber da ich SSO habe und ab ca. 15 Uhr sind die Module im Schatten, flacht es zum Abend immer ab.
kurze frage:
ich hab nen Huawei SUN2000-10KTL-M1 wechselrichter, der liefert nur die dc eingangsleistung. die leistung der einzelnen strings muss ich berechnen, aus der spannung und ampre der stringes. nun hab ich gesehen, das die aktuelle gesamtleistung der strings immer höher ist, als die vom wechselrichter angezeigt. es eine differenz zwischen 50 und 100 watt , bei diesem wetter.
dadurch kommt auch diese meldung in sfml-states zustande: Abweichung: Gruppen-Summe (3.750 kWh) vs. Tagesertrag (3.320 kWh) = 13.0%
hatte auch schon 38%
die frage ist jetzt, was ist gebe ich am besten jetzt in Solar Forecast ML beim Leistungs-Sensor (W) ein, die vom wechselrichter oder die errechnete? damit die werte und prognosen besser stimmen/passen.
Die Diverenz in Stats kommt zustande, weil im SFML die DC Werte der Gruppen drin sind, man in Stats aber die AC Werte eingibt/angezeigt bekommt.
In Stats gehst ja am Ende um den echten (AC) Ertrag deiner Anlage.
Die Diverenz sollte kleiner werden, je besser die Anlage ausgelastet ist, bei Bewöklgung und 10% Auslastung etc. schlagen dann natürlich die Wechselrichterverluste, Startspannung etc. zu.