[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