[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