Soft Delete와 Hard Delete: 장단점과 올바른 선택 기준

개념: Soft Delete와 Hard Delete Soft Delete는 데이터를 물리적으로 삭제하지 않고, 삭제된 것처럼 ‘표시’만 하는 전략입니다. DELETE 쿼리로 데이터를 완전히 제거하는 물리 삭제(Hard Delete)와 달리, Soft Delete는 UPDATE 쿼리를 사용해 특정 컬럼 값을 변경합니다. deleted_at - 데이터가 삭제된 시점을 타임스탬프로 기록 is_deleted - 삭제 여부를 나타내는 플래그(flag)를 true로 변경 요약하면 Soft Delete는 ‘삭제’를 데이터 파괴(Destroy)가 아닌 상태 변경(State Change)으로 다루는 접근법이며, Hard Delete는 데이터를 영구적으로 제거하는 것을 목적으로 합니다. Soft Delete의 장점과 목적 Soft Delete를 도입하면 다음과 같은 이점을 얻을 수 있습니다. ...

May 27, 2026

EAV(Entity-Attribute-Value) 모델 개념과 구조, 장단점 정리

개요 EAV는 Entity-Attribute-Value의 약자이며, 기존 정규화 스키마에서 컬럼으로 고정하던 속성을 행 단위로 분리해 저장하는 데이터 모델 속성 집합이 사용자마다 다르거나 런타임에 추가되는 등 스키마를 선제 정의하기 어려운 경우 사용 속성이 희소할 때 저장 공간 절약과 스키마 변경 부담 감소에 유리 구조 일반적으로 세 컬럼 기반 테이블로 구성 entity 데이터의 주체 예 사용자, 제품 attribute 엔터티의 속성 예 이름, 색상 value 속성의 실제 값 예 김철수, 빨간색 예시 엔터티가 사용자이고 속성이 이름, 나이, 이메일이라고 가정 일반 테이블 예 Users(UserId, Name, Age, Email) EAV 표현 예 ...

February 28, 2026