Presenter: Red Devilic Sponsored by SQLViet.com 22/12/2013 SQL SERVER CONFERENCE HCMC 2013 DATABASE...

Preview:

Citation preview

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 ©

• ExampleSELECT * 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 WHERE @condition

• Using WHERE 1 = 1• SELECT * FROM tbl WHERE @condition

WHERE (CustomerID = @custid OR @custid IS NULL)

AND (DepartmentID = @depid OR @depid IS NULL)

• Dynamic List• SELECT * FROM tbl WHERE col IN (@list)

• SELECT * FROM tbl

WHERE col IN

(SELECT col FROM TableFromList(@list))

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

SQL’S TUNING

SQL’S TUNING ©• Identify bad queries

SQL’S TUNING ©

• Automatic

• SQL Tuning Advisor

• 3rd Software

• Manual

SQL’S TUNING ©• Change Access Methods

• Rewrite WHERE to use Indexes

• COMPUTED Column

• FBI Index

• Change Index Type

• Selectivity

• Order

• Lookup Operation

SQL’S TUNING ©• Change Access Methods

• Rewrite WHERE to use Indexes

• COMPUTED Column

• FBI Index

• Change Index Type

• Selectivity

• Order

• Lookup Operation

SQL’S TUNING ©

SQL’S TUNING ©

SQL’S 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

Recommended