If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

I have a database, which is Hybrid, and need to tune that. I know the init.ora parameters to play with for OLTP and DSS databases tuning. But I am not sure about the Hybrid database init.ora parameters. Could somebody gives me some suggestions on how to set the parameters, which affects the performance on a hybrid database? Also I debate on MTS/parallel or both should be configured for hybrid databases.

4.You tune your applications in such a way that whenever they update blocks, let them commit or roll back as soon as possible.(This could avoid snapshot too old errors in hybrid systems.)

5.Better partition the majore tables in different tablespaces having data files in different disks with different disk controllers.

6.Isolate Tables & indexes in seperate tablespaces as of point number-5.

7.Make use of resource busy notificaion before locking any object and avoid locks & deadlock problems.

....and so many guidelines can be given to you if you browse through various tuning books....

We cannot tell you exactly what are the init.ora parameters. But you can set all the parameters based on your requirements.(You can set various parameters in test database and do the trail & error methods to finalize).

OPTIMIZER_INDEX_CACHING
Setting this parameter will favour nested loop joins rather than hash or sort-merge joins. If your application queries are having lot of sort-merge joins, then you can increase this parameter from 0 to higher values.
(Valid values are 0 to 100)

OPTIMIZER_INDEX_COST_ADJ
Favouring index access rather than full table scan access for optimizer.(values ranges from 1 to 10000).
Increasing the value from 100(Default) to more will favour index access path.

ALWAYS_ANTI_JOIN / ALWAYS_SEMI_JOIN
Specify whether to use default value (NESTED_LOOPS) or other value (if you specify) when your application query is having one of the above mentioned join. If you specify not-default value, the oracle optimizer will use the other algorithm to execute the query.
(Instead of blindly following some guidance, you can execute the majore sql statements of your applications in a test database with different parameter values and come to a conclusion. You can better read the user manual. Because you will be aware of your applications,data rather than me. Always theory is theory. Practical is practical.)

HASH_JOIN_ENABLED
You can keep this value as 'TRUE' because, if your applicatoin sql faces hash join,and if it's cost is less, it will be used while executing the query (you are favouring the optimizer for more options).

DB_FILE_MULTIBLOCK_READ_COUNT
It specifies the maximum number of blocks read in one I/O operation during a sequential table scan. Setting higher values of this parameter will be useful when you are doing full table scans (DSS applications).When you are making index scan then this may not be useful.

All these parameter explanations are available in USER GUIDE. If it is possible please send the mail to me (mention what are the applications running, number of users, and other details so that I can suggest good values of all the parameters.)