본문 바로가기

IT

백엔드 설계 참고사항 1

Contents

백엔드를 설계하는데 있어서, 무한히 row가 증가하는 table은 "과연 필요한가?"를 고민해봐야 한다.

의도가, "이 table에 데이터를 계속해서 적재해서, 목적 A, B를 위해서 가져다가 쓸꺼야" 이런 식으로 구체화 되어야 한다.

 

아래는 설계 할 때 참고하면 좋은 작업 시나리오를 작성해둔다.

 

필요한 기간 동안만 저장(삭제 조건)

무한히 row가 증가하는 table이지만, 내가 해당 table에 접근해서 연산하는데 사용하는 데이터가 지난 1달치라면, 1달이 지나는 데이터는 delete되도록 삭제 시나리오를 구성한다.

ex) 자정마다 1달이 over 되는 데이터 정리 스케줄러 개발

 

무한히 증가하지 않는 table 설계

요구사항이 저장을 요구하지만, 무한히 증가할 필요 없도록 구성할 수 있다면, 그것에 맞추어 설계한다. 의도 없이 오버스펙으로 설계하지 않는다.

ex) 요구사항이 마지막 정보를 제공해주는 것이라면, 데이터를 계속해서 insert하는 시나리오가 아닌 마지막 정보를 update하는 시나리오가 필요.