Psycopg2, Postgresql, Python: maneira mais rápida de inserir em massa
Estou procurando a maneira mais eficiente de inserir em massa alguns milhões de tuplas em um banco de dados. Estou usando Python, PostgreSQL epsycopg2.
Criei uma longa lista de tulpes que devem ser inseridos no banco de dados, às vezes com modificadores comoSimplify
.
A maneira ingênua de fazer isso seria formatar uma lista deINSERT
instruções, mas existem outros três métodos sobre os quais eu li:
pyformat
estilo de encadernação para inserção paramétricaUsandoexecutemany
na lista de tuplas eUsando a gravação dos resultados em um arquivo e usandoCOPY
.Parece que a primeira maneira é a mais eficiente, mas eu apreciaria suas idéias e trechos de código me dizendo como fazê-lo corretamente.