Hallöchen.
Ich würde gerne von einigen Leuten, die sich gut mit MySQL auskennen hören, wie sie folgendes Problem lösen würden:
Ich schreibe Momentan ein Counter Projekt von PERL nach PHP um. Das ganze ist ab dato auch MySQL basiert. Man kann einen Counter auf seiner webseite einbinden. Dieser schreibt dann die Besucherzahlen in die Datenbank zu jedem Counter an jedem Tag. Sprich für jeden Tag wird ein neuer Eintrag in der DB erstellt. Zusätzlich ist eine Reloadsperre per IP integriert. Bei gut 2 Mio. Countern kann man sich vorstellen, was wohl für eine Last auf dem Server herrscht.
Wie würdet ihr die Datenbank formen, damit das ganze ohne Probleme laufen würde.
Nochmal die wichtigsten Punkte im Überblick:
- Zu jedem Tag wird zu jedem Counter ein neuer Eintrag in der DB erstellt
- Jeder Tag wird je nach Anzahl der User upgedatet (sprich, sollte ein User an diesem Tag eine bestimmte Seite aufrufen, wird der Counter um eins erhöht)
- Eine Reloadsperre ist integriert, somit muss die DB immer erst durchsucht werden, ob dieser User in den letzten 2 Stunden schon auf der Seite war.
- Man kann sich eine Statistik zu jedem Monat ausgeben lassen
Mit MyISAM ist das ganze undenkbar. Mit INNO-DB schon wieder anders, jedoch ist das mit den Backups dann so eine Sache, da alles in einer Datei steht und das wollen wir absolut nicht.
Wie löst man das ganze jetzt am besten und wie sollte man die Datenbank jetzt am besten aufbauen?
Ich würde gerne von einigen Leuten, die sich gut mit MySQL auskennen hören, wie sie folgendes Problem lösen würden:
Ich schreibe Momentan ein Counter Projekt von PERL nach PHP um. Das ganze ist ab dato auch MySQL basiert. Man kann einen Counter auf seiner webseite einbinden. Dieser schreibt dann die Besucherzahlen in die Datenbank zu jedem Counter an jedem Tag. Sprich für jeden Tag wird ein neuer Eintrag in der DB erstellt. Zusätzlich ist eine Reloadsperre per IP integriert. Bei gut 2 Mio. Countern kann man sich vorstellen, was wohl für eine Last auf dem Server herrscht.
Wie würdet ihr die Datenbank formen, damit das ganze ohne Probleme laufen würde.
Nochmal die wichtigsten Punkte im Überblick:
- Zu jedem Tag wird zu jedem Counter ein neuer Eintrag in der DB erstellt
- Jeder Tag wird je nach Anzahl der User upgedatet (sprich, sollte ein User an diesem Tag eine bestimmte Seite aufrufen, wird der Counter um eins erhöht)
- Eine Reloadsperre ist integriert, somit muss die DB immer erst durchsucht werden, ob dieser User in den letzten 2 Stunden schon auf der Seite war.
- Man kann sich eine Statistik zu jedem Monat ausgeben lassen
Mit MyISAM ist das ganze undenkbar. Mit INNO-DB schon wieder anders, jedoch ist das mit den Backups dann so eine Sache, da alles in einer Datei steht und das wollen wir absolut nicht.
Wie löst man das ganze jetzt am besten und wie sollte man die Datenbank jetzt am besten aufbauen?
Kommentar