1 / 65

Databases on the Internet

Bratislava, Slovakia, August 21-31, 1998. Databases on the Internet. 4th CEENet Workshop on Network Technology. David Billard. David.Billard@cui.unige.ch. Outline. Classical databases Why should it be different in the Internet? Organizing the data with the Araneus methodology

DoraAna
Télécharger la présentation

Databases on the Internet

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. Bratislava, Slovakia, August 21-31, 1998 Databases on the Internet 4th CEENet Workshop on Network Technology David Billard David.Billard@cui.unige.ch

  2. Outline • Classical databases • Why should it be different in the Internet? • Organizing the data with the Araneus methodology • Building dynamically a web site with the Target Form Expression • Dealing with security • Using transactions and workflows

  3. conceptual level definition of concepts and relations among them logical level database technology applied DBMS level data storage, queries, transactions, ... Classical Databases Entity-Relationship (ER) model Relational model Oracle DBMS

  4. request processing transaction manager fault-tolerance module concurrency control data repository Classical Database Environment • A classical Database Management System (DBMS) is composed of: interpretation of requests • Atomicity (all or nothing) • Consistency • Isolation • Durability ACID properties

  5. What is different with the Internet? • Hypertext data: • relational tables are 2-dimensions: tuples (lines) attributes (columns) • relational tables do not content navigational data ; • hypertext pages implements the third dimension of access path to the data • Consequences: • Entity-relation scheme must evolve; • Relations must be queried with the third dimension in mind.

  6. What is different with the Internet? • Internet technology: • no guaranty of service (the RSVP is not fullyimplemented in IP, expected to be in IPng); • unsecure channel of communication; • lack of the notion of user (only machines); • high probability of system crash; • very sensible to scale problems. • Consequences: • we must implement recovery protocols; • we must implement security features.

  7. What is different with the Internet? • User behaviour: • the user's actions are unknown and unpredictable • Strong heterogeneity: • a DBMS cannot know every other DBMS technology to interact • Consequences: • we cannot use tightly coupled integrationof the servers; • we must define a minimal set of mandatoryfunctionalities for interoperation.

  8. Organizing the data for their use via the Web What we have: • Web sites containing valuable pieces of information • Web sites containing high volume of data, retrieved from databases • Data organized in hypertextual form (access paths are part of the model)

  9. Organizing the data for their use via the Web What we need: • a methodology for the: • Database design process • Hypertext design process • a tool for: • generating web sites from databases • maintaining these web sites

  10. Database Conceptual Design (Entity-Relationship model) 1 Hypertext Conceptual Design (Hypertext Conceptual Scheme) 3 Database Logical Design (Relational model) Hypertext Logical Design (Hypertext Logical Scheme) 2 4 Presentation Design (Page Template) 5 Hypertext to DB mapping, Page Generation (Web site) 6 The ARANEUS Project (Univ. Roma 3)

  11. teaching course professor person researcher program place room lesson The ARANEUS Project • University ER scheme 1:N 1:1 • phone • name • type 1:N • name • photo • e-mail 1:1 1:N 1:1 • day • hour • roomNum

  12. The ARANEUS Project • From ER schemes to Hypertext Conceptual schemes Selecting Macroentities (objects relevant and independent) Designing Directed Relationships (precise the direction of navigation) Designing Union Nodes and Aggregations (representation of the IS-A relationship)

  13. teaching course professor person researcher program place lesson room The ARANEUS Project • Selecting Macroentities (objects relevant and independent) 1:N 1:1 • phone • name • type 1:N • name • photo • e-mail 1:1 1:N 1:1 • day • hour • roomNum

  14. teaching course professor person researcher program place lesson room The ARANEUS Project • Selecting Macroentities (objects relevant and independent) 1:N 1:1 • phone • name • type 1:N • name • photo • e-mail 1:1 1:N 1:1 • day • hour • roomNum

  15. teaching professor course person researcher program place lesson room The ARANEUS Project Designing Directed Relationships (precise the direction of navigation) 1:N 1:1 • phone • name • type 1:N • name • photo • e-mail 1:1 1:N 1:1 • day • hour • roomNum

  16. teaching professor course person researcher program place lesson room The ARANEUS Project Designing Union Nodes and Aggregations (representation of the IS-A relationship) 1:N 1:1 • phone • name • type 1:N • name • photo • e-mail 1:1 1:N 1:1 • day • hour • roomNum

  17. department research general education people course student professor teaching The ARANEUS Project • Department Hypertext Conceptual Scheme type = graduate type = undergraduate name 1:N type name phone photo e-mail day hour roomNum 1:1 1:N

  18. The ARANEUS Project • From Hypertext Conceptual schemes to Hypertext Logical Design Mapping Macroentities (to pages or lists) Mapping Directed Relationships (to links between pages) Mapping Aggregations (pages + lists + links)

  19. name phone photo e-mail room ... professor mapping The ARANEUS Project • Mapping Macroentities to pages name phone photo e-mail room ...

  20. seminar list title author date hour room ... seminar mapping The ARANEUS Project • Mapping Macroentities to lists title author date hour room ...

  21. professor page name phone photo e-mail room professor course page course list name type mapping name to course teacher time table toughtby day hour room course name to professor The ARANEUS Project • Mapping Directed relationships to links name phone photo e-mail room ... 1:N name 1:1 type 1:N day hour roomNum

  22. Database Conceptual Design (Entity-Relationship model) Hypertext Conceptual Design (Hypertext Conceptual Scheme) Database Logical Design (Relational model) Hypertext Logical Design (Hypertext Logical Scheme) Presentation Design (Page Template) Hypertext to DB mapping, Page Generation (Web site) The ARANEUS Project (Univ. Roma 3) 1 3 2 4 5 Dynamic page generation 6

  23. Querying the databases (browsing and navigating) What we need: • a query language to make DB requests • a tool for presenting the result of the request: • in HTML form • in any form

  24. The Target Form Expression (TFE) project (Univ. of Keio, Japan) • Idea: Extending SQL to add publishing facilities • the result of a query is presented in a structured document (HTML, Java, LaTeX, ...) To give a comparison: Allaire's Cold Fusion does not allow grouping or hyperlink generation (necessary for structuring documents)

  25. The Target Form Expression project • GENERATE keyword GENERATE <medium> <TFE> <medium> = HTML, LaTeX, Java, Excel, TCLTK, O2C, SQL <TFE> = expression , = tuple connector ! = row connector % = depth (link) operator [ and ] = repeaters [emp.name, emp.salary]! = list of tuples (names, salary) [store.name,[dept.name ![emp.name]!,[item.name]!]!]%

  26. film id title type year pict film, actor actor id name birth face The Target Form Expression project • Example of a movie database cast

  27. select a category generate html verb(select a category) ! [f.type % [f.year, [f.title % {f.title ! imagefile(f.pict) ! [imagefile(a.face), a.name, a.birth]!}]!]!], from film f, cast c, actor a where f.id = c.film and c.actor = a.id action comedy drama horror 1997 Batman and Robin Speed 2 1996 Mission impossible 2 Independence day 1997 My best friend's wedding Out to sea 1996 Dear God The first wives club Nutty professor Tin cup The first wives club Diane Keaton 1946 Goldie Hawn 1945 Bette Middler 1945 The Target Form Expression project

  28. action comedy drama horror The Target Form Expression project select a category generate html verb(select a category) ! [f.type % [f.year, [f.title % {f.title ! imagefile(f.pict) ! [imagefile(a.face), a.name, a.birth]!}]!]!], from film f, cast c, actor a where f.id = c.film and c.actor = a.id

  29. select a category action comedy drama horror The Target Form Expression project generate html verb(select a category) ! [f.type % [f.year, [f.title % {f.title ! imagefile(f.pict) ! [imagefile(a.face), a.name, a.birth]!}]!]!], from film f, cast c, actor a where f.id = c.film and c.actor = a.id

  30. select a category action comedy drama horror 1997Batman and Robin Speed 2 1996Mission impossible 2 Independence day 1997My best friend's wedding Out to sea 1996Dear God The first wives club Nutty professor Tin cup The Target Form Expression project generate html verb(select a category) ! [f.type % [f.year, [f.title % {f.title ! imagefile(f.pict) ! [imagefile(a.face), a.name, a.birth]!}]!]!], from film f, cast c, actor a where f.id = c.film and c.actor = a.id

  31. select a category action comedy drama horror 1997 Batman and Robin Speed 2 1996 Mission impossible 2 Independence day 1997 My best friend's wedding Out to sea 1996 Dear God The first wives club Nutty professor Tin cup The Target Form Expression project generate html verb(select a category) ! [f.type % [f.year, [f.title % {f.title ! imagefile(f.pict) ! [imagefile(a.face), a.name, a.birth]!}]!]!], from film f, cast c, actor a where f.id = c.film and c.actor = a.id

  32. select a category action comedy drama horror 1997 Batman and Robin Speed 2 1996 Mission impossible 2 Independence day 1997 My best friend's wedding Out to sea 1996 Dear God The first wives club Nutty professor Tin cup The Target Form Expression project generate html verb(select a category) ! [f.type % [f.year, [f.title % {f.title ! imagefile(f.pict) ! [imagefile(a.face), a.name, a.birth]!}]!]!], from film f, cast c, actor a where f.id = c.film and c.actor = a.id The first wives club

  33. select a category action comedy drama horror 1997 Batman and Robin Speed 2 1996 Mission impossible 2 Independence day 1997 My best friend's wedding Out to sea 1996 Dear God The first wives club Nutty professor Tin cup The Target Form Expression project generate html verb(select a category) ! [f.type % [f.year, [f.title % {f.title ! imagefile(f.pict) ! [imagefile(a.face), a.name, a.birth]!}]!]!], from film f, cast c, actor a where f.id = c.film and c.actor = a.id The first wives club

  34. select a category action comedy drama horror 1997 Batman and Robin Speed 2 1996 Mission impossible 2 Independence day 1997 My best friend's wedding Out to sea 1996 Dear God The first wives club Nutty professor Tin cup Diane Keaton 1946 Goldie Hawn 1945 Bette Middler 1945 The Target Form Expression project generate html verb(select a category) ! [f.type % [f.year, [f.title % {f.title ! imagefile(f.pict) ! [imagefile(a.face), a.name, a.birth]!}]!]!], from film f, cast c, actor a where f.id = c.film and c.actor = a.id The first wives club

  35. With TFE we have a tool to dynamically create a web site from an existing database, at the whish of the user The Target Form Expression project • INVOKE keyword allow dynamic queries inside queries (recursive queries)

  36. DBMS DB Classical Database Environment • Environment of a classical DBMS: secure environment

  37. DBMS 1 DBMS 2 DB DB Classical Database Environment • Multidatabases - Federated DBMS • Cooperative work, ...

  38. Normal flow Sender receiver Securing the databases The Internet introduces threats for the DBMS and the users. 4 attacks among the more frequent • Interception • Modification • Fabrication • Interruption

  39. Confidentiality Interception • Cannot help a message to be intercepted; • The message must not be disclosed; • Confidentiality of data (Privacy) • Encryption (e.g. Secure Socket Layer - SSL)

  40. Dangerous behaviours Modification Fabrication

  41. Dangerous behaviours • A user must really be who he claims to be. • Authentication of user • Authentication certificates delivered by a "Thrustee" • A user cannot deny having received or sent a message. • Non-Repudiation schemas, based on the authentication of user.

  42. Dangerous behaviours Interruption • A user cannot help a communication to being cut. • Recovery procedures, based on time-outs and logging.

  43. Securing the databases • The iSaSiLk toolbox (Univ. of Vienna) • Written in Java • Provides cryptography primitives (possibility to implement SSL sockets) • Provides authentication primitives • Provides certificate management • Free for use for academic partners • (not free for industry)

  44. Transactions in the Internet • Transactions are a very common tool in databases • They provide isolation of concurrent activities • They are fault tolerant processes • They have been extensively studied in distributed environment But • They lack security and scalability in the Internet

  45. Example in Electronic Commerce Internet

  46. Example in Electronic Commerce I want... Internet

  47. Example in Electronic Commerce the same shirt as Sandra Bullock's in "The Net", and... Internet

  48. Example in Electronic Commerce the same hat as Ingrid Bergman's in "Casablanca"! Internet

  49. Example in Electronic Commerce Internet

  50. Example in Electronic Commerce • ACID • Atomicity • Consistency • Isolation • Durability Internet

More Related