Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: Performance problem with deleteing large number of rows from a table
Again, thanks for taking the time!
On 12.08.2006 16:49, Richard Foote wrote:
>> 1. If the table is index organized am I right to assume that this will >> dramatically change the calculation? Using your example we would get rid >> of 1,000,000 LIO to table blocks. In that case the index access seems to >> be always superior.
*That* was the case I had in mind. Sorry for not speaking it out loud.
> But assuming you could only access these say 10% of data through a secondary
> index, yes the calculation would change somewhat as secondary indexes on IOT
> tables are a somewhat different beast to their standard index cousins. The
> calculation would need to take into consideration how stale are the "guess"
> block addresses of the secondary index. The more stale, the more direct
> probes fail and the more PK accesses are required to retrieve the necessary
> data.
>
> So no, the index access of a secondary index would not necessarily be better
> than a full index scan.
Yeah.
>> 2. There seem to be numerous factors that make this whole calculation even >> more complex (you said, you keep it simple :-)). Things I can think of: >> type of index, partitioning (index local or not, partition pruning >> possible or not...) and a whole lot others as well.
... and folks like you who take the time to explain things a bit here.
>> 3. You mention parallelism as a major factor. Does it play in favor of >> one or the other? I imagine a table scan might be easier to partition.
Ok.
>> 4. Do you have any empirical data at hand?
Thanks! I'll look into it. If only I had more time to thoroughly deal with these things...
Kind regards
robert Received on Mon Aug 14 2006 - 04:47:45 CDT
![]() |
![]() |