Io mi sono arrovellato anni su come fosse meglio impostare un database, come tutti del resto. Ricordo un software inglese, di cui mi sfugge il nome. In sostanza non aveva una struttura ad entità definite e senza relazioni, che venivano create dall’utente. Provai a fare un prototipo banalissimo con Filemaker ma mi accorsi che gli utenti a cui lo proponevano alla fine mi segnalavano che perdevano più tempo a capire il concetto di utilizzo, mentre una scheda “secca” di reperti, diciamo anche molto monolitica, era più veloce e immediata.
Qui si apre ovviamente un mondo perchè da un lato hai una normalizzazione del linguaggio e una fruibilità maggiore da parte di più utenti e una indubbia perdita di flessibilità che porta alla perdita di eventuali dati generati deducibili solo dall’incrocio con altri dati, dall’altro hai un prodotto più veloce e semplice da aggiornare ed ampliare tramite riunioni e piccole session di adattamento.
Rimango in casa mia con pyArchInit. Ha un DB banalissimo, dove addirittura per limiti miei ho rinunciato ad una parte relazione rigorosa, dall’altro so per certo che in 10 anni, ci abbiamo schedato qualche centinaio di scavi e nessuno ha mai sentito la necessità di portare variazioni sostanziali. Pensate in 10 anni nessuno ha mai avuto bisogno di fare una ricerca del tipo : US 1 taglia 3 … quindi ho rinunciato a creare una sezione di ricerca per i rapporti stratigrafici.
Io stesso per la tesi persi un annetto o due a cercar di capire cosa fosse “un reperto”, perchè a secondo del taglio che ogni studioso dava alla propria ricerca il medesimo oggetto “scavato” assumeva molteplici identità relazionali; un esempio: un vespaio di laterizi e frammenti di anfora. Nelle US erano matrice di strato, per i ceramologi singoli reperti, per gli archeometristi avevamo le sezioni per le analisi, per il restauratore divenivano oggetti di schedatura della scheda di restauro e così via.
Quindi un DB che ti permette di creare entità singole a seconda della necessità è chiaramente il santo Graal, ma per l’archeologia quotidiana (odio chiamarla di emergenza dato che avviene in regime di preventiva) dove si arriva fino ad un certo livello di schedatura tende ad essere un pachiderma mal gestibile.
La cosa bella, a mio modestissimo parere sarebbe far convivere i due modelli: schede monolitiche che ti guidano nella prima schedatura e un ambiente superiore per l’analisi scientifica dove puoi andare a scomporre il dato in più entità dandoti 2 possibilità: - creare un potente motore di ricerca, -creare infinite modalità di analisi quantitative e statistiche.
Non mi sono mai avvicinato ai DB NoSQL, per un piccolo motivo, che io ritengo basilare: continuo a incontrare nelle PA database SQL (vuoi Oracle o PostgreSQL) e tantissimi privati che fanno uso di SQL. Questo mi permette di avere tantissimi utenti a livello mondiale che hanno già risolto il 99.9% dei problemi che mi si presentano.
Mi sfugge il concetto della tua permanenza in laboratorio; vuoi dire che nn farai più parte del gruppo di Sviluppo?
Ciao
Luca