Squash: A Tool for Analyzing, Tuning and Refactoring Relational Database Applications

  • Authors:
  • Andreas M. Boehm;Dietmar Seipel;Albert Sickmann;Matthias Wetzka

  • Affiliations:
  • Rudolf---Virchow---Center for Experimental Biomedicine, University of Würzburg, Würzburg, Germany D---97078;Department of Computer Science, University of Würzburg, Würzburg, Germany D---97074;Rudolf---Virchow---Center for Experimental Biomedicine, University of Würzburg, Würzburg, Germany D---97078;Department of Computer Science, University of Würzburg, Würzburg, Germany D---97074

  • Venue:
  • Applications of Declarative Programming and Knowledge Management
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

The performance of a large biological application of relational databases highly depends on the quality of the database schema design, the resulting structure of the tables, and the logical relations between them. We have developed a tool named Squash (Sql Query Analyzer and Schema EnHancer) for visualizing, analyzing and refactoring database applications.Squash parses the Sql definition of the data-base schema and the queries into an Xml representation called Squashml , which is then processed in Swi ---Prolog and the integrated Xml query and transformation language Fn Query. Squash comes with a set of predefined methods for tuning the database application according to the load profile, and with methods for proposing refactorings, such as index creation, partitioning, splitting, or further normalization of the database schema. Sql statements are adapted simultaneously upon modification of the schema. Moreover, the declarative Squash framework can be flexibly extended by user---defined methods .