Apri il menu principale

Un repository (letteralmente deposito o ripostiglio),[1] in informatica, è un ambiente di un sistema informativo (ad esempio 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.

DescrizioneModifica

Si tratta di un ambiente che può essere implementato attraverso numerose piattaforme hardware e sistemi di gestione delle basi di dati (o DBMS, acronimo del corrispondente termine inglese DataBase Management Systems).

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

AnalisiModifica

VantaggiModifica

  • 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 recupero da errori.
  • Facile aggiungere nuovi sottosistemi.

SvantaggiModifica

  • I sistemi devono concordare un modello 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.

NoteModifica

  1. ^ In italiano, nell'ambito informatico, si può tradurre in "archivio" (strutturato).

Voci correlateModifica

  Portale Informatica: accedi alle voci di Wikipedia che trattano di Informatica