Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 로그 백업
- redis
- Locust
- Hadoop
- ci/cd
- unique constraint
- nginx
- slack
- aws ec2
- 계정 관리
- elasticsearch
- docker
- 물리삭제
- Django
- logstash
- AWS
- Next.js
- JWT
- DAG
- hive
- 오블완
- soft delete
- Airflow
- prometheus
- 논리삭제
- 티스토리챌린지
- node exporter
- NoSQL
- hard delete
- grafana
Archives
- Today
- Total
목록db (1)
먹수의 개발일지
Soft Delete & Unique Constraint (PostgreSQL/Django)
Soft Delete란? DB 테이블에서 특정 row를 삭제 처리할 때, delete를 사용하지 않고 삭제 여부 혹은 삭제 시점 칼럼을 활용하여 flag 체크하는 방식이다. 반대되는 개념으로는 테이블에서 row를 delete하는 Hard Delete가 있다. Hard Delete의 경우 직접 삭제하기 때문에 별도의 audit table을 관리해줘야 한다. Soft Delete와 unique Constraint 로 인한 문제 회사에서 Soft Delete로 구현된 테이블을 작업하던 중 문제가 발생했다. 특정 시설물들을 관리하는 테이블에서 시설물을 Soft Delete한 후, 삭제된 것과 동일한 코드(unique 제약이 적용된 칼럼)를 가진 시설물 추가에 실패하게 되었다. 삭제 상태로 변경된 기존 시설물 코..
back-end/Database
2024. 2. 9. 15:50