Repository

ambiente di un sistema informativo
Versione del 24 giu 2012 alle 20:22 di ZéroBot (discussione | contributi) (r2.7.1) (Bot: Aggiungo nl:Pakketbron)

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).

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).

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

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 possibili 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.

Voci correlate