Vous êtes-vous déjà demandé pourquoi l'exécution de votre chargement de données en vrac dans PostgreSQL est si longue? Des conseils de haut niveau à prendre en compte pour accélérer votre chargement en vrac sont présentés ici.

Pas

  1. 1 Commande COPY: Permet de charger un grand nombre de lignes au lieu de séries de commandes INSERTS. Beaucoup plus rapide que les insertions régulières. Il est 30% plus rapide avec les versions Postgres 8.1+.
  2. 2 Commande TRUNCATE: Pour supprimer la table entière, utilisez Truncate au lieu de delete. Fonctionnement beaucoup plus rapide et plus efficace.
  3. 3 Drop Index: Envisagez de supprimer les index avant d'actualiser la table: drop index => load (copy) => Build index => Rassembler des statistiques (analyser)
  4. 4 Paramètres de configuration à prendre en compte pour accélérer les charges de données volumineuses: Increase maintenance_work_mem: accélère la création des index et accélère l'opération d'aspiration
  5. 5 Augmentez checkpoint_segments: Vide les tampons de mémoire sale sur le disque. Des charges de données importantes peuvent entraîner des points de contrôle de base de données plus fréquents; donc charge plus lente. Réduit la fréquence du point de contrôle de la base de données; accélérant ainsi la charge globale de données en vrac.
  6. 6 Archivage: Envisagez de désactiver (temporairement) l'archivage des fichiers WAL.
  7. 7 Analyser les statistiques: Toujours analyser les statistiques des objets par la suite.