Google-Analytics hat's vorgemacht,
Piwik macht es als transparente OpenSource-Lösung nach. Ohne den Datenkraken Google im Hintergrund, ohne Limitierungen (die GA ja ohne AdWords-Account hat) und vor Allem ohne die vieldiskutierte Notwendigkeit, die Verwendung von GA in das Impressum der entsprechenden Seiten einzufügen. Außerdem ist man mit einer eigenen Lösung natürlich viel flexibler und kann, im Fall von Piwik dank OpenSource, selbst Anpassungen vornehmen. Die Entwickler scheinen irgendwie mit Wordpress im Zusammenhang zu stehen, zumindest erinnert Piwik oftmals an Wordpress (es gibt z.B. auch Plugin's und einen API-Key).
Die grafisch ansprechende Anzeige der Auswertungen erfolgt via Flash und gefällt. Die Statistiken werden entweder periodisch durch Useraufrufe generiert oder - bei High-Traffic-Sites - via Cron. Die Einbindung in die eigene Website erfolgt auch via JavaScript - wie beim "großen" Bruder von Google eben. Mehrere Websites werden durch verschiedene ID's auseinandergehalten - klappt prima. Außerdem kann man, wie auch von GA bekannt, Klickout's etc. tracken und den jeweiligen Seiten eigenen "actions" (quasi Namen) zuordnen. In einem Webshop könnte eine "action" z.B. die Artikelnummer oder der Artikelname sein. Das vereinfacht die Auswertung der Statistiken.
Ich nahm mir also einen sich langweilenden Linux-Server aus dem Regal (Quad-Opteron 2,8 GHz, 16GByte RAM, SATA-RAID 1) und setzte kurzerhand Apache (2.2), MySql (5.0 mit 8GByte KeyBuffer) und anschließend Piwik auf. Das geht erstaunlich problemlos und macht sogar richtig Spaß - das Setup ist ordentlich programmiert. Man ist ja in froher Erwartung auf die tollen Statistiken
An dieser Stelle sei allerdings erwähnt, dass ich Piwik mit einer High-Traffic-Site testen wollte (mehrere Mio. PI's/Tag) - schließlich sind dort die Stats wirklich relevant. Der JS-Code war auch schnell eingebunden und Piwik begann zu arbeiten. Anfangs blieb die Load auf dem Server auch deutlich unter 1.00, aber bereits nach wenigen Minuten stieg sie an. Erst machte der Apache ein paar Probleme, nachdem ich aber KeepAlive deaktiviert hatte, lief der ohne Probleme und konnte die mehreren 100 Requests/sec. problemlos abarbeiten.
Die Flut an SQL-Query's (200+/sec) war dann aber doch etwas zuviel des Guten. Viele INSERT's in MyISAM sind eigentlich kein Thema, aber es werden auch SELECT's ausgeführt, um eine User-Session (TTL: 30min) zu tracken. Bei mehreren 100k Einträgen in der Log-Table ging dann gar nichts mehr und ich musste Piwik leider wieder deaktivieren. In der Website sah man dann schon in der Browser-Statusbar "warte auf $piwik_host ...". Die Loadavg lag bei 20+!
In der nett moderierten Mailingliste (
hier der Thread von mir) erfuhr ich dann, dass es derzeit kein automatisches Flushing der Tabellen gibt, nachdem die Stasistiken in die BLOB-Archive geschrieben wurden - das ist natürlich das KO-Kriterium für High-Traffic-Sites. Zumindest dann, wenn man nicht ein eigenes MySql-Cluster für Piwik aufsetzen möchte
Ich verfolge also die Entwicklung weiter, für Ende des Jahres wurde ein neues Release mit Flushing und besserer Performance angekündigt.
Hier noch ein Screenshot vom "Dashboard" (von der Piwik-Site):