1 / 39

Datamodellering en –verwerking 8C020 college 1ste week

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

Download Presentation

Datamodellering en –verwerking 8C020 college 1ste week

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Datamodellering en –verwerking8C020 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

  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 • Waarom? • 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 • http://www.win.tue.nl/~dragan/8C020 • http://www.win.tue.nl/~dragan/8C020/8C020-2006.html • (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

  7. 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

  8. 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

  9. 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)

  10. 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

  11. 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!

  12. 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

  13. 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

  14. Conceptueel model • het maken van een conceptueel model - één van de belangrijkste stappenin de ontwikkeling van een informatiesysteem • conceptueel model – eenabstracte beschrijving van de functionaliteit • een conceptueel model bevat twee aspecten • statischeeigenschappen: data • dynamische eigenschappen: processen

  15. 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

  16. 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 modelwaarbij de ontwerper zich concentreert op de data

  17. 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

  18. 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

  19. Entiteit • entiteit - een relevant begrip uit het objectsysteem • een concept in de gebruiksomgevingwaarover 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

  20. Entiteit-type • een entiteit-type (entiteit-klasse) • eencollectie van entiteiten met gemeenschappelijke eigenschappen • representatie van entiteit-types in ER-diagram:

  21. 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-typePERSONEELSLID : • PERSONEELSNUMMER • NAAM • ADRES • WOONPLAATS • JAAR-IN-DIENST • GEBOORTEDATUM

  22. 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

  23. 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

  24. Entiteit-type met atribuut-typen

  25. 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

  26. Primaire-sleutel • primaire sleutel (van een entiteit-type) - • één van de kandidaat-sleutels van dat type:het is de kandidaat-sleutel waarvan is bepaald datdie de entiteit-instanties uniek identificeert

  27. 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

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

  29. Relatie-type • een relatie-type • een verband tussen entiteit-instanties van één of meer entiteit-typendat van belang is binnen het objectsysteem

  30. Voorbeeld

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

  32. Graad van relatie-type • de graad van een relatie-type duidt het aantal aan vande verschillende entiteit-typen betrokken in de relatie • (1) unair • (2) binair • (3) ternair • zelden hoger dan 3

  33. Unair relatie-type

  34. Unair relatie-type

  35. Binair relatie-type

  36. Ternair relatie-type

  37. 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”

  38. Minimum/maximum/vrij/verplicht

More Related