Fondamenti della Teoria delle Basi di Dati e Applicazione alla Gestione e Integrazione di Schemi Paolo Atzeni Dottorato di Ricerca in Informatica e Automazione Università Roma Tre Giugno-luglio 2005
Base di dati (accezione generica, metodologica) Insieme organizzato di dati utilizzati per il supporto allo svolgimento delle attività di un ente (azienda, ufficio, persona) (accezione specifica, metodologica e tecnologica) insieme di dati gestito da un DBMS
DataBase Management System DBMS Sistema (prodotto software) in grado di gestire collezioni di dati che siano (anche): –grandi (di dimensioni (molto) maggiori della memoria centrale dei sistemi di calcolo utilizzati) –persistenti (con un periodo di vita indipendente dalle singole esecuzioni dei programmi che le utilizzano) –condivise (utilizzate da applicazioni diverse) garantendo affidabilità (resistenza a malfunzionamenti hardware e software) e privatezza (con una disciplina e un controllo degli accessi). Come ogni prodotto informatico, un DBMS deve essere efficiente (utilizzando al meglio le risorse di spazio e tempo del sistema) ed efficace (rendendo produttive le attività dei suoi utilizzatori).
Generalità Obiettivi –Discutere temi di ricerca, di interesse sia per chi lavora nel settore basi di dati sia per gli altri –Attenzione alle tematiche metodologiche più interessanti di oggi (vedi keynote di Stonebraker e Salinger allICDE 2005):Stonebraker Salinger Eterogeneità Integrazione Approccio: –Seminariale, con contributi individuali Molte idee comuni trovate in un corso tenuto a UBC da Rachel Pottinger: –
Database integration, requirements Three vignettes (Stonebraker, 2001): –Integration for republishing: a large distributor (or dept store) integrates very many catalogs –Integration of availability and pricing: planning a trip with hotel and ferry, each provided by various subjects –Integration for supply chain management: a manufacturer need information coming by its subcontractors
Extraction How many sources we need to integrate? –2-3 or tens or hundreds? Sources change frequently in structure (and content, obviously) Are sources cooperative or not?
Development of wrappers Effective tools: drag and drop, example based, flexible Learning and automation (or semiautomation) Maintenance support
Is XML (or the semantic Web) the solution? It could, but: –Sites are not migrating to XML (nor to any semantic technology): The Web is a giant legacy system –XML is used as an internal tool, but not exposed –In general, site owners offer the bare minimum
Integration issues Traditional problems, and more Many sources, with syntactic and semantic heterogeneities: –Different models (more less structured) –Different meaning: Currency Other conventions (e.g. number of students in a university)
Timeliness of data Do we need –up-to-date data (on-line queries over the net), or –static data (DW)? What are the quality requirements? For example –Stock quotes or sport results –Census data or publications
Integration issues, more Integration is quite vertical (in a domain) –Ex: all CS Dept in Italy Domain specifity could be useful, but how to use it? –Ontologies or taxonomies (or just schemes) could be useful, but: how? Who annotates the sources –Metamodeling: everything mapped to a reference
Semantics or smart data A long standing issue (since 1974, in the database field) What does semantics mean? All the semantics you can handle is syntax Some say that semantics is now even more important since data is public
Integrating databases or applications? DB talk to DB or applications talk to applications? Is communication synchronus or asynchronus? You need flexibility!
Another aspect of flexibility: XML Databases Relational data seen as XML Storage/retrieval of whole XML documents, with simple search facility Transaction requests expressed in XML (Web services?) XML as a rich data type, R/W at the element level
XML support in DBMS, the trend Two front-ends: –Relational (SQL) and XML Two back-ends: –Relational and XML
Where data resides Not only databases, but also dataspaces: –Data is sometimes consumed on-the-fly: data streams
The same data and views for all? Adaptivity: –Personalization: content adapted to the user upon system's decision upon user's request –Customization: structure adapted to the user according to the user's role upon user's request –Context dependence
Generalità Obiettivi –Discutere temi di ricerca, di interesse sia per chi lavora nel settore basi di dati sia per gli altri –Attenzione alle tematiche metodologiche più interessanti di oggi (vedi keynote di Stonebraker e Salinger allICDE 2005):Stonebraker Salinger Eterogeneità Integrazione Approccio: –Seminariale, con contributi individuali Molte idee comuni trovate in un corso tenuto a UBC da Rachel Pottinger: –
Tematiche, da precisare e confermare Model Management Data integration and merging (schema and data) Schema matching and mapping Schema translation from a model to another Foundations: –Information capacity and schema equivalence –Query languages and their expressive power
Metadata – data about data Relational Schema XML Schema or DTD UML document ER Diagrams Example: in a database about grades, the grades are the data. How its stored is the metadata