Hallo zusammen,
ich nutze zur Zeit eine klassische Installation aus Apache 2 sowie MySQL 5.0.37 und PHP 5.0.3.
In der Datenbank habe ich eine sehr große Anzahl an Messungen gespeichert und es kommen jede Nacht neue Daten in Form von XML Files (werden per FTP hochgeladen) hinzu.
Diese müssten mit einem Script verarbeitet werden, sprich: Bewertet nach speziellen Regeln (valide oder nicht), Umrechnungen (Normierung), Summenbildungen etc. und eben dann in die MySQL Datenbank abspeichern.
Die Frage ist nun, wie gehe ich das mit PHP an, damit ich ein schnelles, zügiges Verarbeitungs-Script habe. Stichworte Speicherverbrauch und Laufzeit. Häppchenweise die Daten einlesen? Wie groß sollten hierbei die jeweiligen Pakete sein? Timeouts muss ich auf der Konsole nicht fürchten oder?
Anderes aber gleiches Problem ist auch ein Aufarbeiten von bestehenden Datentabellen in MySQL. Es ist nicht selten dass ich hier Tables mit weit mehr als 300.000 Einträgen durchrechnen muss. Also nach bestimmten Kriterien filtern und dann Merkmale setzen.
Also kurz: Ich arbeite schon eine Zeit lang mit PHP aber musste mich bisher nie um die Performance kümmern. Bisher waren es immer nur Browser-Anfragen eben kurz verarbeiten und gut ist. Allerdings keine Tonnen an Daten verarbeiten ;-/
Danke Euch für Tipps und Herangehensweisen.
Mikk
ich nutze zur Zeit eine klassische Installation aus Apache 2 sowie MySQL 5.0.37 und PHP 5.0.3.
In der Datenbank habe ich eine sehr große Anzahl an Messungen gespeichert und es kommen jede Nacht neue Daten in Form von XML Files (werden per FTP hochgeladen) hinzu.
Diese müssten mit einem Script verarbeitet werden, sprich: Bewertet nach speziellen Regeln (valide oder nicht), Umrechnungen (Normierung), Summenbildungen etc. und eben dann in die MySQL Datenbank abspeichern.
Die Frage ist nun, wie gehe ich das mit PHP an, damit ich ein schnelles, zügiges Verarbeitungs-Script habe. Stichworte Speicherverbrauch und Laufzeit. Häppchenweise die Daten einlesen? Wie groß sollten hierbei die jeweiligen Pakete sein? Timeouts muss ich auf der Konsole nicht fürchten oder?
Anderes aber gleiches Problem ist auch ein Aufarbeiten von bestehenden Datentabellen in MySQL. Es ist nicht selten dass ich hier Tables mit weit mehr als 300.000 Einträgen durchrechnen muss. Also nach bestimmten Kriterien filtern und dann Merkmale setzen.
Also kurz: Ich arbeite schon eine Zeit lang mit PHP aber musste mich bisher nie um die Performance kümmern. Bisher waren es immer nur Browser-Anfragen eben kurz verarbeiten und gut ist. Allerdings keine Tonnen an Daten verarbeiten ;-/
Danke Euch für Tipps und Herangehensweisen.
Mikk