Presenter: Red Devilic Sponsored by SQLViet.com 22/12/2013 SQL SERVER CONFERENCE HCMC 2013 DATABASE TUNING PERFORMANCE OVERVIEW
CONTENT Why - When tuning DB Performance Diffirent approaches for Tuning Performance Server Tuning Instance Tuning Objects Tuning SQLs Tuning Q & A
WHY – WHEN TUNING DB PERFORMANCE Why Increasing performance Saving resources Reducing risks When Developing Maintaining Having problems
DIFFIRENT APPROACHES Solving Problems and releavant components from user feedbacks. Based on alert log From DBA advices Follow Tuning Performance Process
DIFFIRENT APPROACHES © Tuning Performance Process Server Instance Object SQL Statements
SERVER TUNING Disk CPU RAM Network
INSTANCE TUNING Instance vs Database Instance Tuning Processes Memory Buffer Cache Query Cache
INSTANCE TUNING © Buffer Cache Buffer Cache Hit Ratio
INSTANCE TUNING © Query Cache Kind of requests Dynamic SQL Stored Procedure, Funtion CLR …
INSTANCE TUNING © Example SELECT * FROM dbo.Tblxxx WHERE col1 = 1; SELECT * FROM dbo.Tblxxx WHERE col1 = 2; Parameterized Query Dynamic Query SP_EXECUTESQL Rewrite using Stored Procedure
INSTANCE TUNING © Dynamic Condition SELECT * FROM tbl Using WHERE 1 = 1 SELECT * FROM tbl WHERE (CustomerID IS NULL) AND (DepartmentID IS NULL) Dynamic List SELECT * FROM tbl WHERE col IN SELECT * FROM tbl WHERE col IN (SELECT col FROM
OBJECTS TUNING Tuning Object Database Structure Object Parameter Objects Physical Object Data File Logical Object Table Index
OBJECTS TUNING © Physical Object Multi Data Files Separate Data File for Table, Index Reducing auto extent Data File Logical Object FILLFACTOR Kind of Index, Table
OBJECTS TUNING © Database Structure Dernormalization Vertical Partitioning Horizontal Partitioning Aggregation Queries
SQLS TUNING
SQLS TUNING © Identify bad queries
SQLS TUNING © Automatic SQL Tuning Advisor 3 rd Software Manual
SQLS TUNING © Change Access Methods Rewrite WHERE to use Indexes COMPUTED Column FBI Index Change Index Type Selectivity Order Lookup Operation
SQLS TUNING © Change Access Methods Rewrite WHERE to use Indexes COMPUTED Column FBI Index Change Index Type Selectivity Order Lookup Operation
SQLS TUNING ©
Change Join Type Reduce Order Operators ORDER BY DISTINCT GROUP BY
MY APPROACHES Existing System SQL Tuning Object Tuning Instance Tuning Server Tuning
MY APPROACHES © New System Server Tuning Instance Tuning Object Tuning SQL Tuning
Q & A THANK YOU