PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Was ist der schnellste Weg, um 150 Millionen Aktualisierungen auf die PostgreSQL-Tabelle anzuwenden

  • Am einfachsten:füge set synchronous_commit=off hinzu vor \i update.sql

  • Besser:

    • Teilen Sie die Datei in Teile von etwa 100000 Aktualisierungen auf:
      split -l 100000 -a 6 --additional-suffix=.sql update.sql update-part
    • Führen Sie diese Aktualisierungen parallel aus, jede Datei in einer einzigen Transaktion, zum Beispiel mit:
      /bin/ls update-part*.sql \ | xargs --max-procs=8 --replace psql --single-transaction --file={}