G. Papastefanatos 1, P. Vassiliadis 2, A. Simitsis 3, K. Aggistalis 2, F. Pechlivani 2, Yannis Vassiliou 1 (1) National Technical University of Athens.

Slides:



Advertisements
Similar presentations
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification.
Advertisements

Automating the adaptation of evolving data-intensive ecosystems Petros Manousis, Panos Vassiliadis University of Ioannina, Ioannina, Greece George Papastefanatos.
Introduction to Databases
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification.
Incremental Maintenance for Non-Distributive Aggregate Functions work done at IBM Almaden Research Center Themis Palpanas (U of Toronto) Richard Sidle.
G. Papastefanatos 1, P. Vassiliadis 2, A. Simitsis 3, T. Sellis 1,4, Y. Vassiliou 1 (1) National Technical University of Athens, Athens, Hellas (Greece)
Manish Bhide, Manoj K Agarwal IBM India Research Lab India {abmanish, Amir Bar-Or, Sriram Padmanabhan IBM Software Group, USA
Management of the Evolution of Database-Centric Information Systems Panos Vassiliadis 2, George Papastefanatos 1, Timos Sellis 1, Yannis Vassiliou 1 1.
George Papastefanatos 1, Fotini Anagnostou 1 Panos Vassiliadis 2, Yannis Vassiliou 1 (1) National Technical University of Athens
File Systems and Databases
Chapter 6: Database Evolution Title: AutoAdmin “What-if” Index Analysis Utility Authors: Surajit Chaudhuri, Vivek Narasayya ACM SIGMOD 1998.
1 Lecture 13: Database Heterogeneity Debriefing Project Phase 2.
Database Administration
George Papastefanatos 1, Panos Vassiliadis 2, Alkis Simitsis 3,Yannis Vassiliou 1 (1) National Technical University of Athens
1 Dan Quinlan, Markus Schordan, Qing Yi Center for Applied Scientific Computing Lawrence Livermore National Laboratory Semantic-Driven Parallelization.
Database Systems More SQL Database Design -- More SQL1.
CS405G: Introduction to Database Systems Final Review.
Chapter 14: Advanced Topics: DBMS, SQL, and ASP.NET
Automatic Data Ramon Lawrence University of Manitoba
G. Papastefanatos 1, P. Vassiliadis 2, A. Simitsis 3, Y. Vassiliou 1 (1) National Technical University of Athens, Athens, Hellas (Greece)
Software Reengineering 2003 년 12 월 2 일 최창익, 고광 원.
Chapter 1 Database Systems. Good decisions require good information derived from raw facts Data is managed most efficiently when stored in a database.
H ECATAEUS A Framework for Representing SQL Constructs as Graphs George Papastefanatos 1, Kostis Kyzirakos 1, Panos Vassiliadis 2, Yannis Vassiliou 1 1.
FP OntoGrid: Paving the way for Knowledgeable Grid Services and Systems WP8: Use case 1: Quality Analysis for Satellite Missions.
Project Implementation for COSC 5050 Distributed Database Applications Lab2.
CSE314 Database Systems More SQL: Complex Queries, Triggers, Views, and Schema Modification Doç. Dr. Mehmet Göktürk src: Elmasri & Navanthe 6E Pearson.
ITEC224 Database Programming
Graph Data Management Lab, School of Computer Science gdm.fudan.edu.cn XMLSnippet: A Coding Assistant for XML Configuration Snippet.
Database Systems: Design, Implementation, and Management Ninth Edition
Change Impact Analysis for AspectJ Programs Sai Zhang, Zhongxian Gu, Yu Lin and Jianjun Zhao Shanghai Jiao Tong University.
DBSQL 14-1 Copyright © Genetic Computer School 2009 Chapter 14 Microsoft SQL Server.
Recent research : Temporal databases N. L. Sarda
Formalizing the Asynchronous Evolution of Architecture Patterns Workshop on Self-Organizing Software Architectures (SOAR’09) September 14 th 2009 – Cambrige.
Reviewing Recent ICSE Proceedings For:.  Defining and Continuous Checking of Structural Program Dependencies  Automatic Inference of Structural Changes.
Validated Model Transformation Tihamér Levendovszky Budapest University of Technology and Economics Department of Automation and Applied Informatics Applied.
Model-Driven Analysis Frameworks for Embedded Systems George Edwards USC Center for Systems and Software Engineering
Dimitrios Skoutas Alkis Simitsis
Data Integration by Bi-Directional Schema Transformation Rules Data Integration by Bi-Directional Schema Transformation Rules By Peter McBrien and Alexandria.
A Taxonomy of ETL Activities Panos Vassiliadis 1, Alkis Simitsis 2, Eftychia Baikousi 1 (1) University of Ioannina (2) HP Labs.
Data Management for Decision Support Session-3 Prof. Bharat Bhasker.
Chapter 9 Database Systems Introduction to CS 1 st Semester, 2014 Sanghyun Park.
Presented by: Ashgan Fararooy Referenced Papers and Related Work on:
Database Systems Design, Implementation, and Management Coronel | Morris 11e ©2015 Cengage Learning. All Rights Reserved. May not be scanned, copied or.
IS 230Lecture 6Slide 1 Lecture 7 Advanced SQL Introduction to Database Systems IS 230 This is the instructor’s notes and student has to read the textbook.
E.Bertino, L.Matino Object-Oriented Database Systems 1 Chapter 5. Evolution Seoul National University Department of Computer Engineering OOPSLA Lab.
Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.
7 1 Constraints & Triggers Chapter Constraints and triggers? Constraints: Certain properties that the DBMS is required to enforce –E.g. primary.
Schema matching for Database Systems Bhavik Doshi Chair: Prof. Rajendra K. Raj Reader: Dr. Carol Romanowski Department of Computer Science Rochester Institute.
Physical Database Design Purpose- translate the logical description of data into the technical specifications for storing and retrieving data Goal - create.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
DATA AND SCHEMA MODIFICATIONS CHAPTERS 4,5 (6/E) CHAPTER 8 (5/E) 1.
1 Multi-level Configuration Management with Fine-grained Logical Units Tien N. Nguyen Electrical and Computer Engineering Department Iowa State University.
Chapter 5 : Integrity And Security  Domain Constraints  Referential Integrity  Security  Triggers  Authorization  Authorization in SQL  Views 
Concepts and Realization of a Diagram Editor Generator Based on Hypergraph Transformation Author: Mark Minas Presenter: Song Gu.
An Adapter-Based Approach to Co-evolve Generated SQL in M2T Transformations Jokin García 1, Oscar Díaz 1 and Jordi Cabot 2 Onekin 1 University of the Basque.
Week 7 Lecture Part 2 Introduction to Database Administration Samuel S. ConnSamuel S. Conn, Asst Professor.
Efficient Implementation of Complex Interventions in Large Scale Epidemic Simulations Network Dynamics & Simulation Science Laboratory Jiangzhuo Chen Joint.
Introduction to Core Database Concepts Getting started with Databases and Structure Query Language (SQL)
6/13/2015 Visit the Sponsor tables to enter their end of day raffles. Turn in your completed Event Evaluation form at the end of the day in the Registration.
Future Directions in Data Warehousing Research DOLAP ’04 Panel Discussion Karen C. Davis Electrical & Computer Engineering and Computer Science Dept. University.
More SQL: Complex Queries, Triggers, Views, and Schema Modification
MAIME: A Maintenance Manager for ETL Processes
A Model for Data Warehouse Operational Processes
Prepared by : Moshira M. Ali CS490 Coordinator Arab Open University
Model-Driven Analysis Frameworks for Embedded Systems
Tuning the top-k view update process
Metadata The metadata contains
Database SQL.
Implementing ETL solution for Incremental Data Load in Microsoft SQL Server Ganesh Lohani SR. Data Analyst Lockheed Martin
Presentation transcript:

G. Papastefanatos 1, P. Vassiliadis 2, A. Simitsis 3, K. Aggistalis 2, F. Pechlivani 2, Yannis Vassiliou 1 (1) National Technical University of Athens (2) University of Ioannina (3) IBM Almaden Research Center Language Extensions for the Automation of Database Schema Evolution

ICEIS'08, Barcelona, June Outline Motivation Graph-based modeling A language for policy annotation Evaluation Conclusions

ICEIS'08, Barcelona, June Outline Motivation Graph-based modeling A language for policy annotation Evaluation Conclusions

ICEIS'08, Barcelona, June Data Warehouse Environment WWW Act1 Act2 Act3 Act4 Act5

ICEIS'08, Barcelona, June Motivation WWW Act1 Act2 Act3 Act4 Act5

ICEIS'08, Barcelona, June Database Schema Evolution Current database systems are continuously evolving environments, where design constructs are –Added –Removed –Modified Evolution is not handled by current DBMS with an automatic way –Syntactic as well as semantic adaptation of queries and views is a time-consuming task, treated in most of the cases manually Evolution-driven database design is missing

ICEIS'08, Barcelona, June Evolution Effects SW artifacts around the DBMS are affected: –Syntactically – i.e., become invalid –Semantically – i.e., query must conform to the new source database semantics Adaptation of activities, queries and views –time-consuming task –treated in most of the cases manually by the administrators/developers

ICEIS'08, Barcelona, June We would like to know… What part of the process is affected and how if e.g., an attribute is deleted? Can we predict the impact of changes? To what extent can readjustment be automated? Can we perform what-if analysis for potential changes of source configurations?

ICEIS'08, Barcelona, June Outline Motivation Graph-based modeling A language for policy annotation Evaluation Conclusions

ICEIS'08, Barcelona, June Database Schema Evolution – Our approach Mechanism for performing what-if analysis for potential changes of database configurations Graph based representation of database constructs (i.e., relations, views, constraints, queries) Annotation of graph with rules for adapting queries to database schema evolution Evolving databases Queries Database Schema Graph-based modeling for uniform representation Metrics for Evaluating Evolution Design Evolving applications Rules for Handling Evolution

ICEIS'08, Barcelona, June SELECT EMP.Emp#, Sum(WORKS.Hours) as T_Hours FROM EMP, WORKS WHERE EMP.Emp# = WORKS.Emp# GROUP BY EMP.Emp# Graph based representation

ICEIS'08, Barcelona, June Annotating the graph with adaptation rules Set of evolving database constructs: relations attributes constraints 1 Set of potential evolution changes: addition deletion modification 2 Set of reaction policies: propagate block prompt 3

ICEIS'08, Barcelona, June Query Adaptation - Example Annotated Query Graph Event Add attribute Phone to relation EMP Transformed Query Graph Q NameEID Name EID S S EMP S S map-select … ON attribute addition TO EMP THEN propagate Q: SELECT EID, Name FROM EMP Q: SELECT EID, Name, Phone FROM EMP Q NameEID Name EID S S EMP S S map-select … ON attribute addition TO EMP THEN propagate Phone S S map-select

ICEIS'08, Barcelona, June Contributions Based on –a graph-based model for database constructs (relational tables, views, database constraints) and SQL queries we present –a mechanism for the annotation of the graph’s constructs with elements that facilitate what-if analysis and predetermine the reaction to evolution events occurring in the database schema –SQL extensions that enable the implementation of our approach for evolution management Case study

ICEIS'08, Barcelona, June Outline Motivation Graph-based modeling A language for policy annotation Evaluation Conclusions

ICEIS'08, Barcelona, June Annotation of graph constructs with policies {relation, query, view, attribute constraint, condition} specific nodes ON TO THEN {delete update insert} {block propagate prompt}

ICEIS'08, Barcelona, June Global constraints ON DELETE NODE THEN PROPAGATE ON DELETE ATTRIBUTE THEN PROMPT Example: CREATE DATABASE company ON DELETE ATTRIBUTE THEN PROMPT

ICEIS'08, Barcelona, June Top – level constructs Example for relations: CREATE TABLE works (EMP# NUMBER(3), PROJ# NUMBER(3), HOURS NUMBER(5), ON Add Attribute TO works THEN propagate) This statement for relation works allows the addition of attributes and propagates this addition to all queries and views accessing this relation

ICEIS'08, Barcelona, June Top – level constructs Example for views: CREATE VIEW emps-prjs AS SELECT E.Emp#, E.Name, P.Projname FROM Emp E,Works W,Proj P WHERE E.EMP#=W.EMP# AND W.Proj#=P.Proj# ON Modify Condition TO emps-prjs THEN block This syntax blocks changes in the WHERE clause of the view definition for view emps-prjs

ICEIS'08, Barcelona, June Top – level constructs Example for queries: Q:SELECT EP.Emp#, EP.Name FROM emps-prjs EP WHERE EP.PRJNAME = ‘Olympic Games’ ON Add Attribute TO emps-prjs THEN block The above syntax blocks the inclusion of added attributes in the underlying view emps-prjs in the select clause of the query.

ICEIS'08, Barcelona, June Specific node annotation CREATE TABLE emp (EMP# NUMBER(3), Name Varchar2(150),..., ON Delete Attribute TO Name THEN block) Q: SELECT E.Emp#, E.Name, P.Projname FROM Emp E,Works W,Proj P WHERE E.EMP#=W.EMP# AND W.Proj#=P.Proj# ON Delete Attribute TO Name THEN propagate

ICEIS'08, Barcelona, June Constraints CREATE TABLE emp (EMP# NUMBER(3), Name Varchar2(150), Constraint EMP.PK PRIMARY KEY (EMP#), ON Modify Constraint TO EMP.PK THEN propagate)

ICEIS'08, Barcelona, June Conditions CREATE CONDITION AS CREATE CONDITION Emp_Age_Cond AS AGE>50 CREATE CONDITION Works_Emp_FK AS WORKS.EMP# IN EMP.EMP# CREATE CONDITION Works_Emp_J AS WORKS.EMP#=EMP.EMP# Then, a query SELECT * FROM EMP WHERE AGE_COND would simply use the condition as a macro. Parametric conditions, to allow referring to aliases in SQL queries are straightforward. Reverse eng. of existing code: automatic condition names can be assigned to all the queries.

ICEIS'08, Barcelona, June Outline Motivation Graph-based modeling A language for policy annotation Evaluation Conclusions

ICEIS'08, Barcelona, June Testbed A data mart of an agency for the Greek public sector 6 months of monitoring 52 “queries” (in reports, scripts) over 18 relations When converted to our graph structure: 2500 nodes

ICEIS'08, Barcelona, June Distribution of policies over the annotated nodes Event # of nodes Propagate Block Rename relations 180 Add attributes 6413 Delete Attributes Rename Attributes Domain Modification Condition Modification 021 Total Annotations

ICEIS'08, Barcelona, June Global policy and individual annotations Scope # of operations Annotations Policy Clauses Query scope 4869 Relation Scope Database Scope 362

ICEIS'08, Barcelona, June Outline Motivation Graph-based modeling A language for policy annotation Evaluation Conclusions

ICEIS'08, Barcelona, June Conclusions Coherent framework for propagating potential changes of the database to all the software artifacts around the database based on a model-policy-event scheme Extension to the SQL language specifically tailored for the management of evolution. Limited overhead imposed on both the system and the humans, who design and maintain it. Tested in a real-world scenario of the Greek public sector.

ICEIS'08, Barcelona, June On-going/Future Work Hecataeus: A tool for visualizing and performing what-if analysis for several evolution scenarios. Patterns of evolution sequences

ICEIS'08, Barcelona, June Acknowledgment Information dissemination of this work was supported by the European Union in the framework of the project “Support of Computer Science Studies in the University of Ioannina” of the “Operational Program for Education and Initial Vocational Training” of the 3rd Community Support Framework of the Hellenic Ministry of Education, funded by national sources and by the European Social Fund (ESF).

ICEIS'08, Barcelona, June Gracias ! Sources:

ICEIS'08, Barcelona, June Questions?

ICEIS'08, Barcelona, June Algorithm Propagate changeS (DaWaK 2007) Input: an ETL summary S over a graph G o =(V o,E o ) and an event e Output: a graph G n =(V n,E n ) Variables: a set of events E, and an affected node A Begin dps(S, G o, G n, {e}, A) End dps(S, G n, G o, E, A) { I = Ins_by_policy(affected(E)) D = Del_by_policy(affected(E)) G n = G o – D  I E = E–{e}  action(affected(E)) if consumer(A)  nil for each consumer(A) dps(S,G n,G o,E,consumer (A)) }

ICEIS'08, Barcelona, June Conflict resolution (DaWaK 2007) Graph constructs may have contradictory policies for the same event Policies defined on query graph structures are stronger than policies defined on view graph structures which in turn prevail on policies defined on relation graph structures Rule

ICEIS'08, Barcelona, June Configuration of our setting (DaWaK 2007) 7 ETL processes 53 ETL activities 3 lookup tables 7 source tables 9 target tables

ICEIS'08, Barcelona, June Adapted activities per Event (DaWaK 2007)

ICEIS'08, Barcelona, June Related work DB schema Evolution –Schema Versioning DW schema Evolution Materialized View Evolution Evolution wrt Model Mappings