Repository

Da Wikipedia, l'enciclopedia libera.

Un repository (in italiano deposito o ripostiglio) è un ambiente di un sistema informativo (ad es. 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.

Descrizione[modifica | modifica wikitesto]

Si tratta di qualcosa di più sofisticato del classico 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[modifica | modifica wikitesto]

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[modifica | modifica wikitesto]

  • 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[modifica | modifica wikitesto]

  • 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[modifica | modifica wikitesto]