Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Databasearkitektur og - implementering We shape our buildings: thereafter they shape us Winston Churchill.

Liknende presentasjoner


Presentasjon om: "Databasearkitektur og - implementering We shape our buildings: thereafter they shape us Winston Churchill."— Utskrift av presentasjonen:

1 Databasearkitektur og - implementering We shape our buildings: thereafter they shape us Winston Churchill

2 Databasearkitektur og - implementering En arkitektur skal Svare på spørringer innen rimelig tid Minimere databehandlingskostnaden Minimere lagringskostnaden Minimere dataoverføringskostnaden Målene kan være motstridende

3 Ikke skjemaarkitektur

4 Arkitektur med ett skjema

5 Toskjema-arkitektur

6 ANSI SPARC En komité for standardisering av databaseteknologi (1972) Fokuserte på grensesnitt Internt Konseptuelt Eksternt

7 Eksternt skjema Systemet sett fra klientens side (view) Det kan være flere view

8 Konseptuelt skjema Database designerens view Hele datamodellen Inneholder alle filer (tabeller) og alle felter i tabellene Skal være uavhengig av lagringsstrukturer og datatilgangsmekanismer Kan inneholde beskrivelser som gjelder sikkerhet og integritet

9 Internt skjema Laveste nivå Gjelder lagring av og tilgang til data Inkluderer indeksering og postrekkefølge

10 Datastruktur og datalagring The modern world has a false sense of superiority because it relies on the mass of knowledge that it can use, but what is important is the extent to which knowledge is organized and mastered Goethe, 1810

11 Datastrukturer Målet er minst mulig diskaksess Disker er relativt langsomme sammenliknet med indre lager Skrive brev sammenliknet med telefon Disken er en flaskehals Hensiktsmessige datastrukturer kan redusere diskaksess

12 Databaseaksess (tilgang)

13 Disk

14 Disker Data lagres som spor på en skive-overflate En disk kan ha flere skiver som hver har to sider Rotasjonsforsinkelse Venting på at stedet der dataene som skal hentes kommer fram til lese/skrivehodet I størrelsesorden 5 ms for en harddisk Rotasjonshastighet er bestemt av diskprodusenten Lesearmforsinkelse Å flytte lese/skrive-hodet til sporet der dataene er lagret. Ca 10 ms for en harddisk. Buffer Harddisken kan ha egen RAM der flere spor kan være forhåndslagret og der data som skal skrives kan mellomlagres.

15 Minimere tilgangstid Rotasjonsforsinkelsen er bestemt av diskprodusenten Armforsinkelsen kan reduseres ved å lagre filene på Samme spor Samme spor på hver overflate Sylinder

16 Clustering Poster som ofte hentes samtidig lagres sammen Intra-fil clustering Poster i samme fil Sekvensiell fil Inter-fil clustering Poster i forskjellige filer En nasjon og dens aksjer

17 Disk manager Administrerer fysisk I/O Ser disken som en samling sider Har en katalog over alle sider på disken Henter og erstatter og administrerer ledige sider

18 File manager Administrerer lagring av filer Ser disken som en samling lagrede filer Hver fil har en unik identifikator Hver post i en fil har en unik post- identifikator

19 File managerens oppgaver Lage en fil Slette en fil Hente en post fra en fil Oppdatere en post i en fil Legge til en ny post i en fil Slette en post fra en fil

20 Sekvensiell henting Gitt en fil med poster som hver opptar en side Spørringer som krever gjennomgang av alle poster vil kreve diskaksesser F.eks Finn alle varer av type ’E’ 10000*9ms=90s Mange diskaksesser er bortkastet hvis få poster møter vilkåret.

21 Indeksering Indekser gir raskere tilgang ved å redusere antall diskaksesser Indeksen er mye mindre enn hele tabellen (kan lastes med få diskaksesser) og den er sortert (støtter dermed binærsøk)

22 Spørring ved hjelp av index Les indeksen inn i indre lager (RAM) Let gjennom indeksen for å finne poster som møter vilkåret Hent bare poster som inneholder dataene en leter etter Resultat: Antall diskaksesser er betydelig redusert når vilkåret slår til for få poster.

23 Vedlikehold av en indeks Å føye til en post krever minst to diskaksesser: Oppdatere fila Oppdatere indeksen Kompromiss Raskere spørringer Tregere oppdatering Oppdatering dreier seg ofte om én post om gangen og da er tregheten ikke et problem.

24 Bruk av indekser Sekvensiell gjennomgang av en del av en fil Eksistenstesting Finne ut om en post eksisterer uten å måtte hente den.

25 Multiple indekser Finne røde varer av type 'C' Begge indekser kan gjennomsøkes i indre lager for å identifisere poster som skal hentes Dårlig eksempel fordi det er mange varer av type C og vil være mange røde varer. Da er det lite å tjene på indeksering

26 B-tre En datastruktur for indekser Brukes ofte i relasjonsdatabaser Grunnlag for IBM’s VSAM som DB2 bygger på Støtter sekvensiell og direkte tilgang Har to deler Sekvens-settet Index settet

27 B-tre Sekvenssettet er en indeks med pekere til poster Indexsettet er en tre-struktur som er index til sekvens-settet

28 B-tre (Fra Weiss: Algorithms and Data Structures using Java) De to øverste nivåene i treet kan være innlastet i RAM En post kan da finnes med kun én diskaksess. Eller to hvis tabellen er så stor at man trenger tre nivåer i indeksen. En indeksnode svarer til én page på disken. Én page kan f.eks være 8 kB. Er feltet 12 byte og diskadresse 4 byte, vil indeksnoden inneholde ca 500 verdier. To nivåer med indeks kan da nå 500*500 eller sider på disken

29 Hashing Er en teknikk for å redusere diskaksesser når en vil gå direkte til en gitt post. Unngår indeks Antall diskaksesser for å nå en post er nær én Prinsipp: Hashfeltet blir gjort om til en hashadresse ved å beregne en hashfunksjon

30 Hashing hashadresse = rest ved divisjon av SSN med Disk address SSN Synonym chain Overflow areaFile space } } }

31 Ulemper ved hashing Forskjellige verdier konverterer til samme hash-adresse Synonymer Lagre den posten som kolliderer i et eget overflytområde Eller på neste ledige plass Lange kjeder med synonymer reduserer ytelsen Postene lagres ikke sekvensielt

32 Linked list A structure for inter-file clustering An example of a parent/child structure

33 Linked lists There can be two-way pointers, forward and backward, to speed up deletion Each child can have a pointer to its parent

34 Bit mapindekser Bruker en enkelt bit heller enn mange bytes for å vise en bestemt verdi i et felt Farge kan bare ha tre verdier og bruker dermed tre biter ItemcodeColorCodeDisk address RedGreenBlueAN d d d d4

35 Bitmapindekser En bitmapindaks sparer plass og dermed diskaksesser og tid sammenliknet med en vanlig indeks. ItemcodeColor Char(8) Code Char(1) Disk address 1001BlueNd1 1002RedAd2 1003RedAd3 1004GreenAd4

36 Joinindekser Gir raskere join ved å lage en indeks for primærnøkkel/hovednøkkel-paret nation indexstock index natcodeDisk addressnatcodeDisk address UKd1UKd101 USAd2UKd102 UKd103 USAd104 USAd105 join index nation disk address stock disk address d1d101 d1d102 d1d103 d2d104 d2d105

37 Datakodingsstandarder ASCII UNICODE

38 ASCII Hver alfabetisk, numerisk og spesialtegn er representert med en 7- bits kode. 128 mulige tegn ASCII kode krever vanligvis én byte

39 UNICODE En unik binær kode for hvert tegn, uansett hvilken plattform, hvilket program eller språk. Jnneholder for øyeblikket forskjellige tegn hentet fra 24 støttede språk-script Dekker de viktigste skrevne språkene To former for koding Default er 16-bit formen En 8-bits form, UTF-8, gjør den enklere å bruke med eksisterende ASCII-baserte systemer Unicode er default koding for HTML og XML UNICODE danner grunnlaget for software for et globalt marked

40 Datalagringsenheter Kriterier for valg av datalagringsenheter til ulike formål: On-line data Aksesstid Kapasitet Back-up av filer Sikkerhet mot datatap Arivering av data Langtidslagring

41 Nøkkelvariabler ved valg av lagringsenheter Datavolum Volatilitet – hvor fort endrer dataene seg Aksesshastighet Lagringskostnader Lagringsmediets pålitelighet Krav til lagringstid Leselighet på lang sikt Pålitelighet

42 Magnetisk teknologi Opp til 50 % av hardware-kostnaden i informasjonssystemer brukes på magnetisk lagring Et marked på $50 milliarder Viktigste typen datalagring En moden og utbredt teknologi Sterke magneitske felter kan slette data Magnetiseringen svekkes over tid

43 Harddisker Forseglet og permanent montert Svært pålitelige Aksesstider på 4-10 ms Overføringshastigheter opp til 160 Mbytes/s Kapasiteter fra Gbytes til Tbytes

44 Innmaten i en harddisk

45 RAID Redundant arrays of inexpensive or independent disks Utnytter at store produksjonsvolumer til PC-markedet gir rimelige harddisker Kan også gi øket sikkerhet Gir mindre sårbarhet for feil. Kan ikke erstatte jevnlig backup.

46 Speiling (Mirroring)

47 Write Like kopier av en fil skrives til hver disk i arrayen Read Side 1 leses fra disk 1, side 2 leses fra disk 2 osv. Sidene settes sammen i indre lager Aksesstiden deles med antall disker i arrayen Lese-feil Les den ønskede siden fra en annen disk Kompromisser Raskere aksesstid Større sikkerhet Diskplass

48 Striping Data lagres noe på den ene og noe på den andre disken. Sikkerhet kan ivaretas med en egen paritetsdisk.

49 Striping Krever minst tre disker for sikkerehet Write Halvparten av fila til første disk Halparten av fila til andre disk Paritet til tredje disk Read Porsjoner fra hver disk settes sammen i hukommelsen Lesefeil Tapte biter rekonstrueres fra paritetsdata på den tredje disken Kompromisser Bedret datasikkerhet Bedre lagringskapasitet enn speiling Tregere enn speiling

50 RAID levels Alle nivåer unntatt 0 har felles trekk: Operativsystemet ser RAID-diskene som en logisk disk Data er distribuert på flere disker Paritet brukes for å redde data i feilsituasjoner

51 RAID levels Level 0 Data er stripet (spredd) på flere disker Ingen redning når en disk svikter Level 1 Speiling: samme data på to disker Brukes ved kritiske applikasjoner som ikke kan stoppe Level 3 Striping med paritet Level 5 En variant av striping Paritetsdata er spredd på flere disker Mindre kapasitet enn level 1 Høyere I/O hastighet enn level 3

52 RAID 5

53 Andre RAID-nivåer Se

54 RAID på UUS

55 Magnetisk teknologi Utskiftbar magnetisk disk Floppydisk Magnetisk tape Magnetisk tapekassett Masselager

56 Masselager på UUS

57 Solid State Tilkoples som diskstasjoner Lagring på minnebrikker 10 ganger raskere enn magnetisk minne, (fart begrenses av tilkoplingsmåten) Kr 20 per Mbyte (kr 1 per MB for lagringpenner) Magnetisk disk er ca 0,005 kr per MB Aksjehandel og video-streaming anvendelser

58 Optisk teknologi Nyere teknologi Bruker laser for å lese å skrive data Store lagringstettheter Lav kostnad Direkte tilgang Egnet for langtidslagring Ingen fare for kollisjon mellom lesehode og medium

59 Optisk teknologi Optical storage WORM write once– ready many CD-ROM write once– read many Magneto-optical write many– read many DVD multiple formats

60 CD-ROM CD kan lagre både data og lyd Rimelig fordi samme komponenter kan brukes i CD spillere og CD-ROM stasjoner ROM - read only memory Kapasitet 650 MB Ganske langsomt utstyr 100 ms tilgangstid

61 CD-R Opptaksplater De fleste CD-R skrivere støtter inkremetnell skriving, hvor data kan lagres til en CD uten å fullføre sesjon eller CD Mer data kan tilføres over tid CD kan ikke leses i en CD-ROM spiller før den er fullført (finalized) Billig lagringsmedium 3 for 650 MB=0,005 kr per megabyte. (Dyrere enn på harddisk)

62 CD-RW ReWritable Leseren må være multiread kompatibel Mange nyere CD-ROM lesere takler CD- RW Klart dyrere medium enn CD-R

63 WORM Write-once read-many Populært for lagring av bilder Høy kapasitet Opp til 30 GB Relativt langsom ms tilgangstid Juke-bokser for store datavolumer Ikke så sikker som CD-ROM

64 Magneto-optisk disk Lese-skrive-medium med høy kapasitet 3.5" disk kan lagre opp til 256 MB Ikke så rask som harddisk 10 ms aksesstid Kompakt Pålitelig Egnet for dataoverføring, sikkerhetskopiering og arkivering

65 Digital Versatile Disc (DVD) Samme fysiske størrelse som CD-ROM, men opp til 28 ganger så stor kapasitet (dvs 17 Gbytes) DVD stasjoner har sannsynligvis overføringshastigheter på ca 2,76 MB/s og aksesstid på 150 ms DVD-ROM spilleren kan håndtere både CD og CD- ROM Read-only versjoner DVD-Video (filmer) DVD-ROM (programvare) DVD-Audio (sanger) DVD-R 3,9 GB Recordable (write once, read many) DVD-RAM 2,6 GB Slettbar (write many, read many)

66 SAN Storage area network Støtter dynamisk deling av store datamengder uavhengig av operativsystem eller applikasjon Kommuniserer via et hurtig Fibre Channel interface Høyhastighetsforbindelse mellom datamaskiner Prisene varierer i området fra $20-30,000 til 5 millioner

67 Levetid for lagrede data Permanent High quality Newspaper Paper Archival quality (silver) Medium-term film Microfilm CD-R (recordable) CD-ROM (read only) Optical disk Quarter-inch tape VHS tape Half-inch tape cartridge Half-inch reel-to-reel Magnetic tape Storage life in years of high quality brands

68 Vurdering av lagringsenheter DeviceAccess speedVolumeVolatilityCost per megabyteReliabilityLegal standing Solid state**** **** Fixed disk*** *** RAID*** ****** Removable disk** ***** * Floppy******** Tape********** Cartridge***** *** Mass storage***** *** SAN*** ****** CD-ROM**** *** CD-R**** ***** CD-RW**** **** WORM***** ** Magneto-optical********** * DVD-ROM***** DVD-R***** ** DVD-RAM********* *

69 Datakomprimering Koding av digitale data, slik at de trenger mindre lagerplass (og mindre båndbredde) Tapsfri komprimering Fila kan gjenopprettes slik den var Komprimering med tap Fila kan ikke gjenopprettes slik den var Brukes til bilder, audio og video

70 Tape eller Disk Nærmer seg krysningspunkt Men tape fortsatt billigst Tape kr 700 for 300GB (kilde it-sjefen hos TV2 V2005) Taperoboter fortsatt mye brukt Disk har store fordeler: Hurtighet Holdbarhet Alltid on-line Men sammenkoplingsløsningene for et stort antall disker er fortsatt kostbar.


Laste ned ppt "Databasearkitektur og - implementering We shape our buildings: thereafter they shape us Winston Churchill."

Liknende presentasjoner


Annonser fra Google