Outline SQL Server Optimizer  Enumeration architecture  Search space: flexibility/extensibility  Cost and statistics Automatic Physical Tuning  Database.

Slides:



Advertisements
Similar presentations
Copyright © SoftTree Technologies, Inc. DB Tuning Expert.
Advertisements

Module 13: Performance Tuning. Overview Performance tuning methodologies Instance level Database level Application level Overview of tools and techniques.
Database Performance Tuning and Query Optimization
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide
Robust query processing Goetz Graefe, Christian König, Harumi Kuno, Volker Markl, Kai-Uwe Sattler Dagstuhl – September 2010.
Optimizing Join Enumeration in Transformation-based Query Optimizers ANIL SHANBHAG, S. SUDARSHAN IIT BOMBAY VLDB 2014
Chapter 15 Algorithms for Query Processing and Optimization Copyright © 2004 Pearson Education, Inc.
The Volcano/Cascades Query Optimization Framework
Solving Problem by Searching
DISCOVER: Keyword Search in Relational Databases Vagelis Hristidis University of California, San Diego Yannis Papakonstantinou University of California,
STHoles: A Multidimensional Workload-Aware Histogram Nicolas Bruno* Columbia University Luis Gravano* Columbia University Surajit Chaudhuri Microsoft Research.
Database Management Systems 3ed, R. Ramakrishnan and Johannes Gehrke1 Evaluation of Relational Operations: Other Techniques Chapter 14, Part B.
IBM Software Group ® Recommending Materialized Views and Indexes with the IBM DB2 Design Advisor (Automating Physical Database Design) Jarek Gryz.
An Efficient Cost-Driven Selection Tool for Microsoft SQL Server Surajit ChaudhuriVivek Narasayya Indian Institute of Technology Bombay CS632 Course seminar.
CoPhy: A Scalable, Portable, and Interactive Index Advisor for Large Workloads Debabrata Dash, Anastasia Ailamaki, Neoklis Polyzotis 1.
Automated Selection of Materialized Views and Indexes for SQL Databases SANJAY AGRAWAL SURAJIT CHAUDHURI VIVEK NARASAYYA HASAN KUMAR REDDY A ( )
Topic Denormalisation S McKeever Advanced Databases 1.
1 Primitives for Workload Summarization and Implications for SQL Prasanna Ganesan* Stanford University Surajit Chaudhuri Vivek Narasayya Microsoft Research.
Self-Tuning and Self-Configuring Systems Zachary G. Ives University of Pennsylvania CIS 650 – Database & Information Systems March 16, 2005.
Chapter 6: Database Evolution Title: AutoAdmin “What-if” Index Analysis Utility Authors: Surajit Chaudhuri, Vivek Narasayya ACM SIGMOD 1998.
Architectural Design Principles. Outline  Architectural level of design The design of the system in terms of components and connectors and their arrangements.
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 11 Database Performance Tuning and Query Optimization.
Relational Database Performance CSCI 6442 Copyright 2013, David C. Roberts, all rights reserved.
Managing Large RDF Graphs (Infinite Graph) Vaibhav Khadilkar Department of Computer Science, The University of Texas at Dallas FEARLESS engineering.
12 Copyright © 2007, Oracle. All rights reserved. Database Maintenance.
1.
Overview of a Database Management System
Multi-Query Optimization Prasan Roy Indian Institute of Technology - Bombay.
Query Optimization Allison Griffin. Importance of Optimization Time is money Queries are faster Helps everyone who uses the server Solution to speed lies.
Database Systems Design, Implementation, and Management Coronel | Morris 11e ©2015 Cengage Learning. All Rights Reserved. May not be scanned, copied or.
Optimizing Queries Using Materialized Views Qiang Wang CS848.
DAY 14: ACCESS CHAPTER 1 Tazin Afrin October 03,
An Integration Framework for Sensor Networks and Data Stream Management Systems.
Physical Database Design Chapter 6. Physical Design and implementation 1.Translate global logical data model for target DBMS  1.1Design base relations.
DBXplorer: A System for Keyword- Based Search over Relational Databases Sanjay Agrawal, Surajit Chaudhuri, Gautam Das Cathy Wang
Module 5 Planning for SQL Server® 2008 R2 Indexing.
Dive into the Query Optimizer Dive into the Query Optimizer: Undocumented Insight Benjamin Nevarez Blog: benjaminnevarez.com
10/10/2012ISC239 Isabelle Bichindaritz1 Physical Database Design.
Module 10 Administering and Configuring SharePoint Search.
SPARQL Query Graph Model (How to improve query evaluation?) Ralf Heese and Olaf Hartig Humboldt-Universität zu Berlin.
RecBench: Benchmarks for Evaluating Performance of Recommender System Architectures Justin Levandoski Michael D. Ekstrand Michael J. Ludwig Ahmed Eldawy.
Parallel Execution Plans Joe Chang
To Tune or not to Tune? A Lightweight Physical Design Alerter Nico Bruno, Surajit Chaudhuri DMX Group, Microsoft Research VLDB’06.
Buffer-pool aware Query Optimization Ravishankar Ramamurthy David DeWitt University of Wisconsin, Madison.
Multi-Query Optimization and Applications Prasan Roy Indian Institute of Technology - Bombay.
CS4432: Database Systems II Query Processing- Part 2.
M.Kersten MonetDB, Cracking and recycling Martin Kersten CWI Amsterdam.
1 Copyright © 2005, Oracle. All rights reserved. Following a Tuning Methodology.
Session id: Darrell Hilliard Senior Delivery Manager Oracle University Oracle Corporation.
A Publish & Subscribe Architecture for Distributed Metadata Management Markus Keidl 1 Alexander Kreutz 1 Alfons Kemper 1 Donald Kossmann 2 1 Universität.
Oracle9i Developer: PL/SQL Programming Chapter 11 Performance Tuning.
Lecture 15: Query Optimization. Very Big Picture Usually, there are many possible query execution plans. The optimizer is trying to chose a good one.
Scott Fallen Sales Engineer, SQL Sentry Blog: scottfallen.blogspot.com.
Configuring SQL Server for a successful SharePoint Server Deployment Haaron Gonzalez Solution Architect & Consultant Microsoft MVP SharePoint Server
3 Copyright © 2006, Oracle. All rights reserved. Designing and Developing for Performance.
1 Copyright © 2008, Oracle. All rights reserved. Repository Basics.
SQL IMPLEMENTATION & ADMINISTRATION Indexing & Views.
Indexing Structures for Files and Physical Database Design
An Efficient, Cost-Driven Index Selection Tool for MS-SQL Server
Database Performance Tuning &
Database Performance Tuning and Query Optimization
Evaluation of Relational Operations: Other Operations
Data Lifecycle Review and Outlook
Automatic Physical Design Tuning: Workload as a Sequence
Recommending Materialized Views and Indexes with the IBM DB2 Design Advisor (Automating Physical Database Design) Jarek Gryz.
Chapter 11 Database Performance Tuning and Query Optimization
Evaluation of Relational Operations: Other Techniques
A Framework for Testing Query Transformation Rules
Query Optimization.
Evaluation of Relational Operations: Other Techniques
Presentation transcript:

Outline SQL Server Optimizer  Enumeration architecture  Search space: flexibility/extensibility  Cost and statistics Automatic Physical Tuning  Database Tuning Advisor  New Directions

Running Example (TPC-H Database) Primary Index Secondary Index

Running Example (Query) SELECT l_orderkey, l_linenumber, o_orderstatus FROM lineitem JOIN orders ON l_orderkey = o_orderkey WHERE l_suppkey < 2000 AND l_partkey < 2000 Sample query: Obtain information about certain ordered line- items that are filtered by suppliers and parts.

SQL Server Query Optimizer Based on Cascades Framework  Transformation-based, top-down approach  Optimization = Tasks + Memo ( Programs = Algorithms + Data Structures ) Fully cost-based Flexible and Extensible  Search space easy to change  New operators and rules easy to add

The Memo Search Space Memory  Compactly stores all explored alternatives (AND-OR graph)  Groups together equivalent operator trees and their plans  Provides memoization, duplicate detection, property and cost management, etc. Groups Expressions

Initialize Memo Optimize Root Group Optimization Tasks

SQL Server Optimizer: Summary Transformation-based, top-down approach No need for bottom-up interesting orders Fully Cost-based No separation into phases (heuristic+cost) Flexible and Extensible New operators, rules, and strategies are simple to add Adaptive  Automatic statistics create and refresh  Automatic optimization levels  Physical Tuning

Problem Statement Set of physical structures (i.e., indexes and views) that make similar workloads execute as fast as possible

Challenges Recommend a variety of physical structures.  Indexes, indexed views, partitions, XML indexes, etc. Support space constraints, update queries. Exceptionally large search space, especially for materialized views and partitions.  Strong interaction among access paths.  Merging needed: Optimal solution with suboptimal parts.  Cannot implement and test alternatives! Industrial-strength quality (not trivial!)

Design Principles Workload-driven: Take into account database usage. What-if API: Determine impact without actually materializing physical design. Don’t second-guess the query optimizer!  An index is useful only if the query optimizer decides to use it.  Don’t use external estimator of goodness, but the optimizer-estimated cost. Keep tool reasonably separated from today’s optimizer (extensibility).

Database Tuning Advisor in Yukon Workload Compress Workload Candidate Selection (per query) Enumeration Time? Yes No Merging Recommendation Tuning Client … Query Optimizer Database Server What-if API Metadata - Create Hypothetical Index/View. - Optimize Query with respect to hypothetical configurations.

New Architecture … Query Optimizer Database Server What-if API Metadata Relaxation Time? Yes No Recommendation Tuning Client Workload Request Identification Get Optimal Configuration (per query) Instrumenting the query optimizer. Search strategy based on relaxations. Requests API

Related Bibliography Surajit Chaudhuri An Overview of Query Optimization in Relational Systems. PODS 1998: Goetz Graefe The Cascades Framework for Query Optimization. IEEE Data Eng. Bull. 18(3): (1995) Surajit Chaudhuri, Vivek R. Narasayya An Efficient Cost-Driven Index Selection Tool for Microsoft SQL Server. VLDB 1997: Sanjay Agrawal, Surajit Chaudhuri, Vivek R. Narasayya Automated Selection of Materialized Views and Indexes in SQL Databases. VLDB 2000: Nicolas Bruno, Surajit Chaudhuri Automatic Physical Database Tuning: A Relaxation-based Approach. SIGMOD 2005