Rychlost ukladani dat do hashe
Petr Vedral
postak na metalmex.cz
Středa Červen 1 15:25:26 MEST 2005
Dobry den,
potrebuji co nejrychleji nacist vetsi mnozstvi zaznamu (100000) z databaze
(PostgreSQL+DBI) do hashe. Pricemz klicem zaznamu je cislo zaznamu
(nactene z db) a obsahem zaznamu jsou NAZEV_PRVNIHOSLOUPCE=HODNOTA,
NAZEV_DRUHEHO_SLOUPCE=HODNOTA... Nazvy sloupcu v hashy odpovidaji nazvum
sloupcu v tabulce DB.
Eperimentalne jsem se dostal k tomuto reseni.
Napada vas prosimvas neco rychlejsiho?
while (my $p = $s->{sth}->fetchrow_arrayref())
{
$s->{zaz}->{${$p}[0]} = ({
no=>${$p}[0],
ob=>${$p}[1],
pr=>${$p}[2],
jm=>${$p}[3],
ic=>${$p}[4],
dic=>${$p}[5],
ul=>${$p}[6],
me=>${$p}[7],
psc=>${$p}[8]});
}
Dale jsem zkousel fetchall_hashref(), ktery je cca o 30% pomalejsi nez
toto reseni.
Další informace o konferenci Perl