Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Firebird i brzina query-a sa agregatnim funkcijama

[es] :: Firebird/Interbase :: Firebird i brzina query-a sa agregatnim funkcijama

[ Pregleda: 3415 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

MarkoBalkan

Član broj: 141124
Poruke: 1624
..143.226-dsl.net.metronet.hr.



+19 Profil

icon Firebird i brzina query-a sa agregatnim funkcijama07.01.2010. u 13:05 - pre 173 meseci
recimo query

select count(*) from mojatabela

tabela ima 10 M slogova, query traje 10 s, x M, query traje približno x sekundi.


za sum isto tako.

neke baze izvrše gornji query za 2-3 s, vrijeme se povećava linearno.

znači za 30 M slogova treba 7-9 s, a firebirdu 30 s pa čak i malo više.



 
Odgovor na temu

savkic
Igor Savkić

Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: Firebird i brzina query-a sa agregatnim funkcijama07.01.2010. u 23:05 - pre 173 meseci
> select count(*) from mojatabela
> tabela ima 10 M slogova, query traje 10 s, x M, query traje približno x sekundi.

FB mora da prođe kroz sve recorde (eventualno i kroz izmenjenje verzije) da bi ti vratio count, zavisno od okolnosti može biti prilikom toga startovan i GC (prvi put kada se dođe do obrisanog ili izmenjegog recorda koji više ne važi). Dakle to ponašanje je normalno u FB i svim drugim MGA bazama. BTW zašto ti je potrebno da uradiš count?
 
Odgovor na temu

dogriz
Sombor

Član broj: 29744
Poruke: 259
*.dynamic.sbb.rs.

Sajt: dogriz.blogspot.com


+6 Profil

icon Re: Firebird i brzina query-a sa agregatnim funkcijama08.01.2010. u 06:21 - pre 173 meseci
Citat:
MarkoBalkan:
select count(*) from mojatabela

Pokušaj još da uradiš count po primarnom ključu umesto *, da vidiš da li će biti razlike u brzini izvršavanja, npr:
Code:

select count(ID) from mojatabela
 
Odgovor na temu

MarkoBalkan

Član broj: 141124
Poruke: 1624
...130.60-dsl.net.metronet.hr.



+19 Profil

icon Re: Firebird i brzina query-a sa agregatnim funkcijama08.01.2010. u 10:01 - pre 173 meseci
Citat:
savkic: > select count(*) from mojatabela
> tabela ima 10 M slogova, query traje 10 s, x M, query traje približno x sekundi.

FB mora da prođe kroz sve recorde (eventualno i kroz izmenjenje verzije) da bi ti vratio count, zavisno od okolnosti može biti prilikom toga startovan i GC (prvi put kada se dođe do obrisanog ili izmenjegog recorda koji više ne važi). Dakle to ponašanje je normalno u FB i svim drugim MGA bazama. BTW zašto ti je potrebno da uradiš count?



kod postgresql-a recimo ovaj isti query traje 2-3 sekunde.

 
Odgovor na temu

[es] :: Firebird/Interbase :: Firebird i brzina query-a sa agregatnim funkcijama

[ Pregleda: 3415 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.