3천만건 짜리 테이블을
delete from table3000만 하면..
한 2시간 걸려서 3천만 record deleted라고 나올 것이다.
이때 실제 디스크에서 데이터가 삭제 되었을까..?
여기서 commit을 하면 0.1초만에 committed라고 나오지만
rollback을 치면 다시 2시간 정도가 걸려야지만 rollback이 완료된다.
delete중 시스템을 내려버리면?
다시 시스템을 올릴때 delete하기전의 데이터로 복구를 해놓으며 이것 역시
delete한 만큼의 시간이 소요된다. delete를 하게되면 실제 commit을 하지 않더라도
데이터를 삭제되고 있으며 이를 rollback을 하게 되면 롤백 세그멘트에서 다시
예전 데이터를 가져와서 rollback을 시키기 때문에 시간이 올래걸리는 것이다.