O bază de date activă este o interfață automată care îndeplinește anumite funcții care depind de intrările specifice de informații. Programatorii și administratorii pot manipula sistemele de baze de date active pentru a executa tranzacții conform relațiilor predefinite. Similar cu ideea de cauză și efect, unele dintre aceste relații sau întrebări sunt denumite „cuplaj”. În designul bazei de date, există parametri care specifică ce informații vor fi partajate și cui vor fi partajate.
Principala diferență dintre o bază de date convențională și una activă este că ceva apare ca rezultat al altceva. Plățile automate ale facturilor sunt un exemplu de bază de date activă. Un client al unei bănci poate cere instituției sale să plătească unui beneficiar o anumită sumă la o anumită dată în fiecare lună. Când data specificată este atinsă, plățile electronice sunt trimise automat către beneficiarii indicați de informațiile din baza de date.
Denumită uneori arhitectură bazată pe evenimente, o bază de date activă este concepută pentru a întreprinde acțiuni bazate pe anumite declanșatoare. Există de obicei o relație între evenimente. De exemplu, sistemele de baze de date ale punctelor de vânzare (POS) pot recomandă automat un produs pentru un magazin de vânzare cu amănuntul odată ce primesc informații că stocul curent a scăzut la o sumă predefinită. În funcție de modul în care sunt setați parametrii bazei de date, reordonarea efectivă poate avea loc imediat, ca tranzacție separată, sau poate fi amânată.
Tranzacțiile imediate apar alături de evenimentele care declanșează. De exemplu, un sistem POS poate re-comanda un produs conform codului universal de produs (UPC) sau unității de stocare (SKU). Poate procesa nivelurile de inventar și tranzacțiile de comandă în același timp. Mulți comercianți cu amănuntul operează sub acest tip de bază de date activă care primește intrări continue din mai multe surse, inclusiv personal de vânzări și recepție.
Tranzacțiile separate sunt configurate pentru a avea loc în momente diferite. De obicei, baza de date este concepută pentru a examina evenimentul declanșator și poate fi necesar să-l compare cu reguli suplimentare pentru a executa o acțiune. De exemplu, sistemul POS al unui comerciant cu amănuntul poate fi declanșat de un nivel scăzut al stocului, dar acțiunea întreprinsă poate depinde dacă produsul este întrerupt sau dacă un articol este furnizat prin intermediul unui furnizor. Baza de date poate să nu proceseze o comandă dacă regulile sunt setate pentru a respinge acțiunea dacă produsul nu trece de evaluare.
Tranzacțiile amânate sunt similare cu ideea de tranzacții separate, cu excepția faptului că prima trebuie să se încheie înainte ca a doua să fie procesată. În exemplul POS, baza de date poate înregistra că stocul pentru un anumit produs a scăzut sub nivelurile acceptabile la începutul zilei. Cu o tranzacție amânată, procesul de recomandă nu va fi executat până la închiderea activității, când sunt înregistrate nivelurile finale ale stocurilor.