Che cos'è un database attivo?
Un database attivo è un'interfaccia automatizzata che esegue determinate funzioni che dipendono da input specifici di informazioni. I programmatori e gli amministratori possono manipolare i sistemi di database attivi per eseguire transazioni in base a relazioni predefinite. Simile all'idea di causa ed effetto, alcune di quelle relazioni o domande sono chiamate "accoppiamento". All'interno della progettazione del database, ci sono parametri che specificano quali informazioni saranno condivise e con chi verranno condivise.
La differenza principale tra un database convenzionale e uno attivo è che qualcosa si verifica come risultato di qualcos'altro. I pagamenti automatici delle fatture sono un esempio di un database attivo. Un cliente bancario può incaricare il suo istituto di pagare un beneficiario un determinato importo a una determinata data ogni mese. Quando viene raggiunta la data specificata, i pagamenti elettronici vengono automaticamente inviati ai beneficiari indicati dalle informazioni nel database.
A volte indicato come architettura guidata dagli eventi, un database attivo è progettato per eseguire azioni basate su determinati trigger. Di solito c'è una relazione tra gli eventi. Ad esempio, i sistemi di database dei punti vendita (POS) possono riordinare automaticamente il prodotto per un negozio al dettaglio una volta che ricevono informazioni che l'inventario corrente è sceso a un importo predefinito. A seconda della modalità di impostazione dei parametri del database, l'effettivo riordino può avvenire immediatamente, come una transazione separata, o essere rinviato.
Transazioni immediate si verificano insieme a eventi scatenanti. Ad esempio, un sistema POS può riordinare il prodotto in base al codice prodotto universale (UPC) o all'unità di stoccaggio (SKU). Può elaborare i livelli di inventario e ordinare le transazioni contemporaneamente. Molti rivenditori di massa operano con questo tipo di database attivo che riceve input continui da diverse fonti, incluso il personale addetto alle vendite e alla ricezione.
Transazioni separate sono impostate per avvenire in momenti diversi. In genere, il database è progettato per esaminare l'evento di attivazione e potrebbe essere necessario confrontarlo con regole aggiuntive per eseguire un'azione. Ad esempio, il sistema POS di un rivenditore può essere attivato da un livello di inventario basso, ma l'azione intrapresa può dipendere dal fatto che il prodotto sia sospeso o se un articolo viene fornito tramite un fornitore. Il database non può elaborare un ordine se le regole sono impostate per rifiutare l'azione se il prodotto non supera la valutazione.
Le transazioni differite sono simili all'idea di transazioni separate, tranne per il fatto che la prima deve terminare prima che la seconda venga elaborata. Nell'esempio POS, il database potrebbe registrare che l'inventario per un determinato prodotto è sceso al di sotto dei livelli accettabili all'inizio della giornata. Con una transazione differita, il processo di riordino non verrà eseguito fino alla chiusura dell'attività quando vengono registrati i livelli di inventario finale.