| From: | Steve Adams |
| Date: | 24-Aug-2000 23:56 |
| Subject: | Degree of parallelism |
Thanks for the confirmation.
-----Original Message-----
Sent: Thursday, 24 August 2000 23:05
This methods seems to be really quick.
I have inserted 5 million records in 62 seconds using the method you sugested.
Thanks again for all your help
-----Original Message-----
First check V$RESOURCE_LIMIT to make sure that you are not hitting the
PARALLEL_MAX_SERVERS limit. Then try this ...
alter session enable parallel dml;
insert /*+ append parallel(bpt, 10) nologging */
into bill_product_temp bpt
select /*+ parallel(bp, 10) */ *
from bill_product bp;
-----Original Message-----
Sent: Thursday, 24 August 2000 18:21
I am trying to test various ways of copying a partitioned table
to gain the best throughput.
I have a partitioned table with 5 million records in it.
I have made a copy of that table with no records in it.
The tables are created with degree of parallelism of 4.
I tried to copy this table
insert into BILL_PRODUCT_TEMP select * from BILL_PRODUCT;
This takes 210 seconds to insert the 5 million records.
I have used a hint to speed up the insert
insert /*+ APPEND */ into BILL_PRODUCT_TEMP select * from BILL_PRODUCT;
This takes 100 seconds to insert the 5 million records.
Quite impressed
I have tried to change the degree of parallelism from 4 to 2, 10, 16.
It has no effect on the time to insert the 5 million records.
Could you explain this please?
We are using a tool called Precise SQL.
The degree os parallelism is 4 no matter what we change the degree of
parallelism to when we create the table.
Is there maybe a init.ora parameter that restricts the parallel DML operation?
What would be the most quickest way to insert the records into a table?
I have tried to insert into each partition seperately
and that took the fastest as expected.
Cause it is writing to the 10 partitions all at once.
Is there a way to do this (write to all partitions at once) with a hint?