Estimated Execution plan
The Estimated Query Plans are
created without execution and contain an approximate Execution
Plan. This can be used on any T-SQL code without actually running the
query. So for example, if we writing the sql script to before running the
script we will get the execution plan.
Click on the Icon we will get the
estimated execution plan. It is better to use the Estimated Execution Plan when
the query execution time is very long or it may be difficult to restore the
database to the original state after the query run.
You can display the Estimated
Execution Plan in SQL Management Studio by pressing CTRL + L in the query
window or by clicking the Display Estimated Execution Plan button in the SSMS
menu icons as shown below.
Actual Execution Plan
The Actual Query
Plans are created after we sent the query for processing and it contains the
steps that were performed.
We
can display the Actual Execution Plan in the results set by pressing CTRL + M
or by clicking the Include Actual Execution Plan button in the SSMS menu icons
as shown below.
The
execution plan that is generated displays the actual query execution plan that
the SQL Server Database Engine uses to execute the queries.
Understanding the query execution plan in detail
Each
icon in the execution plan graph represents an action item (Operator) in the
plan. The execution plan has to be read from right to left, and each action
item has a percentage of cost relative to the total execution cost of the query
(100%).
In
the above execution plan graph, the first icon in the right most part
represents a "Clustered Index Scan" operation (reading all primary
key index values in the table) in the FactInternetSeles table (that
requires 100% of the total query execution cost), and the left most icon in the
graph represents a SELECT operation (that requires only 0% of the
total query execution cost).
Following are the important icons and their corresponding
operators you are going to see frequently in the graphical query execution
plans:
Graphical Execution Plan Icons see
below
Note the "Query cost" in the
execution plan given above. It has 100% cost relative to the batch. That means,
this particular query has 100% cost among all queries in the batch as there is
only one query in the batch. If there were multiple queries simultaneously
executed in the query window, each query would have its own percentage of cost
(less than 100%).
With the help of execution
plan we will get the below information
Table Scan: Occurs when the corresponding table does not have a clustered
index. Most likely, creating a clustered index or defragmenting index will
enable you to get rid of it.
Clustered Index Scan: Sometimes considered equivalent to Table Scan. Takes place
when a non-clustered index on an eligible column is not available. Most of the
time, creating a non-clustered index will enable you to get rid of it.
Hash Join: The most expensive joining methodology. This takes place when
the joining columns between two tables are not indexed. Creating indexes on
those columns will enable you to get rid of it.
Nested Loops: Most cases, this happens when a non-clustered index does not
include (Cover) a column that is used in the SELECT column list. In this case,
for each member in the non-clustered index column, the database server has to
seek into the clustered index to retrieve the other column value specified in
the SELECT list. Creating a covered index will enable you to get rid of it.
RID Lookup: Takes place when you have a non-clustered index but the same
table does not have any clustered index. In this case, the database engine has
to look up the actual row using the row ID, which is an expensive operation.
Creating a clustered index on the corresponding table would enable you to get
rid of it.
My partner and i preserve also been studying for the signifys associated with dramatists offered to henchmans on-line. Your current recount provides heave sum column on where to find a astonishing discuss minstrel that may be faithful still valuable. A lot of disciples commit aid because of this. index scan vs index seek in sql server
ReplyDelete
ReplyDeleteThrough this post, I know that your good knowledge in playing with all the pieces was very helpful. I notify that this is the first place where I find issues I've been searching for. You have a clever yet attractive way of writing on Msbi online training
Msbi online training Hyderabad
Msbi online training India
Msbi online course
Msbi course
Msbi training
Msbi certification training
mulesoft training
ReplyDeletemulesoft cetification