Mailinglisten-Archive |
Hallo, ich benutze PHP5 und mySQL 5.0.18 und lese aus einer Textdatei eine große Anzahl an Daten ein. Ich benutze die mySQL-class (ich glaube phplib). Mit jedem query wird auch ein $this->connect() gemacht. Daher habe ich mysql.allow_persistent auch schon auf ON gestellt. Ich lese die Textdatei mit fopen($datei,'r'), dann ein while, ein explode mit \n, dann ein explode für die Felder der Zeile mit ',' und ich erhalte ein Array mit 5 Elementen. Dann prüfe ich auf doppelte Datensätze mit einem query. Da ich bereits mehrmals abgebrochen haben muss ich erst mal 50000 Datensätze nur prüfen und nicht schreiben. Zur Kontrolle lasse ich mir in der Console den Datensatz ausgeben. Ich erwarte eigentlich das die Daten in der Console "rasen", es ist aber so langsam das ich bequem mitlesen kann. Was ist da denn so langsam, ist explode so kompliziert oder liegt es dem mySQL SELECT. Die Felder sind nicht indiziert, aber selbst als es nur einige Hundert Datensätze in der Datenbank waren fand ich es nicht signifikant schneller. Gruss Thomas
php::bar PHP Wiki - Listenarchive