Continuous resource monitoring for self-predicting DBMS Dushyanth Narayanan 1 Eno Thereska 2 Anastassia Ailamaki 2 1 Microsoft Research-Cambridge, 2 Carnegie.

Slides:



Advertisements
Similar presentations
1 CS 5226: Database Administration and Performance Tuning.
Advertisements

Starfish: A Self-tuning System for Big Data Analytics.
DBMSs on a Modern Processor: Where Does Time Go? Anastassia Ailamaki Joint work with David DeWitt, Mark Hill, and David Wood at the University of Wisconsin-Madison.
1 A GPU Accelerated Storage System NetSysLab The University of British Columbia Abdullah Gharaibeh with: Samer Al-Kiswany Sathish Gopalakrishnan Matei.
Issues and Challenges in the Performance Analysis of Real Disk Arrays Elizabeth Varki, Arif Merchant, Jianzhang Xu and Xiaozhou Qiu Presented by:Soumya.
1 Cheriton School of Computer Science 2 Department of Computer Science RemusDB: Transparent High Availability for Database Systems Umar Farooq Minhas 1,
Autonomic DBMSs: System Tune Thyself! Pat Martin Database Systems Laboratory School of Computing Supported by IBM, CITO and NSERC.
What will my performance be? Resource Advisor for DB admins Dushyanth Narayanan, Paul Barham Microsoft Research, Cambridge Eno Thereska, Anastassia Ailamaki.
1 June 3, 2015June 3, 2015June 3, 2015 Resource Advisor for SQL Server Automating DBMS performance prediction Dushyanth Narayanan, Paul Barham, Eno Thereska,
Meanwhile RAM cost continues to drop Moore’s Law on total CPU processing power holds but in parallel processing… CPU clock rate stalled… Because.
Disk Access Model. Using Secondary Storage Effectively In most studies of algorithms, one assumes the “RAM model”: –Data is in main memory, –Access to.
Project 4 U-Pick – A Project of Your Own Design Proposal Due: April 14 th (earlier ok) Project Due: April 25 th.
CS CS 5150 Software Engineering Lecture 19 Performance.
Chapter 6: Database Evolution Title: AutoAdmin “What-if” Index Analysis Utility Authors: Surajit Chaudhuri, Vivek Narasayya ACM SIGMOD 1998.
Transactions – T4.3 Title: Concurrency Control Performance Modeling: Alternatives and Implications Authors: R. Agarwal, M. J. Carey, M. Livny ACM TODS,
CS CS 5150 Software Engineering Lecture 25 Performance.
1 Improving Hash Join Performance through Prefetching _________________________________________________By SHIMIN CHEN Intel Research Pittsburgh ANASTASSIA.
Using Secondary Storage Effectively In most studies of algorithms, one assumes the "RAM model“: –The data is in main memory, –Access to any item of data.
1 Software Testing and Quality Assurance Lecture 40 – Software Quality Assurance.
BUCS— A Bottom Up Caching Structure for Storage Servers Ming Zhang and Dr. Ken Qing Yang HPCL, Dept. of ECE URI Storage Volume Data storage plays an essential.
1 External Sorting for Query Processing Yanlei Diao UMass Amherst Feb 27, 2007 Slides Courtesy of R. Ramakrishnan and J. Gehrke.
Everest: scaling down peak loads through I/O off-loading D. Narayanan, A. Donnelly, E. Thereska, S. Elnikety, A. Rowstron Microsoft Research Cambridge,
Module 8: Monitoring SQL Server for Performance. Overview Why to Monitor SQL Server Performance Monitoring and Tuning Tools for Monitoring SQL Server.
Layers of a DBMS Query optimization Execution engine Files and access methods Buffer management Disk space management Query Processor Query execution plan.
A Self-tuning Page Cleaner for the DB2 Buffer Pool Wenguang Wang Rick Bunt Department of Computer Science University of Saskatchewan.
Performance and Scalability. Performance and Scalability Challenges Optimizing PerformanceScaling UpScaling Out.
Toolbox for Dimensioning Windows Storage Systems Jalil Boukhobza, Claude Timsit 12/09/2006 Versailles Saint Quentin University.
Performance Tradeoffs for Static Allocation of Zero-Copy Buffers Pål Halvorsen, Espen Jorde, Karl-André Skevik, Vera Goebel, and Thomas Plagemann Institute.
Chapter 2. Creating the Database Environment
Introduction and simple using of Oracle Logistics Information System Yaxian Yao
Lecture 11: DMBS Internals
DBMSs On A Modern Processor: Where Does Time Go? by A. Ailamaki, D.J. DeWitt, M.D. Hill, and D. Wood University of Wisconsin-Madison Computer Science Dept.
Profiling Grid Data Transfer Protocols and Servers George Kola, Tevfik Kosar and Miron Livny University of Wisconsin-Madison USA.
1EMC CONFIDENTIAL—INTERNAL USE ONLY Why EMC for SQL Performance Optimization.
Virtualization for Adaptability Project Presentation CS848 Fall 2006 Umar Farooq Minhas 29 Nov 2006 David R. Cheriton School of Computer Science University.
Oracle Tuning Considerations. Agenda Why Tune ? Why Tune ? Ways to Improve Performance Ways to Improve Performance Hardware Hardware Software Software.
1 CS 501 Spring 2006 CS 501: Software Engineering Lecture 22 Performance of Computer Systems.
1 Wenguang WangRichard B. Bunt Department of Computer Science University of Saskatchewan November 14, 2000 Simulating DB2 Buffer Pool Management.
QoS Enabled Application Server The Controller Service Bologna, February 19 th 2004.
Simulating a $2M Commercial Server on a $2K PC Alaa R. Alameldeen, Milo M.K. Martin, Carl J. Mauer, Kevin E. Moore, Min Xu, Daniel J. Sorin, Mark D. Hill.
1© Copyright 2012 EMC Corporation. All rights reserved. EMC Mission Critical Infrastructure For Microsoft SQL Server 2012 Accelerated With VFCache EMC.
Hosting an Enterprise Financial Forecasting Application with Terminal Server Published: June 2003.
CS Operating System & Database Performance Tuning Xiaofang Zhou School of Computing, NUS Office: S URL:
Data Replication and Power Consumption in Data Grids Susan V. Vrbsky, Ming Lei, Karl Smith and Jeff Byrd Department of Computer Science The University.
CPSC 404, Laks V.S. Lakshmanan1 External Sorting Chapter 13: Ramakrishnan & Gherke and Chapter 2.3: Garcia-Molina et al.
DMBS Internals I. What Should a DBMS Do? Store large amounts of data Process queries efficiently Allow multiple users to access the database concurrently.
Improving Disk Throughput in Data-Intensive Servers Enrique V. Carrera and Ricardo Bianchini Department of Computer Science Rutgers University.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
Your Data Any Place, Any Time Performance and Scalability.
An Efficient Threading Model to Boost Server Performance Anupam Chanda.
DMBS Internals I February 24 th, What Should a DBMS Do? Store large amounts of data Process queries efficiently Allow multiple users to access the.
DMBS Internals I. What Should a DBMS Do? Store large amounts of data Process queries efficiently Allow multiple users to access the database concurrently.
DMBS Architecture May 15 th, Generic Architecture Query compiler/optimizer Execution engine Index/record mgr. Buffer manager Storage manager storage.
PARALLEL DATA LABORATORY Carnegie Mellon University A framework for implementing IO-bound maintenance applications Eno Thereska.
Em Spatiotemporal Database Laboratory Pusan National University File Processing : Database Management System Architecture 2004, Spring Pusan National University.
LIOProf: Exposing Lustre File System Behavior for I/O Middleware
COMP7500 Advanced Operating Systems I/O-Aware Load Balancing Techniques Dr. Xiao Qin Auburn University
Troubleshooting Dennis Shasha and Philippe Bonnet, 2013.
What Should a DBMS Do? Store large amounts of data Process queries efficiently Allow multiple users to access the database concurrently and safely. Provide.
1 Lecture 16: Data Storage Wednesday, November 6, 2006.
Introduction to Performance Tuning Chia-heng Tu PAS Lab Summer Workshop 2009 June 30,
Spark on Entropy : A Reliable & Efficient Scheduler for Low-latency Parallel Jobs in Heterogeneous Cloud Huankai Chen PhD Student at University of Kent.
OPERATING SYSTEMS CS 3502 Fall 2017
Lecture 16: Data Storage Wednesday, November 6, 2006.
PA an Coordinated Memory Caching for Parallel Jobs
Memory Management for Scalable Web Data Servers
Lecture 11: DMBS Internals
Predictive Performance
Persistence: hard disk drive
Performance And Scalability In Oracle9i And SQL Server 2000
Presentation transcript:

Continuous resource monitoring for self-predicting DBMS Dushyanth Narayanan 1 Eno Thereska 2 Anastassia Ailamaki 2 1 Microsoft Research-Cambridge, 2 Carnegie Mellon University Umar Farooq Minhas 08 Nov 2006 David R. Cheriton School of Computer Science University of Waterloo

2 Outline  Problem: DBMS Administration  Solution: Resource Advisor  Resource Advisor Architecture  Experiments  Summary  Past Present & Future  Discussion/Q&A

3 Problem: DBMS Administration  Complex & expensive  Key Task: Resource provisioning Vital to ensure QoS Current Techniques  Rules of thumb  Concurrent OLTP loads (a nightmare)  Result: Over-provisioned DBMS Wasteful Prohibitively expensive Tuning still a management issue  Solution: Self-predicting DBMS

4 Solution: Resource Advisor (RA)  Goals: Get quantitative answers to “what-if” questions from DBMS  Point predictions  “how will response time change if memory is doubled?”  Trend forecasting  “what is the shape of memory vs. response-time curve?” Provide visualization of system performance

5 RA Architecture

6 RA Resource Monitoring  DBMS instrumentation Insert check-points that  Generate events e.g. StartRequest, EndRequest, SuspendTask, BufferGet, DiskIOComplete, …, etc.  Helps track CPU, Memory and I/O resource usage  Demand trace extraction Hardware-independent workload demand trace Associate each event to its transaction Group transactions by type e.g. “new_order”

7 RA Visualization

8 RA Architecture

9 Buffer pool model  Input: Reference trace Buffer pool size  Predicts: # of blocking & non-blocking I/Os as a function of buffer pool size  Implementation: DB Cache simulator  Globally shared buffer cache  Least Frequently Used (LFU) eviction policy

10 Storage model  Input: Storage parameters  #of cylinders, seek time,…,queue size etc # of I/O requests (buffer pool model)  Predicts: I/O service time as a function of storage parameters  Implementation: Analytical model  Shortest Seek Time First (SSTF) scheduling  Assumes a random I/O request stream

11 Throughput prediction  Identify the bottleneck resource as one of CPU, memory, I/O or client  System throughput = bottleneck resource throughput  T = Min { T max/io, T max/CPU, T max/workload } n io, t io predicted by buffer pool & storage model respectively T open for open loop inversely proportional to CPU speed specified by DBA

12 Response-time prediction  Response time depends on critical path  critical path = time spend on cpu + disk t response = t CPU + t storage t CPU is measured t storage depends on number of blocking I/Os per transaction and service time per I/O predicted by buffer pool model predicted by storage model

13 Experimental Setup  2 variants of TPC-C workload (open,closed)  10 GB MS SQL Server Database on Intel Xeon 2.7 GHz Processor  200 clients concurrently accessing DB  64, 128, 256, 512, 1024 MB buffer size  CPU and disks unchanged

14 Experiments  Closed-loop throughput prediction  Saturation throughput prediction  Open-loop response time prediction  Resource advisor overheads Higher at lower buffer pool sizes Worse case CPU overhead 6.2% (online)  Reduces to 1.2% for offline 189 additional LOC required in SQL Server RA itself: 1150 LOC

15 Summary  Problem: How to over-come current issues and challenges in DB Administration (particular to resource provisioning)?  Solution: DBMS should be self-predicting  Implementation: Resource Advisor to enable self-prediction in DBMS Experimental evaluation

16 RA Past Present & Future  “Towards self-predicting systems: What if you could ask “what-if”?” DEXA (August 2005)  “Continuous resource monitoring for self-predicting DBMS” MASCOTS (Sept 2005)  “Informed data distribution selection in a self-predicting storage system” January 2006  “Stardust: Tracking Activity in a Distributed Storage System” SIGMETRICS/Performance ACM (June 2006)

17 Discussion / Q&A  The storage model & throughput prediction have recursive dependency for calculating response time t io and throughput T, the underlying assumption is that (T, t io ) values will converge, what happens if they don’t ?  The number of I/Os are predicted by the buffer pool model by using a DB Cache Simulator, what effect would a different kind of simulator have with the overall performance of RA? How to choose?  RA has been specifically shown to work on TPC-C benchmark under some assumptions, can we really expect to get comparable results in general for other OLTP workloads? Is RA usable at all with other workloads?