J'écris des scripts Perl pour manipuler de grandes quantités (au total environ 42 millions de lignes, mais cela ne sera pas fait en une seule fois) de données dans deux bases de données PostgreSQL.Quelle est la différence de performance entre fetchall_hashref de DBI et fetchall_arrayref?
Pour certaines de mes requêtes, il est logique d'utiliser fetchall_hashref
parce que j'ai des clés synthétiques. Cependant, dans d'autres cas, je vais utiliser un tableau de trois colonnes comme clé unique. Cela m'a fait me poser des questions sur les différences de performance entre fetchall_arrayref
et fetchall_hashref
. Je sais que dans les deux cas, tout va dans la mémoire, donc sélectionner plusieurs Go de données n'est probablement pas une bonne idée, mais à part ça, il semble y avoir très peu de conseils dans la documentation en termes de performances.
Mon googling a échoué, donc si quelqu'un peut me diriger vers des études de performance générale, je serais reconnaissant.
(Je sais que je pourrais le comparer moi-même mais malheureusement pour les besoins de développement je n'ai pas accès à une machine qui a un matériel identique à la production, c'est pourquoi je cherche des directives générales ou même meilleures pratiques).
Merci pour cela - comme je vais certainement revoir en utilisant fetchall ... et reconsidérer le hachage. – azp74