[Roma.pm] parlando di Perl (incredibile, eh? :-D)

Emanuele Zeppieri ema_zep at libero.it
Wed Oct 18 05:46:12 PDT 2006


> -----Original Message-----
> From: roma-bounces+ema_zep=libero.it at pm.org 
> [mailto:roma-bounces+ema_zep=libero.it at pm.org] On Behalf Of 
> Aldo Calpini
> Sent: Wednesday, October 18, 2006 1:30 PM
> To: roma at pm.org
> Subject: Re: [Roma.pm] parlando di Perl (incredibile, eh? :-D)

> giustamente dipende dall'utilizzo che devi fare della struttura. se 
> conviene averla comunque tutta in memoria (ad esempio, se devi fare 
> query XPath o diavolerie simili), credo che sia difficile battere 
> Storable, che è  implementato in XS. se invece devi solo accedere a 
> qualche sparuta chiave di una struttura dati mostruosamente enorme, 
> DBM::Deep potrebbe essere la scelta vincente. ma per saperlo 
> di preciso ci vorrebbero dei benchmark.

Certo, sono perfettamente d'accordo: se sei comunque costretto ad avere
l'intera struttura in RAM (per qualsivoglia elaborazione), oppure se la
struttura di dati è piccola, allora è sicuramente più veloce Storable.

Io stesso uso Storable per dumpare/leggere su/da file l'hash contenente
i dati di sessione di alcune applicazioni cgi, ma si tratta appunto di
poche chiavi (username, timestamp del login, ultima URL visitata e poco
altro).

(Molto) a nasca, direi che se hai qualche *migliaio* di chiavi/valori (e
devi accedere solo a pochi valori per volta) DBM::Deep può cominciare a
convenire (mi sembrava che fosse questo il caso di Marco, dato che gli
serve per l'FTS...)
Poi ci sono anche soluzioni DBM C-based più veloci di DBM::Deep (basate
su BerkeleyDB), ma date le esigenze di portabilità di Marco, non le ho
nemmeno citate.

Vediamo se Marco se la sente di fare qualche benchmark...

[pajata]
> certo che è deciso.

Che ve possino. Tra l'altro me so' pure ammazzato de cornetti :-(

Ciao,
Emanuele.



More information about the Roma mailing list