Piszę niektóre skrypty Perla, aby manipulować dużymi kwotami (w sumie około 42 milionów wierszy, ale nie zostanie to zrobione jednym trafieniem) danych w dwóch bazach danych PostgreSQL.Jaka jest różnica w wydajności między fetchall_hashref i fetchall_arrayref DBI?
Dla niektórych z moich zapytań warto użyć fetchall_hashref
, ponieważ mam klucze syntetyczne. Jednak w innych przypadkach będę używał tablicy trzech kolumn jako unikalnego klucza.
To sprawiło, że zastanawiałem się nad różnicami w wydajności między fetchall_arrayref
i fetchall_hashref
. Wiem, że w obu przypadkach wszystko idzie do pamięci, więc wybranie kilku GB danych prawdopodobnie nie jest dobrym pomysłem, ale poza tym wydaje się, że w dokumentacji jest bardzo mało wskazówek, jeśli chodzi o wydajność.
Moje przegrupowanie go nie powiodło się, więc jeśli ktoś może wskazać mi kierunek ogólnych badań wydajności, będę wdzięczny.
(Wiem, że mogę to sprawdzić samodzielnie, ale niestety dla celów programistów nie mam dostępu do maszyny, która ma identyczny sprzęt do produkcji, dlatego szukam ogólnych wskazówek, a nawet najlepszych praktyk).
Dziękuję za to - jak na pewno wrócę za pomocą fetchall ... i ponownie rozważyć hash. – azp74