Thread Zugriffe effektiv loggen und verarbeiten (3 answers)
Opened by roooot at 2011-07-18 23:25

roooot
 2011-07-19 12:19
#150550 #150550
User since
2008-03-03
276 Artikel
BenutzerIn
[default_avatar]
Stimmt, wenn ich eine Datenbank verwende kann ich group by o.ä. verwenden. Klingt eigentlich ganz logisch.

Aufbau sieht jetzt mal so aus:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
mysql> describe statistics;
+-----------+--------------+------+-----+-------------------+-----------------------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+--------------+------+-----+-------------------+-----------------------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| type | varchar(32) | NO | | NULL | |
| type_id | varchar(128) | YES | | NULL | |
| timestamp | timestamp | NO | | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP |
| user_id | mediumint(9) | YES | MUL | NULL | |
| referer | varchar(256) | YES | | NULL | |
+-----------+--------------+------+-----+-------------------+-----------------------------+
6 rows in set (0.00 sec)


Allerdings habe ich bedenken, wenn ich irgendwann mal ein paar Millionen Einträge habe und anschließend eine Operation wie
SELECT count(`type`) as type, DATE_FORMAT( timestamp, '%Y-%m-%d 00:00' ) as ts from `statistics` group by DATE_FORMAT( timestamp, '%Y-%m-%d 00:00' ), `type` order by `ts` descauführe, dass das ewig dauert?
Sollte man typische Abfragen cachen? Sollte ich type in der DB noch als Index definieren, bringt mir das performance Vorteile?
Viele Grüße :)

View full thread Zugriffe effektiv loggen und verarbeiten