Estoy escribiendo algunas secuencias de comandos Perl para manipular grandes cantidades (en total alrededor de 42 millones de filas, pero no se hará en un solo golpe) de datos en dos bases de datos PostgreSQL.¿Cuál es la diferencia de rendimiento entre fetchall_hashref y fetchall_arrayref de DBI?
Para algunas de mis consultas, tiene sentido usar fetchall_hashref
porque tengo claves sintéticas. Sin embargo, en otras instancias, voy a utilizar una matriz de tres columnas como clave única.
Esto me tiene preguntando sobre las diferencias de rendimiento entre fetchall_arrayref
y fetchall_hashref
. Sé que en ambos casos todo está entrando en la memoria, por lo que seleccionar varios GB de datos probablemente no es una buena idea, pero aparte de eso, parece que hay muy poca guía en la documentación cuando se trata de rendimiento.
Mi google no ha tenido éxito, así que si alguien puede indicarme algunos estudios generales de rendimiento, le agradecería.
(Sé que podría comparar esto yo mismo, pero desafortunadamente para fines de desarrollo no tengo acceso a una máquina que tiene hardware idéntico a la producción, es por eso que estoy buscando pautas generales o incluso las mejores prácticas).
Gracias por esto, ya que definitivamente volveré a visitar usando fetchall ... y reconsiderar el hash. – azp74