[vz-dev] SQL Abfrage aktueller Verbrauch sehr langsam

Sven peitz sven.peitz at gmx.net
Sun Sep 15 08:43:50 CEST 2013


Hallo,

leider kann ich derzeit nicht weiter testen, weil mein Provider den 
Zugriff wegen zu hoher SQL Last gesperrt hat.  ;-(
[X] MySQL-Last (Wartezeit auf Festplattenzugriff)

[X] MySQL-Last lesend (SELECT-Statements)

[X] Kontinuierlich hohe Last

Also sind die 6 Sekunden verursacht durch Auslastung des Servers.
Dem Vorschlag kann ich jetzt nicht folgen. SQL ist nicht mein täglich 
Brot ;-)

Select value where channel order by id desc limit 1


Aber den Vorschlag über die Middleware zu gehen würde ich gerne 
aufgreifen wenn ich wüsste wie.

Eigentlich brauche ich ja nur den zuletzt in der Datenbank eingetragenen 
Wert zur ID.
Ich muss jetzt aber erst mal warten bis der Zugriff wieder frei ist.

Gruß
Sven

Am 14.09.2013 11:40, schrieb Thorben Thuermer:
> On Sat, 14 Sep 2013 11:07:20 +0200
> Sven peitz <sven.peitz at gmx.net> wrote:
>> für mein neues Verbrauchs oder Vergleichsanzeige Projekt der aktuellen
>> PV Einspeisung und Bezug vom EVU frage ich in einem PHP script die
>> Volkszähler Datenbank ab.
> [...]
>> $result1=mysql_query("SELECT value FROM data WHERE id = (select max(id)
>> FROM data WHERE channel_id LIKE  '14')");
> auch zu beachten,
> was genau in data.value steht ist vom channel-type abhaengig...
> diese loesung funktioniert nur, wenn leistungswerte geloggt werden.
>
>> Diese Anfrage dauert ca. 6-7 Sekunden. Hat jemand eine Idee wie man
>> dieses beschleunigen kann?
> die anfrage ohne subquery formulieren?
> (subqueries sind fuer nicht sql-er zwar oft intuitiver,
>   aber meist nicht effizient.)
>
> select value where channel order by id desc limit 1
>
>> Gruß
>> Sven
> - Thorben

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-dev/attachments/20130915/10dea8ec/attachment.html>


More information about the volkszaehler-dev mailing list