Skip to Main Content

Oracle Database Discussions

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Would parallel be good idea?

594974Jan 24 2010 — edited Jan 25 2010
Hello Guys

We have a 80GB table with 2BLOB columns. We have a Java web based application deployed over Tomcat which talks with DB.
Now, in application we have some reports for which we have timeout of 3 minute. and one report from this BIG table always take more than 3 minute.
and always give timeout to end user. I have tested this with lot of options like Range partitioning, Hash partitioning, Monthly partitoning and even daily partitoning.
Being too much data, application never gets result in 3 minutes. Now, finally i have made changes using PARALLELISM in this table.
I changed using below command (with monthly partitioned and global indexes table).

Alter table bigtable parallel; (Please note no degree specified, this will result in instance level parallel parameter)

Now, after doing this cost has decreased from 111K to 11K which is almost 100% gain.
Then i changes parallelism for corrosponding indexes using below.

Alter index bigtableindex parallel;

Cost has reduced from 11K (keeping table in parallel) to 1K, which is really desired.
Now the only problem with this thought is that after reading more about how parallism works over metalink, I found out that parallelism is not good for OLTP.
Now, mine is a OLTP environment. But docs also say that if there are less updates or changes to table, it can be used for OLTP as well. For this table there will be
inserts and select statements only. But i dont know if this would impact production or not. Though i came to know that this would hit all CPUs and will give high spikes for that.
But we have Solaris 10 (Sparc) 64bit with 32CPUs and 32GB ram. Please suggest if this would be a good idea to turn parallelism for tables?

Below are parameters impacting parallel stuff in database.
parallel_max_servers integer 640
parallel_min_percent integer 0
parallel_min_servers integer 0
parallel_server boolean TRUE
parallel_server_instances integer 2

Also, should i reduce the parallel degree from instance default to something else for table?
To avoid high cpu spikes? we have very low load on database from application. So, i believe we can live with medium spikes. But if i will turn instance level parallel
for this table, then i believe we will be in trouble. what do you suggest?

We do not have any other parallel table in environment. This is running on Oracle 10G 10.2.0.4 over solaris 10 (64bit).


Thanks in advance
aps
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Feb 22 2010
Added on Jan 24 2010
3 comments
705 views