Repository
Un repository (che sarebbe preferibile italianizzare con il termine deposito o repositorio) è un ambiente di un sistema informativo (di tipo ERP), in cui vengono gestiti i metadati, attraverso tabelle relazionali; l'insieme di tabelle, regole e motori di calcolo tramite cui si gestiscono i metadati prende il nome di metabase.
Si tratta di qualcosa di più sofisticato del mero dizionario dati, ed è un ambiente che può essere implementato attraverso numerose piattaforme hardware e sistemi di gestione dei database (o DBMS, acronimo del corrispondente termine inglese DataBase Management Systems).
Indice |
[modifica] Architettura Repository
Si tratta di uno stile architetturale che può essere utilizzato come base di un'architettura software. I sottosistemi che compongono il software accedono e modificano una singola struttura dati chiamata appunto repository. I vari sottosistemi sono fra loro "relativamente indipendenti", in quanto interagiscono solo mediante il repository. Il flusso di controllo è dettato o dal repository, mediante un cambiamento dei dati in esso memorizzati, o dai singoli sottosistemi (flusso di controllo indipendente).
[modifica] Vantaggi dell'architettura Repository
- Modo efficiente di condividere grandi mole di dati
- Un sottosistema non deve preoccuparsi di come i dati sono prodotti o usati dagli altri sottosistemi.
- Gestione centralizzata di backup, sicurezza, controllo di accesso e recovery da errori.
- Facile aggiungere nuovi sottosistemi
[modifica] Svantaggi dell'architettura Repository
- I sistemi devono concordare un modello per i dati di compromesso, il che potrebbe influire negativamente sulle prestazioni.
- L'adozione di un nuovo modello per i dati diventa difficile e costosa: deve essere modificato interamente il repository ed aggiornati tutti i sottosistemi.
- La centralizzazione di backup e sicurezza non permette di gestire possibli requisiti specifici di alcuni sottosistemi.
- È difficile distribuire efficientemente il repository su più macchine separate, continuandolo a vedere come logicamente centralizzato. Si verrebbero infatti a creare problemi di ridondanza e consistenza dei dati.