
[JPA] Soft Delete 개발 방법(Hard Delete과의 차이)
·
Spring/JPA
Soft Delete란?이름 그대로 부드러운 삭제이다. Hard Delete는 데이터베이스 내의 데이터를 실제로(물리적) 삭제를 해버린다.Soft Delete는 논리적으로 삭제를 표기하는 방법이다. 현업에서는 데이터를 몇 년간 보존해야 하는 규정이 존재할수도 있기에 몇 년간 데이터를 보관해두다가 Batch 작업을 통해 일괄적으로 데이터를 처리하기도 한다.또한 잘못 삭제했을 경우 백업이 가능하기에 사용하기도 한다.Soft Delete의 단점?데이터베이스에 계속해서 데이터가 쌓이므로 데이터베이스의 용량이 커질 수 밖에 없다. 이후 배치작업을 통해 데이터를 삭제하는 과정이 필요하다.SELECT조회 시 불필요한 검색 조건을 추가해야 한다.Where을 통한 필터링이 꼭 추가되어야 한다.기존의 Soft Delete..