fix telemtrie na dahsbaordu (15min misto 1h)
Some checks failed
deploy / deploy (push) Failing after 1m42s
test / smoke-test (push) Successful in 2s

This commit is contained in:
Dusan Vojacek
2026-04-10 20:48:41 +02:00
parent 920d9ff40c
commit eb8dd0368f
11 changed files with 131 additions and 23 deletions

View File

@@ -266,6 +266,15 @@ CREATE TABLE telemetry_inverter (
-- SELECT create_hypertable('telemetry_inverter', 'measured_at');
```
### Continuous aggregates a views (výkon střídače pro UI)
Z `telemetry_inverter` počítá TimescaleDB materializované agregáty (viz `db/migration/V011__indexes_and_aggregates.sql`, `V039__telemetry_inverter_15m_aggregate.sql`):
- **`telemetry_inverter_hourly`** hodinové průměry + `LAST(battery_soc_percent, measured_at)`; čtení přes view **`vw_telemetry_hourly_7d`**.
- **`telemetry_inverter_15m`** čtvrthodinové bucket odpovídající 15min slotům EMS; čtení přes **`vw_telemetry_15m_7d`** (definice v **`db/views/R__vw_telemetry_15m_7d.sql`**, repeatable).
PostgREST role `ems_anon``SELECT` na tyto views (ne na samotné CA); u view nad CA je `security_invoker = false`, stejně jako u `vw_telemetry_hourly_7d` (viz `db/views/R__z_postgrest_ems_anon_grants.sql`).
### `telemetry_ev_charger`
Stav EV nabíječek.