Databascentrerad arkitektur
Databascentrerad arkitektur eller datacentrerad arkitektur har flera distinkta betydelser, i allmänhet relaterade till mjukvaruarkitekturer där databaser spelar en avgörande roll. Ofta är denna beskrivning avsedd att kontrastera designen mot ett alternativt tillvägagångssätt. Till exempel kan karakteriseringen av en arkitektur som "databascentrerad" betyda valfri kombination av följande:
- använder ett standardiserat, generellt hanteringssystem för relationsdatabas , i motsats till anpassade i minnet eller filbaserade datastrukturer och åtkomstmetoder . Med utvecklingen av sofistikerad DBMS- mjukvara, varav mycket är antingen gratis eller ingår i operativsystemet, har applikationsutvecklare blivit allt mer beroende av standarddatabasverktyg, särskilt för snabb applikationsutveckling .
- använder dynamisk, tabelldriven logik, i motsats till logik i tidigare kompilerade program . Användningen av tabelldriven logik, det vill säga beteende som i hög grad dikteras av innehållet i en databas, gör att program blir enklare och mer flexibla. Denna förmåga är en central egenskap hos dynamiska programmeringsspråk . Se även kontrolltabeller för tabeller som normalt är kodade och inbäddade i program som datastrukturer (dvs inte kompilerade satser) men som lika gärna kan läsas in från en platt fil , databas eller till och med hämtas från ett kalkylblad .
- använda lagrade procedurer som körs på databasservrar , i motsats till större beroende av logik som körs i mellanskiktsapplikationsservrar i en flerskiktsarkitektur . I vilken utsträckning affärslogik bör placeras i backend kontra en annan nivå är föremål för pågående debatt. Till exempel presenterar Toon Koppelaars en detaljerad analys av alternativa Oracle-baserade arkitekturer som varierar i placeringen av affärslogik, och drar slutsatsen att ett databascentrerat tillvägagångssätt har praktiska fördelar med tanke på enkel utveckling och underhållbarhet.
- att använda en delad databas som grund för att kommunicera mellan parallella processer i distribuerade datortillämpningar, i motsats till direkt kommunikation mellan processer via meddelandeöverföringsfunktioner och meddelandeorienterad mellanprogramvara . En potentiell fördel med databascentrerad arkitektur i distribuerade applikationer är att den förenklar designen genom att använda DBMS-försedd transaktionsbearbetning och indexering för att uppnå en hög grad av tillförlitlighet, prestanda och kapacitet. Till exempel Base One en databascentrerad distribuerad datorarkitektur för grid- och klusterberäkningar , och förklarar hur denna design ger förbättrad säkerhet, feltolerans och skalbarhet .
- en övergripande företagsarkitektur som gynnar delade datamodeller framför att låta varje applikation ha sin egen, idiosynkratiska datamodell.
Till och med en extrem databascentrerad arkitektur kallad RDBMS-only-arkitektur har föreslagits, där de tre klassiska lagren i en applikation hålls inom RDBMS . Denna arkitektur använder i hög grad DBPL (Database Programming Language) i RDBMS. Ett exempel på programvara med denna arkitektur är Oracle Application Express (APEX).
Se även
- Kontrolltabeller
- Datacentrerade programmeringsspråk
- Det datadrivna programmeringsparadigmet , som gör informationen som används i ett system till den primära designdrivrutinen.
- Se datacentricmanifesto.org