Datamodellering en –verwerking 8C020 college 1ste week

Slides:



Advertisements
Verwante presentaties
SQL deel 2: datamodel ontwerp
Advertisements

Schematechnieken en databases
Module 7 – Hoofdstuk 5 (1) SQL – een begin.
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Het ER model Een powerpoint presentatie, gemaakt door: F. Triep
Meerdere tabellen: Relaties en Joins
Hogeschool HZ Zeeland 19 augustus 2003augustus 2003 Data Structuren & Algoritmen Week 1.
Databases Informatica Ga verder met een muisklik. SQL FCO DBMS NE FA
1 Demo of Praktijk Over de problematiek bij het ontwerpen van informatiesystemen Mark Dumay Afstudeervoordracht 15 oktober 2004.
Entiteit-Relatie Model
Datamodellering en –verwerking 8C020 college 3
BESTURINGS SYSTEMEN Vincent Naessens.
HALLO OPLETTEN : Waarom sql DOEN : Introductie opdracht
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Beginnen met actieonderzoek Hoe pak je dat aan?
Normaliseren Datamodellering 2006.
Opleiding AI cursus Databases
Entity Relation Model (ER-model).
DB Inleiding Databases Geert-Jan Houben.
Ontwerpen van Informatiesystemen met
Download en installeer de gereedschappen
SQL & datamodelleren.
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Normalisatie Relationeel databaseontwerp:
1 Het probleem RO Milieu Landbouw SocZekerheid Etc. LerenWerkenWonenPensioenEtc. Overheids- organisatie Burger ??? Regelgeving per domein Vraag op levensmoment.
Opleiding Kunstmatige Intelligentie cursus Databases voor AI
Opleiding AI cursus Databases
Samenwerken en netwerkvorming Brede School 16 mei 2008 Rita L’Enfant
HALLO OPLETTEN : Waarom sql DOEN : Introductie opdracht
Databases I (H. 1) Wiebren de Jonge Vrije Universiteit, Amsterdam Voorlopige versie 2003.
Besturings- systeem A Computer A Besturings- systeem B Computer B Netwerk Handmatige taak I Applicatie 2Applicatie 1 Handmatige taak II Applicatie 3 Gebruiker.
Hoofdstuk 6 – Tabellen en grafieken
Inleiding Kennistechnologie §Hoofdstuk 1: Introductie §Hoofdstuk 2: Kennissystemen in context §Hoofdstuk 3: Kennisacquisitie.
Designing Knowledge Systems b Hoofdstuk 11 van Knowledge Engineering and Management. The CommonKADS Methodology. b A.Th. Schreiber, J.M. Akkermans, A.A.Anjewierder,
Presentatie Studiemiddag Indexen en Nadere Toegangen Ralph Stuyver, Projectmanager 4 maart 2010.
Databases & SQL Docent: Henny Klein
Grafieken, organigrammen
1212 /b Ontwerpen en Presenteren met ICT dr.ir. Jos van Leeuwen Faculteit Bouwkunde cap.groep Ontwerp Systemen.
Een Module over Model Checking voor het VWO Frits Vaandrager1, David Jansen1 & Els Koopmans2 1Radboud Universiteit Nijmegen 2Olympus College Arnhem.
Databases.
Procesmodellen en Use Cases als Basis voor Zorgvuldige Componentselectie E. Maij M. Poerschke M. Kalshoven J. Zwetsloot DEMO UML MIC2000.
Datamodellering en –verwerking 8C020 college 2
Datamodellering en –verwerking 8C020 college 6
Ordenen van gegevens Inleiding informatiesystemen © Sander Cox.
Datamodellering en –verwerking 8C020 college 9. Terugblik college week 8 Terugkoppeling opdracht deel A Toepassingen van Petri-netten in biologie Oefeningen.
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Databases I (Info) Wiebren de Jonge Vrije Universiteit, Amsterdam versie 2003.
Databases I Het Entity-Relationship Model
Agenda Inleiding en Lagerhuis: Proces management en proces keten optimalisatie gaat ons helpen inzicht te krijgen in de impact van toekomstige veranderingen.
ANALYSE 3 INFANL01-3 WEEK CMI Informatica.
ANALYSE 3 INFANL01-3 WEEK CMI Informatica.
Analyse 3 INFANL01-3 week 2 CMI Informatica.
ANALYSE 3 INFANL01-3 WEEK 8 CMI Informatica. ANALYSE 3- INFANL01-3 ▸ Vorige les ▸ Herhaling ▸ Normaliseerregels ▸ Omzetten ERD ▸ Group by en SET ▸ Proeftentamen.
ANALYSE 3 INFANL01-3 WEEK CMI Informatica.
Voorbeeldvraag 1 Welke uitspraak is JUIST: 1. De basisstelling van Nicolas Carr (auteur van "IT doesn't matter") is dat de investeringen die in IT gedaan.
EERDER….. Tabellen rij (record, tuple, occurence) kolom (attribuut, veld) tabel (relatie) tabelstructuur : patient(PAT#,PNAAM,LEEFTIJD,GESLACHT,ARTS)
DE UT EN JOIN LISA Business Information Management & Recordmanagement Petra de JongeDecos- 1.
Leerling- kenmerken Motivatie (2) Thema januari 2016.
SLO ● nationaal expertisecentrum leerplanontwikkeling Computational Thinking in het curriculum Utrecht, 25 mei 2016 Allard Strijker.
TOGAF Albert Gjaltema / Tech. Consultant II 11 maart 2008 getronicspinkroccade.nl.
Databases.
Concrete stappen naar aansprekende woonzorg- en serviceconcepten
ir. Luc GOLVERS Voorzitter van de Belgische Club
Informatica-Actief Thema: Databases en informatiemodellering
LauwersCollege Buitenpost Informatica
OPENINGSCASE: Fast fashion, ‘hot systems’
Een computersysteem organiseert gegevens in een hiërarchie die begint bij een bit die de waarde 0 of een 1 vertegenwoordigt. Bits kunnen worden gegroepeerd.
Databases.
SQL Les 1 5 April 2019.
Software Development fundamentals
Transcript van de presentatie:

Datamodellering en –verwerking 8C020 college 1ste week docent: Dragan Bošnački Biomodellering en Bioinformatica, BMT WH 3.101 Tel. 5159 Dragan@win.tue.nl , D.Bosnacki@tue.nl

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

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

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 http://www.win.tue.nl/~dragan/8C020 http://www.win.tue.nl/~dragan/8C020/8C020-2006.html (vorig jaar)

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

Data, Cijfers, Mededelingen Afronding: opdracht deel A opdracht deel B schriftelijk tentamen Cijfer: 50% tentamen 50% opdracht Allebei voldoende

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

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

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)

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

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!

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

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

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

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

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

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

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

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

Entiteit-type een entiteit-type (entiteit-klasse) een collectie van entiteiten met gemeenschappelijke eigenschappen   representatie van entiteit-types in ER-diagram:

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

Entiteit-instantie (2) twee instanties van PERSONEELSLID 324-6678-3 324-9853-1 Anna Baanders Carla Derks Markt 3 Groenplein 2 Eindhoven Eindhoven 1987 1993 25-9-70 4-2-65

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

Entiteit-type met atribuut-typen

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

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

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

Meervwaardig atribuut-type een meerwaardig attribuut-type - een attribuut-type dat meer dan één waarde kan hebben voor elke entiteit-instantie

Relatie-type een relatie-type een verband tussen entiteit-instanties van één of meer entiteit-typen dat van belang is binnen het objectsysteem  

Voorbeeld

Atribuut-type van relatie ook een relatie-type kan attribuut-typen (eigenschappen) hebben

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

Unair relatie-type

Unair relatie-type

Binair relatie-type

Ternair relatie-type

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”

Minimum/maximum/vrij/verplicht