Posts

Schnelles Lesen von CSV-Dateien - 1 billion row challenge in SQL and Oracle Database - bei "Gerald on IT"

Über die Oracle Datenbanken Monthly News bin ich auf den sehr interessanten Beitrag 1 billion row challenge in SQL and Oracle Database – Gerald on IT gestoßen.  In Kurzform: Es geht um das (sehr) schnelle Auswerten einer Wetterdaten-CSV-Datei mit 1 Mrd Zeilen. Spannend daran: Beispiele, wie das Einlesen/Abfragen von external Tables beschleunigt werden kann. Die Grundform ist: SELECT *   FROM EXTERNAL   (     (       station_name  VARCHAR2(26),       measurement   NUMBER(3,1)     )     TYPE oracle_loader     DEFAULT DIRECTORY brc     ACCESS PARAMETERS     (       RECORDS DELIMITED BY NEWLINE       FIELDS CSV WITHOUT EMBEDDED TERMINATED BY ';'     )     LOCATION ( 'measurements.txt' )     REJECT LIMIT UNLIMITED   ) measurements FETCH FIRST 10 ROWS ONLY ; Um alle Zeilen sehr schnell zu lesen, gibt es folgende Verbesserungen: - Parallelisierung explicitly defining the parallelization level with  /*+ PARALLEL (x) */ Wichtig dabei The important part here is the  WITH