320 likes | 440 Views
Datalagrings- og databehandlingsarkitekturer. The difficulty is in the choice George Moore, 1900. Arkitektur. ANSI/SPARC arkitekturen kom før personlige datamaskiner Det er nå flere muligheter for hvor data lagres og bearbeides. Arkitektur. Remote job entry.
E N D
Datalagrings- og databehandlingsarkitekturer The difficulty is in the choice George Moore, 1900
Arkitektur • ANSI/SPARC arkitekturen kom før personlige datamaskiner • Det er nå flere muligheter for hvor data lagres og bearbeides
Remote job entry • RJE vil si lokal lagring og fjernbearbeiding • Lokal lagring • Ofte billigere • Kanskje sikrere • Fjernbearbeiding • Nyttig når egen PC: • er for treg • har for lite indre lager (RAM) • programvaren ikke er tilgjengelig lokalt • Noe lokal bearbeiding • Klargjøring av data
Personlig database • Lokal lagring og bearbeiding • Eksempel: MSAccess, Filemaker • Fordeler • Personlige datamaskiner er billige • Bedre kontroll • Brukervennlig grensesnitt • Ulemper • I flerbrukersettinger må samme data og applikasjon finnes på flere steder • Vanskelig å dele data • Dårligere sikkerhet og integritet • Kan tapes når den ansatte slutter • Misbruk av tid
Stormaskin-terminal • Fjernlagring og fjernbearbeiding • Knyttet til stormaskiner • Alle delte ressurser administreres av stormaskina
LAN-arkitekturer • Et LAN kopler sammen datamaskiner i et geografisk område • Overføringshastighet opp til 1 000 Mb/s • Tillater deling av enheter (skrivere, disker,...) • En server er en datamaskin som gir og kontrollerer tilgang til delte ressurser
Filserver • Et sentralt datalager for brukere av LANet • Filene er lagret på en filserver • Data bearbeides på brukerens PC • Hele filer overføres over LAN • Kan medføre i stor nettverkstrafikk • Fila låses når noen åpner den for å oppdatere • Begrenset til små filer og lav etterspørsel
Filserver PC Filserver PC For eksempel Access PC
DBMS-server • En server kjører et databasehåndteringssystem • Bare de nødvendige postene sendes over LAN • Mindre belastning på LAN enn filserver • Back-end program på serveren utfører spørringer • Front-end program på clientene håndterer bearbeiding og presentasjon • Mer fordelt arbeid enn hos en filserver
DBMS-server PC DBMS-server For eksempel Oracle PC PC
Client/server • File-server and DBMS-server er eksempler på client/server • Målet er å redusere behandlingskostnaden ved å fordele behandlingen på klienter og tjenere • Klienten er typisk en personlig datamaskin med GUI • Besparelser • Lett å bruke/ færre feil • Mindre trening
Client/server • Kostnaden kan reduseres hvis • Noe bearbeiding kan flyttes fra server til klienter • GUI gir produktivitetsfordeler • Kostnaden stiger ved • Overgang fra terminaler til personlige datamaskiner • Programvaren må skrives om • Client/server er kanskje ikke forsvarlig ved storskala transaksjonsprosessering
Client/Server – andre generasjon DC Thin client manager Operating system DC DC Application Browser DC DBMS manager manager manager LAN Operating system Operating system Operating system Application server Data server Browser DC manager In 204 Operating system
Fordeler ved trelagsmodellen • Sikkerhet • Data skjules i applikasjonsserveren • Ytelse • God pga liten nettverksbelastning • Tilgang • Eldre systemer blir tilgjengelig via gatewayer • Enklere vedlikehold • Få servere vs. mange klienter
Distribuerte databaser • Kommunikasjonskostnader er en nøkkelfaktor i den totale kostnaden. • Overføringskostnader øker med avstand • Lokal behandling sparer tid/penger • En database kan distribueres for å redusere kommunikasjonskostnader
Distribuerte databaser • Databaser er fysisk distribuert som halv-uavhengige databaser • Det er kommunikasjonslinjer mellom hver av databasene • Framstår som én database
Hybride arkitekturer er også “distribuerte databaser” • Ikke som resultat av planlegging, men av historiske årsaker får vi ofte en hybrid arkitektur: • Arkitektur utvikler seg • Gamle strukturer kan ikke uten videre kasseres • Ny teknologi gir nye muligheter • Ideelt skulle mange strukturer lappes sammen for å gi et sømløst bilde av alle organisasjonens databaser. • Prinsipper for distribuerte databaser gjelder for slike hybride arkitekturer
Fundamentale prinsipper for hybride arkitekturer • Transparens (uavhengig av lokasjon) • Ingen avhengighet til en sentral • Lokal autonomi • Kontinuerlig drift 24/7 (24 timer i døgnet 7 dager i uka) • Distribuert behandling av spørringer • Distribuert behandling av transaksjoner
Fundamentale prinsipper for hybride arkitekturer • Uavhengig av replikasjon • Uavhengig av fragmentering • Uavhengig av maskinvare • Uavhengig av operativsystem • Uavhengig av nettverk • DBMS-uavhengig Independence
Distribuert databasetilgang • Remote Request • Remote Transaction • Distributed Transaction • Distributed Request
Remote Request • A single request to a single remote site SELECT * FROM atlserver.bankdb.customer WHERE custcode = '12345';
Remote Transaction • Multiple data requests to a single remote site BEGIN WORK; INSERT INTO atlserver.bankdb.account (accnum, acctype) VALUES (789, 'C'); INSERT INTO atlserver.bankdb.cust_acct (custnum, accnum) VALUES (123, 789); COMMIT WORK;
Distribuert Spørring og Transaksjon • Multiple requests to multiple sites • Each request can access multiple sites BEGIN WORK; INSERT INTO osloserver.bankdb.employee (empcode, emplname, …) SELECT empcode, emplname, … FROM atlserver.bankdb.employee WHERE empcode = 123; DELETE FROM atlserver.bankdb.employee WHERE empcode = 123; COMMIT WORK; * Change from text
Distribuert database design • Horisontal fragmentering • Rader lagres på forskjellige servere • Vertikal fragmentering • Kolonner lagres på forskjellige servere • Hybrid fragmentering • Både horisontal og vertikal fragmentering • Replikering • Samme data på flere servere
Replikering • Full replikering • Tabeller er duplisert på hvert sted • Forbedret dataintegritet • Raskere databehandling • Dyrere • Partiell replikering • Bare indeksene replikeres og gir raskere spørringer • Henting fra fjerndatabasen