[Python] Proof of concept per un programma di scansione duplicati.

Gollum1 gollum1.smeagol1 a gmail.com
Mer 19 Giu 2013 11:20:00 CEST


Ciao lista,

In casa mi sono fatto un Severino con Debian, come tutti sappiamo, quando
si hanno a disposizione questo spazi si comincia a buttare dentro roba
senza pensarci più di tanto.

Ora mi ritrovo con una marea di file duplicati, a volte anche con nomi
diversi... ho privato diversi programmi che dovrebbero trovare tutti i
duplicati, ma per un verso o per l'altro non mi hanno mai soddisfatto.

Visto che si tratta di un file server, quindi senza interfaccia, pensavo ad
un qualcosa diviso in due parti... il motore vero e proprio e
un'interfaccia web che permetta di esaminare il risultato
dell'elaborazione, che per il modello di scansione e per la quantità di
materiale potrebbe metterci anche qualche giorno. Per di più esaminare il
risultato non è un'operazione immediata, ci potrebbero volere diverse
sessioni di lavoro sulla pagina web. La cosa interessante sarebbe riuscire
a far rimanere attivo il processo in background che analizzi i nuovi file
inseriti nella directory considerata.

Va da se che per poter fare una cosa che sui prolunghi nel tempo bisogna
costruire una struttura dati adeguata e avere un sistema di memorizzazione
su una qualche forma di DB.

La struttura dati che ho pensato è relativamente banale, un dizionario in
cui si usa una tupla come chiave e una lista come dato. La tupla conterrà i
seguenti dati:
- la dimensione del file (banale stat)
- il tipo di file (il responso del comando file, o il corrispettivo python
se esiste)
- il calcolo md5sum del file (questa è sicuramente la parte più onerosa in
termini di tempo di calcolo)

Mentre la lista di dati è molto semplicemente l' elenco dei file che
condividono gli elementi usati per generare la chiave.

Ora... se per la parte di scansione e generazione del dizionario, credo di
non avere problemi, per la gestione del DB e della parte web non saprei
proprio da che parte girarmi... per la gestione come deamon ci si può
pensare successivamente.

Per il DB, mi avete distrutto il mito di maisequel, cosa mi consigliate?
Postgress o SQLite?

Per la gestione del web? Implementare qualcosa con django?

Byez
-- 
Gollum1
tessssoro, dov'è il mio tessssoro...
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20130619/5c0b6bc5/attachment-0001.html>


Maggiori informazioni sulla lista Python