Balan Victor wrote:

> idee? :)
> 
> 
> Il giorno 10 ottobre 2012 14:01, Balan Victor
> <balan.vict...@gmail.com> ha scritto:
> 
>> quello che devo fare è questo:
>> in fase di inizializzazione devo caricare in memoria un
>> grafo(networkx) di dimensioni consistenti: 60.000 nodi e più di
>> 100.000 connessioni. PER ADESSO dovrebbe essere in sola lettura e se
>> devo fare delle modifiche posso permettermi di stoppare tutto, fare
>> le modifiche e rilanciare l'applicazione.
>> Poi in base alle richieste che vengono effettuate devo andare a
>> leggere le informazioni che mi servono dal grafo, elaborarle e
>> restituirle all'utente.
>> ...

Non sarebbe meglio fare il pickle della struttura dati creata in memoria 
da networkx invece di ricreare il grafo ogni volta dal DB? 

Ovviamente perchè sia fattibile bisogna controllare che gli oggetti di 
NetworkX siano effettivamente serializzabili, inoltre tenere allineati 
il DB e il grafo richiede sicuramente del codice specifico per evitare 
di buttare via tutto e ricreare da 0 ogni volta che cambia qualcosa.

Potrei anche arrivare a suggerire di provare a derivare (o patchare) le 
classi di NetworxX da Persistent dello ZODB per semplificare la 
serializzazione ed eliminare il DB relazionale... 
-- 
                                       Riccardo Lemmi

_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a