2003-01-20 Karlstads Universitet, Datavetenskap 1

2003-01-20
DAV B04 - Databasteknik
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
1
DAV B04 - Databasteknik
!#"%$&
'
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
2
Databaser och
databashanteringssystem
( En databas (DB) är en samling av relaterad data
) representerar någon aspekt av verkligheten; minivärlden
eller University of Discourse (UoD)
( Databashanteringssystem (DBHS)
) programvarusystem som används för att skapa och
)
2003-01-20
underhålla databaser
”Ett filhanteringssystem som kan hantera komplexa
relationer mellan data och hämta och uppdatera data
enkelt och effektivt”
KaU - Datavetenskap - DAV B04 - MGö
Karlstads Universitet, Datavetenskap
3
1
2003-01-20
Databas-system
Ett databas-system (DBS) består av DBHSmjukvaran tillsammans med själva databasen
(applikationer, användare)
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
4
Egenskaper hos databas-system
Data är integrerad och delad
I DBHS lagras en beskrivning av databasen
struktur, integritetsregler mm
Visst mått av dataoberoende
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
5
Datamodell
Används för att
gömma implementationsdetaljer
ge användarna en konceptuell vy av databasen
Stödjer många olika vyer av databasen
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
Karlstads Universitet, Datavetenskap
6
2
2003-01-20
(Andra) fördelar med databassystem
( Redundansen kan minskas
( Säkerheten kan förbättras
( Flera olika användargränssnitt
( Integriteten kan upprätthållas
( Stöd för återhämtning av data
( Tiden för applikationsutveckling kan minskas
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
7
Nackdelar med databas-system
Ofta höga kostnader för hårdvara, mjukvara
och utbildning
Komplexiteten hos ett DBHS kan ibland
vara onödig eller ge för låg prestanda
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
8
Användare av databas-system
Databasadministratörer (DBA)
Applikationsprogrammerare
Slutanvändare
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
Karlstads Universitet, Datavetenskap
9
3
2003-01-20
Olika typer av databas-system
1965-1980
främst hierarkiska databaser och
nätverksdatabaser
Från ca 1980
de flesta nya databas-system varit
relationsdatabaser
Från ca 1990
objektorienterade och objektrelationella databaser
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
10
Datamodeller
En samling koncept för att beskriva
databasens struktur
De integritetsregler den måste följa
Oftast också de operationer som går att
göra på databasen
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
11
Högnivå-modeller
Använder koncept som ligger nära hur
användare förstår data.
Används ofta vid databasdesign.
2003-01-20
Exempel E/R-modellen
KaU - Datavetenskap - DAV B04 - MGö
Karlstads Universitet, Datavetenskap
12
4
2003-01-20
Logiska modeller
Använder koncept som kan förstås av
användare
Ligger inte alltför långt ifrån hur data
organiseras i databasen
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
13
Lågnivå-modeller
Använder koncept som beskriver i detalj hur
data är lagrad rent fysiskt
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
14
Databasens schema
Beskrivningen av databasen
Kan visas i ett schemadiagram
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
Karlstads Universitet, Datavetenskap
15
5
2003-01-20
Exempel på schemadiagram
E x te r n n iv å 1
E x te r n n iv å 2
S A L A R IE S
E n o
P ay
E M P L O Y E E S
E m p nr
D ep n r
K o n c e p tu e ll n iv å
E M P L O Y E E S
E m p lo y e e _ n u m b e r
D e p a rtm e n t_ n u m b e r
s a la ry
I n te r n n iv å
S T O R E D _ E M P
P R
E M
D E
P A
-
-
E F IX
P #
P T #
Y
L E N G T H
T
T
T
T
Y
Y
Y
Y
P
P
P
P
E
E
E
E
=
=
=
=
= 2 0
B Y T E (6
B Y T E (6
B Y T E (4
W O R D ,
),
),
),
O
O
O
O
F
F F S E
F F S E
F F S E
F S E T
T
T
T
=
=
=
=
1
20
6 , IN D E X
12
6
= E M P X
S y s te m e t la g r a r in fo r m a tio n o m s a m m a p o s t i tr e o lik a n iv å e r .
S y s te m e t m å s te o c k s å k ä n n a till a tt t e x e m p n r i d e n e x te r n a n iv å n m o ts v a ra r
e m p lo y e e _ n u m b e r p å d e n k o n c e p tu e lla n iv å n .
D e s s a m o ts v a rig h e te r e lle r m a p p n in g a r ä r o c k s å la g ra d e i
s y s te m e t.
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
16
Databasens gränssnitt
Varje användare kommunicerar med
databasen m h a ett språk
Programmerare: konventionellt programspråk (C eller Pascal)
Slutanvändare: något frågespråk (SQL), eller kommunicerar med
databasen genom något specialdesignat menysystem
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
17
Språk
Varje språk inkluderar
ett underspråk (data sublanguage eller DSL)
2003-01-20
som sägs vara inbäddat i värdspråket (host
language)
KaU - Datavetenskap - DAV B04 - MGö
Karlstads Universitet, Datavetenskap
18
6
2003-01-20
Dataoberoende
Logiskt dataoberoende
Det går att göra ändringar i det konceptuella
schemat utan att det påverkar de externa
schemana eller applikationsprogrammen
Fysiskt dataoberoende
Det går att göra ändringar i det interna schemat
utan att det påverkar det konceptuella schemat
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
19
Beståndsdelar DSL
Data Definition Language (DDL)
den del av språket som används för att definiera
de olika objekten som databasen består av
Data Manipulation Language (DML)
2003-01-20
den del av språket som används för att
manipulera eller utföra operationer på sådana
objekt
KaU - Datavetenskap - DAV B04 - MGö
20
Applikationer skrivna av
användaren
Skrivna i något programspråk (t ex C) med
inbäddad SQL eller applikationer skrivna i
SQL
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
Karlstads Universitet, Datavetenskap
21
7
2003-01-20
Applikationer skrivna av någon
leverantör (tools)
Kompilatorer för något frågespråk,
rapportgeneratorer, grafiska
användargränssnitt, kalkylprogram,
statistikprogram, 4GL-kompilatorer, CASEverktyg
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
22
Program som används för att
administrera databasen
Laddningsprogram, backup-program,
reorganisationsprogram, statistik- och
analysprogram
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
23
Katalogen (Data Dictionary)
Ett DBHS måste innehålla en katalog eller ett
data dictionary, där detaljerad information om
systemets olika delar lagras
information om tabeller, index, användare,
integritets- och säkerhetsregler
2003-01-20
lagras också som tabeller, så att det går att ställa
frågor till katalogen på samma sätt som till
databasen
KaU - Datavetenskap - DAV B04 - MGö
Karlstads Universitet, Datavetenskap
24
8
2003-01-20
Översikt av kursen
Genomgång av relationsmodellen
Genomgång av SQL + praktiska övningar
Konceptuell databasdesign
Fysisk databasdesign
Transaktionshantering
Databassäkerhet
Web-databaser och distribuerade databaser
Laborationer: teori, design, implementation och
användargränssnitt
2003-01-20
KaU - Datavetenskap - DAV B04 - MGö
Karlstads Universitet, Datavetenskap
25
9