[Python] Applicazione WEB con Python e Postgresql

Giovanni Porcari giovanni.porcari a softwell.it
Mer 24 Set 2014 16:33:44 CEST


> Il giorno 24/set/2014, alle ore 16:15, Giovanni Porcari <giovanni.porcari a softwell.it> ha scritto:
> 
>> 
>> Il giorno 24/set/2014, alle ore 15:50, Marco De Paoli <depaolim a gmail.com> ha scritto:
>> 
>> Il 24 settembre 2014 14:01, Marco De Paoli <depaolim a gmail.com> ha scritto:
>>> Il 24 settembre 2014 11:03, Giovanni Porcari
>>> <giovanni.porcari a softwell.it> ha scritto:
>>>> 
>>>> 
>>>> Cioè tu dici che se io cerco su migliaia di milioni di record
>>>> quello con primary key = 'R2L_cGpqOoOELD1saCR2mg' una macchina
>>>> moderna ci mette 2000 nanosecondi di più che a cercare
>>>> con pkey=3456123456 ?
>>> 
>>> volendo fare una prova quick&dirty su postgres con 40 ml di record...
>>> https://gist.github.com/depaolim/879a64256d146ddb0589
>> 
>> ok, i 40 milioni di record vi avevano spaventato
>> ora l'ho modificato per funzionare con 1 milione di record
>> https://gist.github.com/depaolim/879a64256d146ddb0589
>> 
>> ... ma i risultati continuano ad essere sorprendenti
>> 
>> per voi no?
>> 
> 
> Per uno pigro ma curioso come me quali sono i risultati ?
> 
> Grazie :)
> 
> G

A meno che tu non abbia verificato che riempire un indice con valori ordinati
e dannatamente più lento che non riempirlo con valori 'casuali'. Questo
perchè l'albero deve essere ribilanciato molto più spesso.
In effetti anche questa è una ragione che mi aveva fatto preferire degli id
non sequenziali...

O magari nei db più attuali il problema non sussiste e quindi è un'ipotesi fasulla ;)

G



Maggiori informazioni sulla lista Python