Definition
Schema tuning is the activity of organizing a set of table designs in order to improve overall query and update performance.
Historical Background
Table design entails deciding which tables to implement and which attributes to put in those tables. Other sections of this encyclopedia (design theory, normalization theory) discuss a mathematical model of table design to eliminate redundancy. Sometimes however redundancy can be good for performance, so database tuners must consider the possibility of a principled incorporation of redundancy.
Foundations
Normalization tends to break up the attributes of an application into separate tables. Consider the normalized schema consisting of two tables:
Blog(blog_id, author_id, title, numreaders) and
Author(author_id, author_city).
If one frequently wants to associate blogs with the city of their authors, then this table design requires a join on author_id for each of these queries. A denormalized alternative is to add author_location to
Recommended Reading
Celko J. Joe Celko’s SQL for smarties: advanced SQL programming. 3rd ed. San Fransisco: Morgan Kaufmann; 2005.
Kimball R, Ross M. The data warehouse toolkit: the complete guide to dimensional modeling. 2nd ed. New York: Wiley; 2002.
Shasha D, Bonnet P. Database tuning: principles, experiments and troubleshooting techniques. San Fransisco: Morgan Kaufmann; 2002.
Tow D. SQL tuning. North Sebastopol: OReilly; 2003.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Section Editor information
Rights and permissions
Copyright information
© 2016 Springer Science+Business Media LLC
About this entry
Cite this entry
Bonnet, P., Shasha, D. (2016). Schema Tuning. In: Liu, L., Özsu, M. (eds) Encyclopedia of Database Systems. Springer, New York, NY. https://doi.org/10.1007/978-1-4899-7993-3_322-2
Download citation
DOI: https://doi.org/10.1007/978-1-4899-7993-3_322-2
Received:
Accepted:
Published:
Publisher Name: Springer, New York, NY
Online ISBN: 978-1-4899-7993-3
eBook Packages: Springer Reference Computer SciencesReference Module Computer Science and Engineering