On-line Index Selection for Physical Database Tuning

Slides:



Advertisements
Similar presentations
Ting Chen, Jiaheng Lu, Tok Wang Ling
Advertisements

Towards Data Mining Without Information on Knowledge Structure
1 Senn, Information Technology, 3 rd Edition © 2004 Pearson Prentice Hall James A. Senns Information Technology, 3 rd Edition Chapter 7 Enterprise Databases.
Multi-RQP Generating Test Databases for the Functional Testing of OLTP Applications Carsten Binnig Joint work with: Donald Kossmann, Eric Lo DBTest Workshop,
1 Copyright © 2010, Elsevier Inc. All rights Reserved Fig 2.1 Chapter 2.
DCV: A Causality Detection Approach for Large- scale Dynamic Collaboration Environments Jiang-Ming Yang Microsoft Research Asia Ning Gu, Qi-Wei Zhang,
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
0 - 0.
DIVIDING INTEGERS 1. IF THE SIGNS ARE THE SAME THE ANSWER IS POSITIVE 2. IF THE SIGNS ARE DIFFERENT THE ANSWER IS NEGATIVE.
SUBTRACTING INTEGERS 1. CHANGE THE SUBTRACTION SIGN TO ADDITION
MULT. INTEGERS 1. IF THE SIGNS ARE THE SAME THE ANSWER IS POSITIVE 2. IF THE SIGNS ARE DIFFERENT THE ANSWER IS NEGATIVE.
Addition Facts
Introduction to Relational Database Systems 1 Lecture 4.
The ANSI/SPARC Architecture of a Database Environment
Views-basics 1. 2 Introduction a view is a perspective of the database different users may need to see the database differently; this is achieved through.
Query optimisation.
Internet Search Engine freshness by Web Server help Presented by: Barilari Alessandro.
Cooperative Trajectory-based Map Construction Wei Chang, Jie Wu, and Chiu C. Tan IEEE TrustCom 2012, June, Liverpool, UK Temple University, USA
Chapter 14 Software Testing Techniques - Testing fundamentals - White-box testing - Black-box testing - Object-oriented testing methods (Source: Pressman,
Information Systems Today: Managing in the Digital World
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide
1. The Problem Context: Interactive data exploration Consecutive queries are typically correlated The workload is characterized by phases Selection predicates.
Chapter 18 Methodology – Monitoring and Tuning the Operational System Transparencies © Pearson Education Limited 1995, 2005.
Copyright © SoftTree Technologies, Inc. DB Tuning Expert.
Performance Tuning Compiled from: Oracle Database Administration, Session 13, Performance, Harvard U Oracle Server Tuning Accelerator, David Scott, Intec.
13 Copyright © 2005, Oracle. All rights reserved. Monitoring and Improving Performance.
Managing Web server performance with AutoTune agents by Y. Diao, J. L. Hellerstein, S. Parekh, J. P. Bigu Jangwon Han Seongwon Park
M ODULE 4 D ATABASE T UNING Section 3 Application Performance 1 ITEC 450 Fall 2012.
© Bharati Vidyapeeths Institute of Computer Applications and Management, New Delhi © Bharati Vidyapeeths Institute of Computer Applications and.
Database Performance Tuning and Query Optimization
Application Server Based on SoftSwitch
David Luebke 1 6/7/2014 ITCS 6114 Skip Lists Hashing.
Megastore: Providing Scalable, Highly Available Storage for Interactive Services. Presented by: Hanan Hamdan Supervised by: Dr. Amer Badarneh 1.
State of Connecticut Core-CT Project Query 8 hrs Updated 6/06/2006.
O X Click on Number next to person for a question.
© S Haughton more than 3?
ICS 434 Advanced Database Systems
Energy & Green Urbanism Markku Lappalainen Aalto University.
Database System Concepts and Architecture
1 © 1999 Citrix Systems Inc Using type information in garbage collection Tim Harris.
Past Tense Probe. Past Tense Probe Past Tense Probe – Practice 1.
Addition 1’s to 20.
25 seconds left…...
Introduction to Limits
Test B, 100 Subtraction Facts
Performance Tuning for Informer PRESENTER: Jason Vorenkamp| | October 11, 2010.
11 = This is the fact family. You say: 8+3=11 and 3+8=11
IT Analytics for Symantec Endpoint Protection
Week 1.
Chapter 12 Analyzing Semistructured Decision Support Systems Systems Analysis and Design Kendall and Kendall Fifth Edition.
O X Click on Number next to person for a question.
<Insert Picture Here>
Management Information Systems, 10/e
Foundations of Data Structures Practical Session #11 Sort properties, Quicksort algorithm.
IBM Software Group ® Recommending Materialized Views and Indexes with the IBM DB2 Design Advisor (Automating Physical Database Design) Jarek Gryz.
Outline SQL Server Optimizer  Enumeration architecture  Search space: flexibility/extensibility  Cost and statistics Automatic Physical Tuning  Database.
CoPhy: A Scalable, Portable, and Interactive Index Advisor for Large Workloads Debabrata Dash, Anastasia Ailamaki, Neoklis Polyzotis 1.
Karl Schnaitter and Neoklis Polyzotis (UC Santa Cruz) Serge Abiteboul (INRIA and University of Paris 11) Tova Milo (University of Tel Aviv) Automatic Index.
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 Eighth Edition Chapter 10 Database Performance Tuning and Query Optimization.
1 Introduction to Database Systems. 2 Database and Database System / A database is a shared collection of logically related data designed to meet the.
Physical Database Design & Performance. Optimizing for Query Performance For DBs with high retrieval traffic as compared to maintenance traffic, optimizing.
September 2011Copyright 2011 Teradata Corporation1 Teradata Columnar.
Index Interactions in Physical Design Tuning Modeling, Analysis, and Applications Karl Schnaitter, UC Santa Cruz Neoklis Polyzotis, UC Santa Cruz Lise.
To Tune or not to Tune? A Lightweight Physical Design Alerter Nico Bruno, Surajit Chaudhuri DMX Group, Microsoft Research VLDB’06.
Chapter 4 Indexes. Indexes Logically represents subsets of data from one or more tables View Generates numeric valuesSequence Basic unit of storage; composed.
Oracle9i Developer: PL/SQL Programming Chapter 11 Performance Tuning.
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.
Presentation transcript:

On-line Index Selection for Physical Database Tuning Karl Schnaitter UCSC & Aster Data Advisor: Neoklis Polyzotis ISSDM Mentor: John Bent SRL/ISSDM Symposium 2010

Index Tuning for Databases SELECT b FROM R WHERE a = 10 Execution Plan 1 R a b 5 “blue” 10 “red” 97 “green” · · · Reads whole table Discards rows where a ≠ 10 Returns b from remaining rows Table Scan · · · Execution Plan 2 R a b 5 “blue” 10 “red” 97 “green” · · · Only accesses rows where a = 10 May be much faster than a table scan Index Scan index(R(a))

Introduction The index selection problem for databases: The goal is to choose the indexes that improve database performance A crucial part of performance tuning Index selection is very challenging Query benefit must be weighed against the cost of creation, maintenance and storage Dynamic query loads add more difficulty In practice, index selection is typically handled by an experienced database administrator

Previous Work Auto-index tuning is an active research topic Hammer and Chan, SIGMOD 1976 Finkelstein et al., TODS 1988 Chaudhuri and Narasaya, VLDB 1997 Bruno and Chaudhuri, ICDE 2007 …and numerous other references

Off-line Index Advisor Off-line Tuning Tuning Workload User Actual Workload Off-line Index Advisor Recommended Indexes DBA Create/Drop Indexes DBA controls index maintenance DBA must know the workload in advance Limited support for interactive tuning What-if Optimizer Database Server

On-line Tuning Tuning is based on actual workload On-line Index Advisor DBA User Tuning is based on actual workload DBA is out of the loop Performance can become unpredictable What-if Optimizer Create/Drop Indexes Actual Workload Database Server

Our Proposal: Semi-automatic Tuning Feedback Semi-automatic Index Advisor Recommended Indexes User DBA Create/Drop Indexes What-if Optimizer Actual Workload Database Server

Semi-automatic Index Advisor Example Session I like a; I want d I don’t like b Semi-automatic Index Advisor {a, b, c} User DBA {a, d, e, c} {a, f, c} DBA makes decisions on index-maintenance Workload is analyzed online DBA expertise is coupled with index advisor What-if Optimizer Create/Drop Indexes Actual Workload Database Server

Our Proposal: Semi-automatic Tuning Feedback Semi-automatic Index Advisor Recommended Indexes User DBA Create/Drop Indexes What-if Optimizer Actual Workload Database Server

Generating Recommendations workload candidate selection User index candidates Work Function Algorithm (WFA) of Borodin & El Yaniv 1998 + performance guarantees - exponential complexity recommendation logic Work Function Algorithm recommended index set DBA

Example of Index Interaction SELECT b FROM R WHERE a = 10 Execution Plan 1 R a b 5 “blue” 10 “red” 97 “green” · · · Only accesses rows where a = 10 May be much faster than a table scan Index Scan index(R(a)) Execution Plan 2 ++ Example of index interaction Only accesses index If plan 2 is cheaper, the index on R.a becomes obsolete Index-Only Scan index(R(a,b))

Interaction-Based Partitioning Consider an undirected graph Vertex for each candidate index Edge between interacting indexes ++ Describe stable partitioning We call this a stable partition of the indexes Different components have independent benefits

Improvement: Candidate Partitioning workload candidate selection partitioned index candidates User recommendation logic Need to handle feedback WFA WFA WFA recommended index set DBA

Feedback Model User provides votes for some indexes Positive votes for indexes they want Negative votes for indexes they don’t want Votes may be explicit E.g., user may reject the system’s recommendation to create an index Votes may also be implicit Creating an index casts a positive vote Dropping an index casts a negative vote ++ What is the interface for feedback

Handling Feedback Votes create a soft constraint on future recommendations Include indexes with positive votes Exclude indexes with negative votes Reverse these decisions if sufficient evidence is seen after the votes were cast ++ High-level description of how feedback is taken into account

partitioned index candidates Final Solution: WFIT workload candidate selection partitioned index candidates User recommendation logic feedback WFA WFA WFA recommended index set DBA

Behavior of WFIT with Feedback “Good” votes follow the best indexes chosen off-line “Bad” votes are opposite of “Good” votes Normalized against optimal schedule ++ Example of empirical results

Conclusions Semi-automatic tuning is a promising new approach to physical database design Combines best features of existing approaches User feedback is the key ingredient We recommend indexes with provable performance guarantees Using work function algorithm as the foundation Future work may include: More efficient workload analysis A GUI frontend to present recommendations