Re: System stats

  • From: Jonathan Lewis <jonathan@xxxxxxxxxxxxxxxxxx>
  • To: Oracle-L Freelists <oracle-l@xxxxxxxxxxxxx>, "carlospena999@xxxxxxxxx" <carlospena999@xxxxxxxxx>
  • Date: Mon, 25 Mar 2019 07:50:31 +0000


My advice has hardly changed since I wrote "CBO - Fundamentals".

If you can give Oracle a realistic idea of what your hardware does under normal 
load, fake it in using dbms_stats.set_system_stats(). (This is essentially what 
Oracle does with the EXADATA option - the optimizer has no useful information 
about smart scans, so the 'exadata' option simply tells it that tablscans are 
"very fast".)

As it is, many sites make a nonsense of the system stats by setting the 
parameter db_file_multiblock_read_count to 128 anyway, which has a far bigger 
impact on the optimizer than tweaking the stats.


On top of that, some sites are now using the resource manager "calibrate_io" 
procedure to measure the speed of their hardware, and that adds another 
dimension to how the optimizer does its arithmetic. (Though it's only supposed 
to be important to automatic degree of parallelism.) And someone's bound to 
remind us what the latest "how big is your hardware" mechanism is - because 
there's another one that I've forgotten about.

Bottom line -
a) leave them to default
or
b) set them to something realistic
but
c) if you're running Exadata you need to set them to indicate very fast 
tablescans


Regards.
Jonathan Lewis





________________________________________
From: oracle-l-bounce@xxxxxxxxxxxxx <oracle-l-bounce@xxxxxxxxxxxxx> on behalf 
of Cee Pee <carlospena999@xxxxxxxxx>
Sent: 25 March 2019 04:56:13
To: Oracle-L Freelists
Subject: System stats

List,

I was reading up on system stats and came across this link:

https://blogs.oracle.com/optimizer/should-you-gather-system-statistics

Here are some of the things the author says:

1. "if you are at a decision point and you need to choose whether to gather 
them or not, then in most cases you should use the defaults and not gather 
system statistics."

Doesnt setting systems help a lot these days esp with faster IO devices. Do the 
listers collect system stats in your environments, test. prod, etc?

2. "there is at least some management or procedural overhead required to 
maintain them"

'Maintaining' stats? I thought once we set the system stats we leave it out 
there forever without touching it?

Thanks all,
CP
--
//www.freelists.org/webpage/oracle-l


Other related posts: