Assume you’re running 3.0 or 3.x - there’s a patch that’ll be in the next 
releases that speed up truncate significantly - there’s some slowish code in 
adding the sstables to the transaction log before deleting them, but it’ll be 
much faster. 

Truncate marks all the data as removed, and then removes it. It requires all 
hosts be online. It removes the risk of conflicting CFIDs. It reduces races.

Dropping the table isn’t guaranteed to hit all hosts at the same time, and 
recreating it won’t either. It’s far more likely you could have data lost if 
you’re writing as you drop and recreate vs using truncate. 



-- 
Jeff Jirsa


> On Dec 20, 2017, at 7:41 PM, changan zuo <zcaunive...@163.com> wrote:
> 
> Hi,guys
>    We have a very big table. when I excute "truncate table" it takes such a 
> long time at last show "request timeout ". 
>    well, if I execute drop table which complete very quickly.
>    I cannot see the big difference since they both delete the data.
>    
>    Anyone can explain it to me ? thanks a lot
> 
> 
> 
>  

Reply via email to