Execution Planning for Success

Slides:



Advertisements
Similar presentations
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 11 Database Performance Tuning and Query Optimization.
Advertisements

Easy HTML DB. Michael Cunningham Developer/Database Administrator.
Troubleshooting SQL Server Enterprise Geodatabase Performance Issues
How a little code can help with support.. Chris Barba – Developer at Cimarex Energy Blog:
Physical Database Design & Performance. Optimizing for Query Performance For DBs with high retrieval traffic as compared to maintenance traffic, optimizing.
Denny Cherry Manager of Information Systems MVP, MCSA, MCDBA, MCTS, MCITP.
Module 7 Reading SQL Server® 2008 R2 Execution Plans.
Ashwani Roy Understanding Graphical Execution Plans Level 200.
Performance Dash A free tool from Microsoft that provides some quick real time information about the status of your SQL Servers.
Learningcomputer.com SQL Server 2008 – Profiling and Monitoring Tools.
Query Optimizer Execution Plan Cost Model Joe Chang
Eugene Meidinger Execution Plans
Dave LinkedIn
How to kill SQL Server Performance Håkan Winther.
SQL Server Statistics DEMO SQL Server Statistics SREENI JULAKANTI,MCTS.MCITP,MCP. SQL SERVER Database Administration.
Get the Most out of SQL Server Standard Edition Or How to be a SQL Miser.
SQL Server Deep Dive Denis Reznik Data Architect at Intapp.
Scott Fallen Sales Engineer, SQL Sentry Blog: scottfallen.blogspot.com.
Execution Plans Detail From Zero to Hero İsmail Adar.
SQL Server Statistics DEMO SQL Server Statistics SREENI JULAKANTI,MCTS.MCITP SQL SERVER Database Administration.
Diving into Query Execution Plans ED POLLACK AUTOTASK CORPORATION DATABASE OPTIMIZATION ENGINEER.
Session Name Pelin ATICI SQL Premier Field Engineer.
Use Cases for In-Memory OLTP Warner Chaves SQL MCM / MVP SQLTurbo.com Pythian.com.
SQL Server Statistics and its relationship with Query Optimizer
UFC #1433 In-Memory tables 2014 vs 2016
Very Large Databases in your future
Query Tuning without Production Data
Query Tuning without Production Data
Reading execution plans successfully
Performance Tuning 101: Parallelism
Please Support Our Sponsors
Reading Execution Plans Successfully
Blazing-Fast Performance:
Introduction to Execution Plans
Marcos Freccia Stop everything! Top T-SQL tricks to a developer
The Key to the Database Engine
Please support our sponsors
Cardinality Estimator 2014/2016
Statistics What are the chances
SQL Server Mythconceptions And Mythteries
Dave LinkedIn SQL Server Execution Plans: How to use them to find performance bottlenecks Dave LinkedIn.
JULIE McLAIN-HARPER LINKEDIN: JM HARPER
Akshay Tomar Prateek Singh Lohchubh
Execution Plans Demystified
Plan cache performance tuning
Statistics: What are they and How do I use them
SQL Server 2016 Execution Plan Analysis Liviu Ieran
Very large Databases in your future Eric Peterson.
Reading Execution Plans Successfully
SQL Server Query Plans Journeyman and Beyond
The 5 Hidden Performance Gems
SQL Server Mythconceptions And Mythteries
In Memory OLTP Not Just for OLTP.
Introduction to reading execution plans
Dave Bland LinkedIn SQL Server Execution Plans: How to use them to find performance bottlenecks Dave Bland LinkedIn
Query Processing CSD305 Advanced Databases.
Please Support our Sponsors
Introduction to Execution Plans
Execution plans Eugene
Diving into Query Execution Plans
Query Profiling Options in SQL Server
Introduction to Execution Plans
The Five Mistakes You are Probably Making with SQL Server
Reading execution plans successfully
Introduction to Execution Plans
Performance Tuning for SQL Developers through Execution Plans
The Ins and Outs of Indexes
Performance Tuning for SQL Developers through Execution Plans
Performance Tuning for SQL Developers through Execution Plans
Presentation transcript:

Execution Planning for Success Arthur Daniels DBA-Art.com

Intro DBA-Art.com 2 years as a BI Developer 1 year as a Database Administrator Attended PASS Summit 2015 + 2016 “I don’t care how long my query takes as long as it returns results” DBA-Art.com

DBA-Art.com Twitter: @ArthurDanSQL Presentation slides + demos Step-by-step instructions for setting up a test server at home: http://www.dba-art.com/setup-local-sql-server/ DBA-Art.com

Overview DBA-Art.com What makes up an execution plan? What do the operators inside the execution plan mean? What you can infer from your plan DBA-Art.com

My test environment DBA-Art.com 16 GB of RAM SQL Server 2014 8 CPU cores Spinning disk HDD 1 TB Running AdventureWorks2014 Database DBA-Art.com

Your environment matters Hardware SQL Settings Min Max Memory, Cost Threshold for Parallelism SQL version DBA-Art.com

Graphical Execution Plan What’s that? DBA-Art.com

Where? DBA-Art.com Graphical Execution plans are stored as XML SQL Server Management Studio (SSMS) Estimated Actual SQL Server Plan Cache DBA-Art.com

Graphical Execution Plan Plan Operators Index Seek Index Scan DBA-Art.com

Other execution plan features Flow and size of line DBA-Art.com

The Plan Cache sys.dm_exec_cached_plans (2008) Plan cache contains estimates Emptied when server restarts DBA-Art.com

Plan cache demo To-do: Build plan cache Find our specific plan Look at operator DBA-Art.com

Where do the estimates come from? SQL Server automatically generates statistics One statistic per index One statistic per column once a query searches by that column Search as in Where clause, JOINs DBA-Art.com

Statistics Demo DBA-Art.com Open Statistics on IX_TransactionHistoryArchive_ProductID DBA-Art.com

Statistics General DBA-Art.com Used for execution plan estimates Automatically generated One for each index One for each column* Statistics contain header, density vector and histogram DBA-Art.com

Reading deeper DBA-Art.com Parallelism as operators Gather Streams Distribute Streams Repartition Streams DBA-Art.com

Comparing a parallel query to serial query Demo Set Cost Threshold for Parallelism to 1 for this demo DBA-Art.com

Compute Scalar Operator Used for mathematical expressions Referred to as “Expr” DBA-Art.com

Compute Scalar Demo Demo here DBA-Art.com

Implicit Conversion Why? In actual and estimated DBA-Art.com

Reading Implicit Conversions Demo DBA-Art.com

Missing Index Hints DBA-Art.com Execution plan will contain index suggestions Only the first missing index is shown DBA-Art.com

Missing Indexes Demo DBA-Art.com

Wrap-Up DBA-Art.com How SQL estimates cost Operators: Index Scan, Index Seek Parallelism Compute Scalar Implicit Conversions Missing Indexes DBA-Art.com

Finally, what you can infer Look at size of lines between operators Discover what operators are doing Search your plan cache for hidden problems DBA-Art.com

Questions? You can also contact me on Twitter, @ArthurDanSQL or my website, www.DBA-Art.com DBA-Art.com

Useful links DBA-Art.com Finding Implicit Conversions in your Plan Cache Free graphical plan explorer: https://www.sentryone.com/plan-explorer/ DBA-Art.com