[vz-dev] Performance - Umstellung DB Schema

Andreas Goetz cpuidle at gmail.com
Fri Oct 2 12:55:45 CEST 2015


> ich glaube das würde bei Impulszählern Probleme mit sich bringen.
> Wenn jeder Impuls in die Datenbank abgespeichert wird, dann würden
Impulse <1 Sekunden nicht mehr 100% aufgelöst werden.

Richtig. Aber wer macht denn mehrere MW-Speicheranfragen pro Sekunde?

> 1. Wenn in einer Sekunde mehrere Werte anfallen, müssen sie wohl
zusammengefasst werden?

Dann muss im vzlogger aggregiert werden. Die Aggreagation in die Middleware
zusätzlich einzubauen wäre sehr hässlich und doppelt gemoppelt. Die
Middleware würde auf erneute Speicheranfrage mit Fehler reagieren- das wäre
zumindest die einfache Möglichkeit.

> 2. Wie kann ich eine bestehende Datenbank möglichst einfach auf Sekunden
umstellen?

Dafür würde es ein Migrationsskript geben.

> Für das API liesse sich das transparent halten oder- das wäre eigentlich
mein Vorschlag- wir stellen auch das API auf Sekunden um. Der Change würde
die Kompatibilität von vzlogger bis zu jedem Client beeinflussen.

Nach einiger Überlegung: wir könnten das API natürlich auf lassen wie
gehabt- macht für die Clients allerdings weniger transparent woher die
Fehler kommen wenn plötzlich nicht mehrere Werte pro Sekunde gespeichert
werden können.

Viele Grüße,
Andreas




2015-10-02 11:13 GMT+02:00 Rudolf Reuter <reuterru at arcor.de>:

> Hallo Andreas,
>
> ich empfinde das als vernünftigen Vorschlag.
>
> Nur ein paar Fragen dazu:
> 1. Wenn in einer Sekunde mehrere Werte anfallen, müssen sie wohl
> zusammengefasst werden?
>
> 2. Wie kann ich eine bestehende Datenbank möglichst einfach auf Sekunden
> umstellen?
>
> Viele Grüße, Rudolf
>
> Am 02.10.15 um 10:49 schrieb Andreas Goetz:
>
> Hallo Entwickler,
>
> ich beobachte aktuell ein paar Probleme mit der Performance bei Nutzung
> der Aggregation Root Cause scheint darni zu bestehen dass alle Anfragen auf
> die Aggregationstabelle ziemlich aufwändig Unix Timestamps (sec) in VZ
> Timestamps (ms) hin- und herrechnen müssen.
>
> Wenn wir- das wäre der Vorschlag- unser DB Schema auf Unix Timestamps
> umstellen können und auf Sekundenauflösung gehen dann würden wir eine
> erheblcihe Menge von MUL/DIV aus dem SQL Server rausnehmen und auch an
> vielen Stellen den Code vereinfachen können.
>
> Für das API liesse sich das transparent halten oder- das wäre eigentlich
> mein Vorschlag- wir stellen auch das API auf Sekunden um. Der Change würde
> die Kompatibilität von vzlogger bis zu jedem Client beeinflussen.
>
> Wärt ihr mit so einem Vorschlag einverstanden? Wir könnten den synchron
> als vz/logger 0.5 umsetzen.
>
> Viele Grüße,
> Andreas
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-dev/attachments/20151002/e694be72/attachment.html>


More information about the volkszaehler-dev mailing list