<div dir="ltr">Hallo Sirko,<br><div class="gmail_extra"><br><div class="gmail_quote">2014-03-27 15:12 GMT+01:00  <span dir="ltr"><<a href="mailto:mail_ist@nurfuerspam.de" target="_blank">mail_ist@nurfuerspam.de</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div style="font-family:Verdana;font-size:12.0px"><div>
<div>Hi,</div>

<div> </div>

<div>auf meinem Raspi dauert die Monatsausgabe mit 5 channels auch ca. 15 Sekunden, aber nur, wenn das der aktuelle Monat ist, d.h. mit den aktuellen Daten von jetzt. Wenn ich dann einfach den Monat vorher nehme (auf << klicke), dann dauert's etwa 4 Sekunden. Bei der Wochenausgabe sind es immer ca. 9 Sekunden.</div>
</div></div></div></blockquote><div><br></div><div>Wenn ich mir die Statements und Deinen Text anschaue dann scheint das Problem dann aufzutreten wenn Du in den Randbereich der "neuen" Daten kommst. Spannend wäre die Frage ob die Aggregationstabelle mit Daten gefüllt ist und ob Du für den jeweiligen Zoom die richtigen Daten hast. Bei Zoom auf Monat brauchst Du bei z.B. 400 Tupeln also 31 Tage x 24h > 400 eine Aggregation auf Stunden, Tage helfen nicht mehr (da 31 Tage < 400).<br>
<br></div><div>Prinzipiell trotz aller Datenbankzauberei ist auf dem Raspi Datensparsamkeit das beste Mittel...<br><br>vg<br></div><div>Andreas<br></div><div> <br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div><div style="font-family:Verdana;font-size:12.0px"><div>

<div>Für mich sind 15 Sekunden auf dem Raspi aber ok ;-)</div>

<div>Vorher waren es Minuten oder Timeout.</div>

<div> </div>

<div>hier die beiden langsamsten Statements bei mir:</div>

<div> </div>

<div>...<br>
   "debug":  {<br>
        "level":  "1",<br>
        "database":  "pdo_mysql",<br>
        "time":  14.51294,<br>
        "uptime":  171697790,<br>
        "load":  [<br>
            0.73,<br>
            0.35,<br>
            0.25<br>
        ],<br>
        "commit-hash":  "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n",<br>
        "php-version":  "5.4.4-14+deb7u7",<br>
        "messages":  [<br>
        ],<br>
        "queries":  [</div>

<div>...</div>

<div> </div>

<div>{<br>
                "sql":  "SELECT COUNT(1) FROM (SELECT DISTINCT YEAR(FROM_UNIXTIME(timestamp\/1000)), DAYOFYEAR(FROM_UNIXTIME(timestamp\/1000)), HOUR(FROM_UNIXTIME(timestamp\/1000)) FROM data WHERE channel_id = ? AND ( timestamp >= ? AND timestamp < ? OR timestamp >= ? AND timestamp <= ?) UNION SELECT DISTINCT YEAR(FROM_UNIXTIME(timestamp\/1000)), DAYOFYEAR(FROM_UNIXTIME(timestamp\/1000)), HOUR(FROM_UNIXTIME(timestamp\/1000)) FROM aggregate WHERE channel_id = ? AND type = ? AND timestamp >= ? AND timestamp < ?) AS agg",<br>

                "params":  [5,"1393252031493","1393250400000","1395673200000","1395926871726",5,2,"1393250400000","1395673200000"],<br>
                "types":  [],<br>
                "executionMS":  3.6808500289917<br>
            },<br>
            {<br>
                "sql":  "SELECT MAX(timestamp) AS timestamp, SUM(value) AS value, SUM(count) AS count FROM (SELECT timestamp, value, 1 AS count FROM data WHERE channel_id = ? AND ( timestamp >= ? AND timestamp < ? OR timestamp >= ? AND timestamp <= ?) UNION SELECT timestamp, value, count FROM aggregate WHERE channel_id = ? AND type = ? AND timestamp >= ? AND timestamp < ?) AS agg GROUP BY YEAR(FROM_UNIXTIME(timestamp\/1000)), DAYOFYEAR(FROM_UNIXTIME(timestamp\/1000)), HOUR(FROM_UNIXTIME(timestamp\/1000)) ORDER BY timestamp ASC",<br>

                "params":  [5,"1393252031493","1393250400000","1395673200000","1395926871726",5,2,"1393250400000","1395673200000"],<br>
                "types":  [],<br>
                "executionMS":  5.0425570011139<br>
            }</div>

<div> </div>

<div>Die anderen sind im ms-Bereich bzw. höchstens 0.3 bzw 0.6 s</div>

<div> </div>

<div>Grüße</div>

<div>Sirko</div>

<div> 
<div name="quote" style="margin:10px 5px 5px 10px;padding:10px 0 10px 10px;border-left:2px solid #c3d9e5;word-wrap:break-word">
<div style="margin:0 0 10px 0"><b>Gesendet:</b> Donnerstag, 27. März 2014 um 09:23 Uhr<br>
<b>Von:</b> "Andreas Goetz" <<a href="mailto:cpuidle@gmail.com" target="_blank">cpuidle@gmail.com</a>><br>
<b>An:</b> "<a href="http://volkszaehler.org" target="_blank">volkszaehler.org</a> - users" <<a href="mailto:volkszaehler-users@demo.volkszaehler.org" target="_blank">volkszaehler-users@demo.volkszaehler.org</a>><br>

<b>Betreff:</b> Re: [vz-users] Aggregation - inzwischen im Master von volkszaehler.organgekommen? Was fehlt mir?</div><div><div class="h5">

<div name="quoted-content">
<div>
<div>
<div>
<div>
<div>Hallo Bernd,<br>
 </div>
15sec für die Abfrage sind immer noch ziemlich mächtig. Könntest Du das relevante JSON bitte mal raussuchen (Debugkonsole im Firefox mit Ctrl-Shift-K), mit &debug=1 die URL verlängern, aufrufen und mit den Output schicken?<br>

 </div>
Bei Rainer haben wir im Frontend noch eine kleine Erweiterung eingebaut die auch noch Aggregation auf Minuten nutzt- immer dann sinnvoll wenn man mehrere Messwerte pro Sekunde hat.<br>
 </div>
Prinzipiell halte ich für die üblichen Anwendungsfälle 1 Meßpunkt pro Minute für geeigneter (=Aggregation im vzlogger oder vzcompress2), wenn es Bedarf für Minutenaggregation gibt kann ich diese noch zur Nutzung im FE einbauen.<br>

<br>
vg</div>
Andreas

<div>
<div>
<div><br>
 </div>
</div>
</div>
</div>

<div class="gmail_extra"> 
<div class="gmail_quote">2014-03-26 20:34 GMT+01:00 Bernd Gewehr <span><<a href="http://Bernd@gewehr.net" target="_blank">Bernd@gewehr.net</a>></span>:

<blockquote class="gmail_quote" style="margin:0 0 0 0.8ex;border-left:1.0px rgb(204,204,204) solid;padding-left:1.0ex">
<div>
<div>
<div style="font-size:12.0pt;font-family:Calibri">
<div>OK, ich glaube, meine Erwartung war falsch: Aggregation läuft super und das Frontend lädt ein Jahr ebenso schnell wie einen Monat, eine Woche oder einen Tag.</div>

<div> </div>

<div>Dauert nur eben jedesmal so 15 – 20 Sekunden – Pi halt.</div>

<div> </div>

<div>Also, Andi: Top! Super gemacht – Danke!</div>

<div> </div>

<div style="font-size:12.0pt;font-family:Calibri">
<div>Mit den besten Grüßen<br>
<br>
Bernd Gewehr
<div style="font-style:normal;font-size:small;display:inline;font-family:Calibri;text-decoration:none;font-weight:normal"> </div>
</div>

<div style="FONT:10.0pt tahoma">
<div style="BACKGROUND:rgb(245,245,245)">
<div><b>From:</b> <a href="http://Bernd@gewehr.net" title="Bernd@gewehr.net" target="_blank">Bernd Gewehr</a></div>

<div><b>Sent:</b> Wednesday, March 26, 2014 8:10 PM</div>

<div><b>To:</b> <a href="http://volkszaehler-users@lists.volkszaehler.org" title="volkszaehler-users@lists.volkszaehler.org" target="_blank">volkszaehler.org - users</a></div>

<div><b>Subject:</b> [vz-users] Aggregation - inzwischen im Master von volkszaehler.organgekommen? Was fehlt mir?</div>
</div>
</div>

<div> </div>
</div>

<div>
<div>
<div style="font-style:normal;font-size:small;display:inline;font-family:Calibri;text-decoration:none;font-weight:normal">
<div>
<div style="font-size:12.0pt;font-family:Calibri">
<div>Hallo,</div>

<div> </div>

<div>kurze Frage:</div>

<div> </div>

<div>Ich habe ein frisches Git Pull auf den Master gemacht,</div>

<div>dann chown –R www-data <a href="http://volkszaehler.org" target="_blank">volkszaehler.org</a></div>

<div>dann composer curl, move, install und update,</div>

<div>dann aggregate create und full day / full hour</div>

<div>und in der volkszaehler.conf.php aggregation true eingefügt.</div>

<div>Dann noch in die Crontab – fertig.</div>

<div> </div>

<div>Keine Beschleunigung im Frontend.</div>

<div> </div>

<div>Fehlt noch was oder muss ich in den dev-branch?</div>

<div> </div>

<div style="font-size:12.0pt;font-family:Calibri">Mit den besten Grüßen<br>
<br>
Bernd Gewehr</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</div></div></div>
</div>
</div>

<div> </div>

<div> </div></div></div>
</blockquote></div><br></div></div>