Entwickler-Ecke

Datenbanken - Effizienteste Lösung für große Datenbanken?


Wolle92 - Mi 13.05.09 21:01
Titel: Effizienteste Lösung für große Datenbanken?
Hallo,

ich muss folgendes realisieren:
Von dieser [http://geizhals.at/livesuche.html] Seite die Einträge lesen und in die Datenbank packen (zwei Spalten: key und count), danach dann die Einträge durchgehen, jeweils zählen wie oft diese vorkommen, beim ersten Eintrag count akutalisieren, alle anderen gleichen Einträge löschen.
Das ganze soll alle paar Minuten passieren.

Jetzt stellt sich mir die Frage, was die effizienteste (und einfachste) Lösung dafür ist?

Danke,
Wolle


Nersgatt - Do 14.05.09 07:26

Ich würde mit 2 Tabellen arbeiten. In der einen Tabelle hältst Du nur die Daten, die Dich wirklich interessieren (Key+ Count). In die 2. Tabelle liest man die Einträge ein, zählt und aktualisiert die andere Tabelle. Diese zweite Tabelle kann man dann beim lesen immer vorher leeren.
Wenn es nicht wirklich eine Tabelle sein muss dann kann man die Daten, die Dich interessieren auch einfach abfragen. Das heißt, Du liest nur die Daten in eine Tabelle ein. Dann ein SELECT COUNT(*), KEY FROM TABELLE GROUP BY KEY und schon hast Du, was Du willst.


Wolle92 - Do 14.05.09 15:25

Man kann doch mit der Zeile auch erst lesen und dann die gegroupten counts in die zweite tabelle reinschreiben ;)