작성
·
193
0
수업 내용을 바탕으로 할일 서비스를 한번 설계 후 개발 해보려고 하고있습니다. 크게 task 와 subtask 구조로 되있고, 하나의 task 는 최대 100개의 subtask 로 제한하고, 모든 task (task, subtask) 는 제목과 완료 여부 정도만 지원하려고 합니다.
task 와 subtask 는 분명 1:N 구조라서 테이블을 분리하면 되겠지 생각하는데, 또 생각해보면, 굳이 분리할 필요있나? TASK 테이블 하나에 subtask 도 넣고, 대신 부모 task 의 id 만 같이 저장하면 안되나 이런 고민이 드는데요.
사실 이고민을 하는 이유가, 생각하는 할일 서비스는 첫화면에 task 와 subtask 를 같이 보여줄꺼라서 테이블로 분리하면 subtask 가 많으면 많을수록, 그리고 전체 task 의 갯수가 많아질수록 쿼리시 성능에는 않좋지 않나 생각이 듭니다.
이 경우에,
TASK 테이블 하나로 설계가 나을까요?
아니면 그래도 이점이 있으니, TASK와 SUBTASK 테이블 각각 만들고 연관관계 맵핑으로 설계 하는게 나을까요?
실제 운영해야 하는 서비스라면 이경우 어떻게 설계하는게 맞을지 궁금해서 질문드립니다.
답변 1
0
안녕하세요. 보나마나님
이 경우 서비스 특성에 맞게 설계하시면 될 것 같아요.
task와 subtask가 거의 똑같다면 하나의 테이블로 구성하셔도 되고,
task와 subtask가 내용도 다르고, 비즈니스 구조도 다르고 동작한다면 나누는게 좋다 생각합니다.
감사합니다.