Download de presentatie
De presentatie wordt gedownload. Even geduld aub
GepubliceerdBert Mulder Laatst gewijzigd meer dan 9 jaar geleden
1
Datamodellering en –verwerking 8C020 college 1ste week
docent: Dragan Bošnački Biomodellering en Bioinformatica, BMT WH 3.101 Tel. 5159 ,
2
Inhoud, Motivatie Datamodellering/Databases Waarom? Bioinformatica
Veel databases gebruikt in academia en bedrijfsleven: GenBank, SwissProt, KEGG, Reactome, … Alledaagse leven: geldautomaat, via Internet kopen en reserveren, studentenadministratie, … Processmodellering databewerking Parallelle programma’s Keerpunt: Multi-core processoren Biologische processen-processen in informatica Systeembiologie
3
Doel van het vak kennis en inzicht in
elementaire concepten met betrekking tot informatiesystemen/databases ontwikkeling van informatiesystemen/databases kennis van moderne methoden voor het specificeren en ontwerpen van databases datamodelleren procesmodelleren ervaring met het modelleren van informatiesystemen en de manipulatie van gegevens met behulp van een querytaal ervaring met het ontwikkelen van een relationele database met Microsoft Access Modelleren van- en redeneren over biologische processen
4
Onderwerpen college Informatiesystemen, Databases
Datamodelleren, Entiteit-relatie model Database modelleren, Relationeel model Querytalen, SQL Database implementeren, Microsoft Access Procesmodelleren, formele modelen, Petri netten, verificatie Analogie biologische – computationele/berekenings processen (vorig jaar)
5
Literatuur Collegedictaat Datamodellering en –verwerking 8C020
G.J. Houben en N. H. L. Kuijpers Boek Database Systems Concepts A. Silberschatz, H.F. Korth, S. Sudarshan McGrow-Hill, 2002
6
Data, Cijfers, Mededelingen
Afronding: opdracht deel A opdracht deel B schriftelijk tentamen Cijfer: 50% tentamen 50% opdracht Allebei voldoende
8
Voorbeeld Datamodelleren
We willen records/rijen over genen met records/rijen over clusters koppelen Elk cluster kan met één of meer genen gekoppeld worden Elk gen is gekoppeld met hoogstens één cluster De koppeling is geimplementeerd door introductie van nieuwe velden in de rijen (nieuwe kolommen in de tabel) Vraag: Waar willen we nieuwe kolomen introduceren – in de gentabel of in de clustertabel? Antwoord: in de gentabel Efficienter oplossing we weten het aantal kolomen van te voren Slechts een extra kolom
9
Voorbeeld Procesmodelleren
Prog/Proc A: Print A1; Print A2 Prog/Proc B: Print B1; Print B2 Outcomes: A1;A2;B1;B2 A1;B1;B2;A2
10
Voorbeeld Procesmodelleren
Proc A: Proc B: X=1; Y = 0 Y=4 ; X = X+Y We want X == 5 after Proc A has ended Solution: Proc A: Proc B: Block(Y); X=1; Y = 0 Y=4 ; X = X+Y; Release(Y)
11
Voorbeeld Procesemodelleren
Proc A: Proc B: X= … ; Y=… ; Y=… ; X=… ; Proc A: Proc B: Block X; Block Y; Block Y; Block X; X= … ; Y=… ; Y=… ; X=… ; Release Y; Release X; Release X Release Y
12
Voorbeeld procesmodeleren
Proc A: Proc B: Block X; Block Y; Block Y; Block X; X= … ; Y=… ; Y=… ; X=… ; Release Y; Release X; Release X Release Y Trouble – besides the “normal” execution A: Block X; A: Block Y; A: Release Y; A: Release X; B: … there is also a blocking one A: Block X; B: Block Y; Deadlock!
13
Informatiesystemen van gegevens naar informatie Informatiesysteem
Een systeem voor opslaan en processeren van informatie Algoritmen + Datastructuren = Programmeren Processen + Informatie (Data) = Information System ? Belangrijk in alledagse leven Voorbeelden: WWW – a gigantisch (gedistribueerd) informatiesystem ATM machinens Mobile phone studyweb
14
Databases Database centraal concept (onderdeel) van een informatie systeem Georganiseerde gerelateerde informatie DataBase Management System (DBMS) Bieden aan de gebruikers een efficiente manier voor processeren van informatie
15
Conceptueel model het maken van een conceptueel model - één van de belangrijkste stappen in de ontwikkeling van een informatiesysteem conceptueel model – een abstracte beschrijving van de functionaliteit een conceptueel model bevat twee aspecten statische eigenschappen: data dynamische eigenschappen: processen
16
Benadering de data en het proces zijn allebei belangrijk:
samen geven zij een integrale beschrijving het ontwerp van een volledig conceptueel model is niet eenvoudig het ontwikkelen van het model gebeurt stap voor stap twee mogelijke benaderingen datagericht: eerst de data, dan het proces procesgericht: eerst het proces, dan de data
17
Datamodelleren de datagerichte benadering stelt de data centraal:
het proces wordt beschreven in termen van de data datamodelleren (gegevensmodelleren) het beschrijven van welke gegevens relevant zijn hoe die gegevens met elkaar in verband staan in het ontwikkelingstraject van een informatiesysteem is datamodelleren het maken van een conceptueel model waarbij de ontwerper zich concentreert op de data
18
Entity Relationship Model
Entity-Relationship Model (ER Model, ERM) [Chen, 1976] één van de meest gebruikte technieken ERM gebruikt twee concepten: entiteit: object uit de relevante belevingswereld relatie: verband tussen entiteiten ERM Communicatiemiddel tussen ontwerpers en gebruikers: eenvoudig te gebruiken veel CASE-tools beschikbaar voor ondersteuning de modelleerconcepten blijken intuïtief
19
ER-Diagram conceptueel model voor een specifieke situatie
bestaat formeel uit een ER-model en een ER-diagram ER-model een gedetailleerde, logische representatie van gegevens ER-diagram grafische representatie van een ER-model vaak gebruikt men een ER-diagram en drukt daarmee eenvoudige belangrijkste onderdelen van een ER-model uit
20
Entiteit entiteit - een relevant begrip uit het objectsysteem
een concept in de gebruiksomgeving waarover we gegevens willen bijhouden (persoon) werknemer, student, patiënt (plaats) woonplaats, stad, land (object) machine, gebouw, auto (gebeurtenis) verkoop, registratie, verlenging (concept) rekening, cursus, afdeling
21
Entiteit-type een entiteit-type (entiteit-klasse)
een collectie van entiteiten met gemeenschappelijke eigenschappen representatie van entiteit-types in ER-diagram:
22
Entiteit-instantie een entiteit-instantie (van een entiteit-type)
(het bestaan van) een enkel element van het entiteit-type een entiteit-type geeft een generieke beschrijving van hoe de specifieke entiteit-instanties van het entiteit-type er uit kunnen zien relevante eigenschappen van entiteit-type PERSONEELSLID : PERSONEELSNUMMER NAAM ADRES WOONPLAATS JAAR-IN-DIENST GEBOORTEDATUM
23
Entiteit-instantie (2)
twee instanties van PERSONEELSLID Anna Baanders Carla Derks Markt 3 Groenplein 2 Eindhoven Eindhoven
24
Atribuut-type een attribuut(-type) (van een entiteit-type)
beschrijft een karakteristieke eigenschap van een entiteit-instantie van dat entiteit-type die van belang is binnen het objectsysteem attribuut-typen van het entiteit-type STUDENT: STUDENTNUMMER, NAAM, ADRES, TELEFOONNUMMER attribuut-typen van het entiteit-type AUTO: VOERTUIGIDENTIFICATIE, KLEUR, GEWICHT, VERMOGEN attribuut-typen van het entiteit-type WERKNEMER: WERKNEMERSNUMMER, NAAM, ADRES, VAARDIGHEDEN
25
Entiteit-type met atribuut-typen
26
Kandidaat-sleutel een kandidaat-sleutel (van een entiteit-type)
attribuut-type (of verzameling van attribuut-typen) dat elke instantie van het type uniek identificeert en onderscheidt van de andere instanties van dat type STUDENT: STUDENTNUMMER AUTO: VOERTUIGIDENTIFICATIE WEDSTRIJD: combinatie van THUIS-TEAM en UIT-TEAM WERKNEMER: combinatie van NAAM en ADRES, of WERKNEMERSNUMMER
27
Primaire-sleutel primaire sleutel (van een entiteit-type) -
één van de kandidaat-sleutels van dat type: het is de kandidaat-sleutel waarvan is bepaald dat die de entiteit-instanties uniek identificeert
28
Primaire sleutel (2) richtlijnen voor primaire sleutels:
kies sleutels met waarden die niet veranderlijk zijn in de tijd kies geen sleutels met (ook) waarden als onbekend of niet van toepassing kies in plaats van grote samengestelde sleutels één kunstmatig attribuut-type: surrogaat-sleutel
29
Meervwaardig atribuut-type
een meerwaardig attribuut-type - een attribuut-type dat meer dan één waarde kan hebben voor elke entiteit-instantie
30
Relatie-type een relatie-type
een verband tussen entiteit-instanties van één of meer entiteit-typen dat van belang is binnen het objectsysteem
31
Voorbeeld
32
Atribuut-type van relatie
ook een relatie-type kan attribuut-typen (eigenschappen) hebben
33
Graad van relatie-type
de graad van een relatie-type duidt het aantal aan van de verschillende entiteit-typen betrokken in de relatie (1) unair (2) binair (3) ternair zelden hoger dan 3
34
Unair relatie-type
35
Unair relatie-type
36
Binair relatie-type
37
Ternair relatie-type
38
Cardinaliteit cardinaliteit van een relatie-type
het aantal entiteit-instanties van een entiteit-type die geassocieerd kunnen zijn met elke entiteit-instantie van een ander entiteit-type voorbeeld van “veel”
39
Minimum/maximum/vrij/verplicht
Verwante presentaties
© 2024 SlidePlayer.nl Inc.
All rights reserved.