Solved

dbms_stats

Posted on 2011-03-19
10
363 Views
Last Modified: 2012-05-11
Hi, can anybody tell me, by taking out statistics for any table, does we see the performance increase while we perform update, insert or select statement over that table.
0
Comment
Question by:irukulla
  • 3
  • 2
  • 2
  • +1
10 Comments
 
LVL 76

Expert Comment

by:slightwv (䄆 Netminder)
ID: 35173531
Removing statistics on a table basically makes the optimizer revert to rule based.  It will change performance but better or worse depends.

I would only do this in rare situations.  Let the cost based optimizer do its job.
0
 
LVL 68

Accepted Solution

by:
Qlemo earned 167 total points
ID: 35173538
Whenever the statistics can help to process the where clause better, you should see an improvement if they are there. Without stats assumptions need to be made, like "comparing on equal on a non-unique column will result in 10% rows". Totally misaligned stats however are worse than no stats, so if you have stats you need to refresh them regularly.
Stats have most impact on SELECT statements. DML statements (insert, update) might not make good use of stats because the corresponding data and index pages need to be changed anyway, leading to a less "optimal" execution path then with a SELECT, but that's inevitable.
0
 

Author Comment

by:irukulla
ID: 35173547
@slightwv

i had seen an issue in my awr report where it shows an update statement is taking total of 49% of db time and is it due to indexing and stale stats for that table?

think there are no stats on that table and i take out stats, will i able to see the performance gain?
0
 
LVL 76

Assisted Solution

by:slightwv (䄆 Netminder)
slightwv (䄆 Netminder) earned 167 total points
ID: 35173558
To fix 'stale' just update the stats and retry the update.

I suppose you can try removing stats.  It can help in limited situations but 'limited'.
0
PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

 
LVL 68

Expert Comment

by:Qlemo
ID: 35173564
As said, stale stats are (usually) worse then no stats. You can always update, remove, add stats at any time, and monitor the outcome. And that is the only way to "know" for sure. There is no all-purpose answer, because it depends on so many factors, all related to your data and table/index structure.
0
 
LVL 73

Assisted Solution

by:sdstuber
sdstuber earned 166 total points
ID: 35174073
statistics have no peformance impact at all on execution of a query , be it insert, update, select, delete or merge.

statistics help give the optimizer information about how to generate a plan of execution, but they don't actually affect how that plan performs.

to use an analogy...

statistics will help you give directions to someone, for instance Street X has heavy traffic so use Street Y instead.  

When I actually use your directions, I might encounter unusual traffic on Y so, even though it was the preferred plan, I get to the destination slowly
0
 
LVL 68

Expert Comment

by:Qlemo
ID: 35326641
Objection: The question has been answered by several experts in depth - why do want to delete it? In particular "old posting" isn't anything I can consider appropriate as reason for deletion here.
0
 
LVL 73

Expert Comment

by:sdstuber
ID: 35332980
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

How to Create User-Defined Aggregates in Oracle Before we begin creating these things, what are user-defined aggregates?  They are a feature introduced in Oracle 9i that allows a developer to create his or her own functions like "SUM", "AVG", and…
Checking the Alert Log in AWS RDS Oracle can be a pain through their user interface.  I made a script to download the Alert Log, look for errors, and email me the trace files.  In this article I'll describe what I did and share my script.
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.
This video shows how to Export data from an Oracle database using the Original Export Utility.  The corresponding Import utility, which works the same way is referenced, but not demonstrated.

911 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now