sql >> Database teknologi >  >> RDS >> PostgreSQL

Problemer med ydelse af PostgreSQL/JooQ masseindsættelse ved indlæsning fra CSV; hvordan forbedrer jeg processen?

Den hurtigste måde at lave masseindsættelse fra en CSV-fil i PostgreSQL er med Kopiér . COPY-kommandoen er optimeret til at indsætte et stort antal rækker.

Med Java kan du bruge Kopiimplementering til PostgreSQL JDBC-driveren

Der er et fint lille eksempel på hvordan man bruger det her:hvordan kopierer man en data fra fil til PostgreSQL ved hjælp af JDBC?

Hvis du har en CSV med overskrifter, vil du gerne køre en kommando, der ligner denne:

\COPY mytable FROM '/tmp/mydata.csv' DELIMITER ';' CSV HEADER

Et andet ydelsesforøgelse, når du tilføjer store mængder data til en eksisterende tabel, er at droppe indekserne, indsætte dataene og derefter genskabe indekserne.



  1. Ruby/PgSQL fejl ved Rails start:kan ikke indlæse en sådan fil -- pg_ext (LoadError)

  2. SQL Server Tildeling af beløb i regningen

  3. Præcision af interval for PL/SQL funktionsværdi

  4. Validerer brugernavn og adgangskode fra MySQL