Introducing the SQL Server 2016 Query Store Enrico van de Laar
SQLSat Kyiv Team Olena Smoliak Oksana Borysenko Vitaliy Popovych Yevhen Nedashkivskyi Mykola Pobyivovk
3 Sponsor Sessions at 12:40 Don’t miss them, they might be providing some interesting and valuable information! Room A Room B Room C 13:00 - 13:15 Intapp DB Best NULL 13:20 - 13:50 Microsoft DevArt JetBrains NULL means no session in that room at that time
Our Awesome Sponsors
Session will begin very soon :) Please complete the evaluation form from your pocket after the session. Your feedback will help us to improve future conferences and speakers will appreciate your feedback! Enjoy the conference!
About me Chief Consultant DotNine Technical Consultant PinkRoccade Healthcare MVP Data Platform Blogger Author @evdlaar http://www.dotnine.net enrico@dotnine.net
Flight recorder or “black box” Flight recorder or “black box”. The round part is the CSMU (Crash-survivable memory unit) Origin of black box seems to be because early versions were photograph based © aerophotoworks.com http://www.aerophotoworks.com/blog/2014/3/aviation-recorder-flight-data-recorder-black-box
The flight recorder can record 25 hours of flight data and 2 hours of conversations © aerophotoworks.com http://goo.gl/cO8BEv
Flight recorders are virtually indestructible Flight recorders are virtually indestructible. The can survive an impact of 3400 g’s, an impact force of 3400 times its own weight and can survive for 30 days in salt water. © Manny Ceneta http://www.abc.net.au/news/2014-03-26/air-alaska-flight-data-recorder/5344694
Some data from a flight recorder © TSB http://www.tsb.gc.ca/eng/rapports-reports/aviation/2011/a11h0002/a11h0002.asp
But today we aren’t going to talk about airplane flight recorders but the SQL Server flight recorder: Query Store!
Agenda What is this Query Store? Query Store Architecture Analyzing data inside the Query Store Plan forcing using the Query Store Query Store performance considerations
What is this Query Store?
What is this Query Store? New feature in SQL Server 2016 Captures and stores query information on a per-database level Allows query performance analysis using built-in reports and DMVs Retains query history Integrated directly in the SQL Server Engine
What is this Query Store? Why do I think this is one of the best features in SQL Server 2016? Saves time (and money) Makes performance tuning available for everyone* Examples: CE older to new version, Testing software releases, etc
Query Store Architecture Query plans and text are aggressively written to disk to persist them. All of the information on-disk is recorded in the new query store schema in the Primary Filegroup of the user-database. Query Store DMVs and reports can access both the In-memory and on-disk storage.
Query Store Architecture [DEMO] Demo: Enabling Query Store and Query Store configuration
Analyzing data inside the Query Store Two methods available to analyze the data inside the Query Store - Built-in reporting - DMVs Built-in reporting provides additional, easy accessible, features like plan comparison and forcing DMVs are great for programmatically accessing Query Store data
Analyzing data inside the Query Store [DEMO] Demo: Built-in reporting
Analyzing data inside the Query Store DMV overview and relations
Analyzing data inside the Query Store [DEMO] Demo: DMVs
Plan Forcing through the Query Store Next to giving insight into the performance of your queries, we can use the Query Store to force a specific Execution Plan for a regressed query [DEMO] If you ever had to create a plan guide this new option will make your life a lot easier
Query Store performance considerations Performance impact: 3-5% on average Depends on: - Data Flush Interval setting - Amount of (unique) queries - Storage performance - General performance of the box - etc… BUT…your mileage may vary
Query Store performance considerations There are many ways we can monitor the Query Store - Perfmon - Wait Statistics - Extended Events [DEMO]
To sum things up Query Store is an incredible powerful addition to SQL Server It helps making analyzing query performance easier Allows you to easily force Execution Plans*
Additional reading Monitoring Performance By Using The Query Store (https://msdn.microsoft.com/en-us/library/dn817826.aspx) Simple Talk: “The SQL Server Query Store” article series (https://www.simple-talk.com/author/enrico-van-de-laar/)
Our Awesome Sponsors
Download this slide deck and demo scripts from http://bit.ly/1sfQhIO