1 / 31

Advanced Databases Introduction

Advanced Databases Introduction. Dr. Rogelio Dávila Pérez Laboratorio Nacional de Informática Avanzada (LANIA) http://www.rogeliodavila.com/ e-mail: rdav90@gmail.com. Important Information. This material was developed by Dr. Toon Calders and prof. Dr. Jan Paredaens

gene
Download Presentation

Advanced Databases Introduction

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. Advanced DatabasesIntroduction Dr. RogelioDávila Pérez LaboratorioNacional de InformáticaAvanzada (LANIA) http://www.rogeliodavila.com/ e-mail: rdav90@gmail.com

  2. Important Information This materialwasdeveloped by • Dr. ToonCalders and • prof. Dr. Jan Paredaens atUniversity of Technology, Eindhoven. The original document canbeaccessedat the followingaddress: http://wwwis.win.tue.nl/~tcalders/teaching/advancedDB/ All changes and adaptations are myownresponsability, RogelioDávila Pérez

  3. Outline • Motivation for the course • Practicalorganization • Course topics • Project

  4. Motivation for the Course • Database = a piece of software to handle data: • store, • maintain, and • query • Most ideal system situation-dependent • data type: simple / semi-structured / complex / … • types of queries: simple lookup / analytical / … • type of usage: multi-user / single-user / distributed / … • …

  5. Motivation for the Course • Relationaldatabases are tunedtowards: • simple data • simple, ad-hoc queries • multiple users • Othermodels are more suitable for other types of data • Object-OrientedDatabases, • DeductiveDatabases, • Semi-StructuredDatabases, • GeographicalDatabases, • Data warehouses

  6. Motivation for the Course • Study different data models • Advantages, disadvantages • Conceptual level • what are the important notions? • What’s underneath? • In a scientific way • exact, not just claims

  7. Motivation for the Course By the end: • Studentknows: • differentdatabasemodels • Understands: • whythey are introduced • conceptual notions • Is able to: • quickly master vendor-specificproducts

  8. Outline • Motivation for the course • Practicalorganization • Course topics • Project

  9. PracticalOrganization In principle … Saturday, August 1st 2009, • 9:00  12:00Relational Model Overview • no new material • opportunity to practice, ask questions • togethersolveexercises • Limitations of the Relational Model • 13:00  16:00 DeductiveDatabases • Databases and LogicProgramming • Datalog as engine for DeductiveDatabases • Knowledge Bases

  10. PracticalOrganization Saturday, August 8th 2009 • 9:00  12:00 Deductive DB Practical Session • opportunity to practice, ask questions • togethersolveexercises • 13:00  16:00 Object OrientedDatabases • Object ModelingLanguage UDL • Extending SQL (Recursion and Nested relations) • Objecto-Oriented and Object-RelationalDatabases

  11. PracticalOrganization Saturday, August 15th • 9:00  12:00 OODB Practical Session • opportunity to practice, ask questions • togethersolveexercises • 13:00  16:00 DistributedDatabases • Heterogeneous and Homogeneous Databases • Distributed Data Storage • Distributed Transactions • Commit Protocols

  12. PracticalOrganization Saturday, August 22nd • 9:00  12:00 DDB Practical Session • opportunity to practice, ask questions • togethersolveexercises • 13:00  16:00 Final Project Presentations • Every team makes an exposition of theirprojectresults to the rest of the group. • Every team submeets a printed document defendingtheirproject.

  13. Important Information • Course notes can be downloaded at my webpage: http://www.rogeliodavila.com/cursos.htm • Doubts? Send me a message to rdav90@gmail.com • Interesting links: • Dr. ToonCalders &prof. Dr. Jan Paredaens course link:http://wwwis.win.tue.nl/~tcalders/teaching/advancedDB/

  14. Practical Organization • Grades: • 70% written exam • 30% group project • No project = no grade

  15. Outline • Motivation for the course • Practicalorganization • Course Topics • Project

  16. Course Topics • Limitations of the relational model • DeductiveDatabases • Object-OrientedDatabases • DistributedDatabases

  17. Limitations of the relational model • Not everyquerycanbeexpressed • Transitive closurecannotbeexpressed in RelationalAlgebra • Give all citiesreachablefromAntwerp by plane • Give all smallest components of a part • Give all decendants of person X • Not even if you’revery smart … • proof • Extension to otherrelationalquerylanguages

  18. Deductive Databases • Motivation is two-fold: • add deductive capabilities to databases; the database contains: • facts (intensional relations) • rules to generate derived facts (extensional relations) Database is knowledge base • Extend the querying • datalog allows for recursion

  19. Deductive Databases • Datalog as engine of deductive databases • similarities with Prolog • has facts and rules • rules define -possibly recursive- views • Semantics not always clear • safety • negation • recursion

  20. Deductive Databases g(a,b). g(b,c). g(a,d). reach(X,X) :- g(X,Y). reach(X,Y) :- g(X,Y). reach(X,Z) :- reach(X,Y), reach(Y,Z). node(X) :- g(X,Y). node(Y) :- g(X,Y). unreach(X,Y) :- node(X), node(Y), not reach(X,Y).

  21. Deductive Databases • In this topic we study: • How to handle negation and recursion in the same program • How to efficiently evaluate Datalog queries

  22. OO Databases • Many applications require the storage and manipulation of complex data • design databases • geometric databases • … • Object-Oriented programming languages manipulate complex objects • classes, methods, inheritance, polymorphism

  23. OO Databases • Very simple example: • Class book • set of authors • title • set of keywords Extremely simple to model in OO language Hard in relational database!

  24. OO Databases • In many applications persistency of the data is nevertheless required • protection against system failure • consistency of the data • Mapping: object in OO language  tuples of atomic values in relational database is often problematic

  25. OO Databases • Either we ignore the multivalued dependencies • This table is in 3NF, BCNF

  26. OO Databases • Or we go to 4NF

  27. OO Databases • Basically OODB = persistent OO programming language • Very important concept • rather uninteresting scientifically • This topic will mainly be self-study • Reading bookchapter + Q & A session

  28. Outline • Motivation for the course • Practicalorganization • Course Topics • Project

  29. Project • Pick one of the 4 topics: • deductive databases / rule-based systems • object-oriented databases • data warehouses • semi-structured databases • Formulate your own project • illustrating the different course concepts • showing you mastered the technology

  30. Project • Make a projectproposal ( WEEK 1) • fulfilling certain constraints • listing technologies to beused • Status report ( WEEK 2 ) • Status report ( WEEK 3 ) • Project presentations & Final report ( WEEK 4 )

  31. Summary • Relational model has limitations • simple queries • simple data • OODBsallowcomplex data types • Deductivedatabases, datalogcomplexqueries • Project complementstheoretical lectures • Instructions for clarification

More Related