Re: comments on forcedirectio

geraldine_2@xxxxxxxxxxx wrote:

>I've read articles that encourages the use of forcedirectio on redo logs but 
>discourages on oracle datafiles. With my limited understanding on the 
>forcedirectio option, I believe it should be used on Oracle datafiles to 
>eliminate double buffering. The use of forcedirectio should improve database 
>performance. 
>Are there any reasons why the option should not be used on Oracle datafiles? 
>Does the use of the option depends on the type of storage array? We have 
>9.2.0.4 databases on SUN StorEdge T4 and NetApp.
>
>Thanks.
>
>Geraldine
>
>--
>http://www.freelists.org/webpage/oracle-l
>
>  
>
Geraldine,

   The reason for buffering in the first place is to return control to 
the program which issues a 'write' faster, instead of forcing it to wait 
until the bits are actually recorded on disk. The trouble with redo log 
files is that to tell you 'committed' Oracle waits until it has actually 
written on disk (actually, SAN systems cheat but never mind - at least 
the operating system buffer has been flushed somewhere). With regular 
I/Os, it writes to a system buffer, then flushes this buffer to 
guarantee that your change is actually recorded as permanent and stay so 
even if the system crashes within a millionth of a second. In other 
words, the writing is synchronous and here of course you may go faster 
if you write to disk in a single operation. Database files, however, are 
written asynchronously (by DBWR), so it doesn't matter (and if the 
system crashes, changes are reconstructed from the log file entries).

HTH

-- 
Regards,

Stephane Faroult

RoughSea Ltd
http://www.roughsea.com


--
http://www.freelists.org/webpage/oracle-l

Other related posts: