TS: ich möchte eine sehr grosse CSV Datei in eine MYSQL Datenbank einspielen

Beitrag lesen

Hello,

Wenn Du die Zeilentrenner kennst (siehe Raketentipps) kannst Du die Aufspaltung mit fast jeder Hochsprache vornehmen, die auf ein Random-Access-Flesystem zugreifen können.

Random Access ist für diesen Ansatz nicht einmal nötig: Streng sequentielles Lesen, Zeichen für Zeichen, würde auch schon genügen.

Genaugenommen ja. Aber Tape orientied Storage ist heutzutage eher ungewöhnlich.

Es geht ja hier nur darum, in der Anwendungsschicht nicht blockorientiert arbeiten zu müssen und nicht die ganze Datei auf einmal einlesen zu müsen - obwohl man heutzutage ja leicht mal 16GB Arbeitsspeicher zur Verfügung hat. Den hat selbst mein Laptop inzwischen. Ich weiß allerdings nicht, wieviel ich davon mit den verfügbaren Programmen kontrollieren kann. Wo liegen eigentlich die Grenzen bei PHP auf 64-Bit-Systemen?

Siehe auch fgetcsv()

Das wäre vermutlich einfacher als selbst einen CSV-Parser zu klöppeln. Es sei denn, die Datenquelle benutzt eine so abstruse CSV-Interpretation, dass fgetcsv() damit nicht mehr umgehen kann.

Wir hatten das Thema ja kürzlich schon mal erörtert. Eine Datenprobe der Datei wäre also vor weiteren Diskussionen sinnvoll.

Glück Auf
Tom vom Berg

--
Es gibt nichts Gutes, außer man tut es!
Das Leben selbst ist der Sinn.