LESSQL: Dealing with Database Schema Changes in Continuous Deployment

被引:0
|
作者
Afonso, Ariel [1 ]
da Silva, Altigran [1 ]
Conte, Tayana [1 ]
Martins, Paulo [1 ]
Cavalcanti, Joao [1 ]
Garcia, Alessandro [2 ]
机构
[1] Univ Fed Amazonas, Inst Comp, Manaus, Amazonas, Brazil
[2] Pontifical Catholic Univ Rio de Janeiro, Informat Dept, Rio De Janeiro, Brazil
关键词
D O I
10.1109/saner48275.2020.9054796
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The adoption of Continuous Deployment (CD) aims at allowing software systems to quickly evolve to accommodate new features. However, structural changes to the database schema are frequent and may incur in systems' services downtime. This encompasses the proper maintenance of both schema and source code, including rewrites of all outdated queries that use the same database. Previous solutions try to mitigate the burdening task of manually rewriting outdated queries. Unfortunately, a software team must still interact with some tools to properly fix the affected queries. Moreover, the team still has to locate and modify all the impacted code, which are often error-prone tasks. Thus, a project may not experience CD benefits when changes impact various code regions. In this paper we present an alternative approach, called LESSQL, whose goal is to improve queries' stability in the presence of structural schema changes over time. LESSQL supports queries that are less dependent on the database schema since they do not include the FROM clause. An underlying framework intercepts each LESSQL query and generates a corresponding SQL query for the current schema. It also locates the query attributes in the current schema and generates proper expressions to join the required tables. LESSQL supports unsupervised, supervised and hybrid configurations to process mappings of attributes to a newer schema version. We conducted experiments in the context of a popular open-source project, which experienced many diverse structural schema changes. Experiments outcomes indicate that our approach is effective in significantly reducing the modifications required for applying schema changes, allowing to better reap the benefits of CD. While supervised and hybrid configurations achieved a success rate higher than 95% with a minor query generation overhead, the unsupervised configuration was also successful for certain types of structural schema changes. These results show that LESSQL effectively favours CD and keeps queries running after database schema changes without services interruption.
引用
收藏
页码:138 / 148
页数:11
相关论文
共 50 条
  • [1] Zero-Downtime SQL Database Schema Evolution for Continuous Deployment
    de Jong, Michael
    van Deursen, Arie
    Cleve, Anthony
    [J]. 2017 IEEE/ACM 39TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING: SOFTWARE ENGINEERING IN PRACTICE TRACK (ICSE-SEIP 2017), 2017, : 143 - 152
  • [2] Continuous Deployment and Schema Evolution in SQL Databases
    de Jong, Michael
    van Deursen, Arie
    [J]. 2015 IEEE/ACM 3RD INTERNATIONAL WORKSHOP ON RELEASE ENGINEERING, 2015, : 16 - 19
  • [3] Impact Analysis of Database Schema Changes
    Maule, Andy
    Emmerich, Wolfgang
    Rosenblum, David S.
    [J]. ICSE'08 PROCEEDINGS OF THE THIRTIETH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, 2008, : 451 - 460
  • [4] Visualizing impacts of database schema changes - A controlled experiment
    Karahasanovic, A
    Sjoberg, DIK
    [J]. IEEE SYMPOSIA ON HUMAN-CENTRIC COMPUTING LANGUAGES AND ENVIRONMENTS, PROCEEDINGS, 2001, : 358 - 365
  • [5] Adapting Queries to Database Schema Changes in Hybrid Polystores
    Fink, Jerome
    Gobert, Maxime
    Cleve, Anthony
    [J]. 2020 20TH IEEE INTERNATIONAL WORKING CONFERENCE ON SOURCE CODE ANALYSIS AND MANIPULATION (SCAM 2020), 2020, : 127 - 131
  • [6] Schema repository for database schema evolution
    Bounif, Hassina
    Pottinger, Rachel
    [J]. SEVENTEENTH INTERNATIONAL CONFERENCE ON DATABASE AND EXPERT SYSTEMS APPLICATIONS, PROCEEDINGS, 2006, : 647 - +
  • [7] Improved Teaching of Database Schema Modeling by Visualizing Changes in Levels of Abstraction
    Katz, Adi
    [J]. Journal of Information Systems Education, 2020, 31 (04) : 294 - 311
  • [8] Database schema evolution through the specification and maintenance of changes on entities and relationships
    Liu, CT
    Chrysanthis, PK
    Chang, SK
    [J]. ENTITY-RELATIONSHIP APPROACH - ER '94, 1994, 881 : 132 - 151
  • [9] A Two-folded Impact Analysis of Schema Changes on Database Applications
    Spyridon K. Gardikiotis
    Nicos Malevris
    [J]. Machine Intelligence Research, 2009, (02) : 109 - 123
  • [10] A Two-folded Impact Analysis of Schema Changes on Database Applications
    Gardikiotis, Spyridon K.
    Malevris, Nicos
    [J]. INTERNATIONAL JOURNAL OF AUTOMATION AND COMPUTING, 2009, 6 (02) : 109 - 123