Home Page for the TeradataForum

Archives of the TeradataForum

Message Posted: Sun, 29 Feb 2004 @ 13:35:38 GMT

  <Prev Next>   <<First <Prev Next> Last>>  

Subj:   Re: Delete Query on a huge table taking too much time
From:   ulrich arndt


I hope your query did finish in the meantime...

My general comment would be - don't use a delete statement in your scenario as you might have the problem you just described.

There are two other possibilities

1. Use an INSERT/Select into a new table like

insert into new_tab select * from old_table where QuarterID <> 10;

and rename afterwards the old to save table and

the new to the table name you need. Drop the save table if everything succeeded.

The approach has the benefit that the source table is not locked and therefore accessible during the operation.

The disadvantage is that you need a lot more space (perm and spool) for this solution.

2. Use your SQL but use the MULTILOAD DELETE feature to submit it. This will lock your table but there won't be a rollback in case the mulitload fails for what ever reason and you just resubmit the job. Needs also less perm,spool and journal space.

Depending on your Teradata release you might also be able to use the partition primary index feature with a range_n on the the quater_id and "delete" by alter the range of the table.

But be careful and consider all other implications which this might have. PPI is good for fast deletes on the partition but might find negative impacts on your query performance - depending on the data model.

Kind regards


  <Prev Next>   <<First <Prev Next> Last>>  
  Top Home Privacy Feedback  
Copyright for the TeradataForum (TDATA-L), Manta BlueSky    
Copyright 2016 - All Rights Reserved    
Last Modified: 15 Jun 2023