Comme d'autres l'ont noté, lors de l'importation de données dans Postgres, les choses seront ralenties par les vérifications que Postgres est conçu pour effectuer pour vous. En outre, il est souvent nécessaire de manipuler les données d'une manière ou d'une autre pour qu'elles soient utilisables. Tout ce qui peut être fait en dehors du processus Postgres signifie que vous pouvez importer en utilisant le protocole COPY.
Pour mon usage, j'importe régulièrement des données à partir du httparchive.org projet utilisant pgloader . Comme les fichiers sources sont créés par MySQL, vous devez être en mesure de gérer certaines bizarreries de MySQL telles que l'utilisation de la fonction \N
pour une valeur vide et avec des problèmes d'encodage. Les fichiers sont également si volumineux que, du moins sur ma machine, l'utilisation de FDW entraîne une saturation de la mémoire. pgloader facilite la création d'un pipeline qui vous permet de sélectionner les champs que vous souhaitez, de les convertir en types de données appropriés et d'effectuer tout travail supplémentaire avant de les intégrer à votre base de données principale, de sorte que les mises à jour d'index, etc. soient minimales.