Contents
백엔드를 설계하는데 있어서, 무한히 row가 증가하는 table은 "과연 필요한가?"를 고민해봐야 한다.
의도가, "이 table에 데이터를 계속해서 적재해서, 목적 A, B를 위해서 가져다가 쓸꺼야" 이런 식으로 구체화 되어야 한다.
아래는 설계 할 때 참고하면 좋은 작업 시나리오를 작성해둔다.
필요한 기간 동안만 저장(삭제 조건)
무한히 row가 증가하는 table이지만, 내가 해당 table에 접근해서 연산하는데 사용하는 데이터가 지난 1달치라면, 1달이 지나는 데이터는 delete되도록 삭제 시나리오를 구성한다.
ex) 자정마다 1달이 over 되는 데이터 정리 스케줄러 개발
무한히 증가하지 않는 table 설계
요구사항이 저장을 요구하지만, 무한히 증가할 필요 없도록 구성할 수 있다면, 그것에 맞추어 설계한다. 의도 없이 오버스펙으로 설계하지 않는다.
ex) 요구사항이 마지막 정보를 제공해주는 것이라면, 데이터를 계속해서 insert하는 시나리오가 아닌 마지막 정보를 update하는 시나리오가 필요.
'IT' 카테고리의 다른 글
| Token 수량 확인 해주는 앱(Claude Code, Codex, Gemini CLI) (0) | 2026.01.18 |
|---|---|
| [python] 리스트 잘못 쓰면, 오늘은 정상인데 내일은 망가진다. (0) | 2026.01.07 |
| [개발] AI로 짠 코드, 내가 리뷰하는 건 개발자인가 AI인가 (0) | 2025.12.29 |
| [TimescaleDB] hyper table에 indexing을 걸면? (0) | 2025.12.20 |
| [python] module level __getattr__ (__getattr__ 조금 더 파보기) (0) | 2025.12.20 |