>>>>> "Thiago" == Thiago Rondon <[email protected]> writes:
Thiago> Você esta buscando performance, eu acredito que esteja errado
procurar
Thiago> isto em um ORM. E não sei por qual motivo isto não foi questionando
Thiago> desde do inicio, a proposta de um ORM não é performance diretamente,
Thiago> esta é a minha visão pelo menos.
Que conste nos autos, essa nem é a forma mais performática de fazer esse
tipo de bulk loading, o overhead de fazer duas consultas por registro é
o que mata a performance e no caso do DBIC ele tá inflando os registros
desnecessariamente em 99.9% dos casos (segundo o OP) que é provavelmente
de onde vem a penalização de performance. Até com DBI puro, pra uma
quantidade de registros com mais de 3 ordens de magnitude, é muito lento
rodar 2 consultas pra cada registro, com postgres é melhor popular uma
tabela temporária (possivelmente em pequenos batches in-memory) via COPY
(como o renato cron sugeriu antes e foi ignorado) depois rodar um
"insert into select from". Mas como já mencionaram antes, cada pessoa
tem seu "gosto" e tem o direito de fazer da forma menos ótima baseado em
suas próprias arbitrariedades.
Thiago> (Sinceramente, não quero abrir uma discussão sobre isto)
Ops! Desculpa :)
--
Eden Cardim
Software Engineer
http://bit.ly/edencardim
http://twitter.com/#!/edenc
+55 73 9986-3963
=begin disclaimer
Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
SaoPaulo-pm mailing list: [email protected]
L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
=end disclaimer