인프런 커뮤니티 질문&답변
무한 depth 설계에 path enumeration 방식을 선택한 이유?
해결된 질문
작성
·
271
0
- 학습 관련 질문을 최대한 상세히 남겨주세요! 
- 고민 과정도 같이 나열해주셔도 좋습니다. 
- 먼저 유사한 질문이 있었는지 검색해보세요. 
- 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 
안녕하세요
무한 depth는 이전 강의에 소개된 adjency list로도 구현이 가능하고 또 adjacency list, path enumeration 방법 외에도 nested set, closure table 방법도 있는 걸로 알고 있습니다.
path enumeration 방법을 선택한 이유가 따로 있을까요??
답변 1
2

쿠케
지식공유자
ga님, 안녕하세요!
무한 depth는 path enumeration 방법으로 풀어야 페이징을 빠르게 수행할 수 있습니다.
adjency list로는 페이징을 빠르게 수행할 수 없는 이유에 대해 정렬 순서에 대한 부분으로 살펴봅니다.(인덱스를 못태움)
nested set/closure table 개념은 한번 직접 살펴보시면서,
필요한 요구사항과 사용성을 문제 없이 처리할 수 있을지 검토해보시면 좋을 것 같습니다!
각 방식마다 적절한 사용성과 장단점이 있는 것이고, 특정 설계 방식이 요구사항을 충족할 수 있다면 어떤 방법이든 정답은 없습니다!
다만, nested set/closure table 개념은, 대댓글 + 페이징 형태의 요구사항에는 적합하지 않은 방식으로 판단되네요.
각 동작에 대해 병목 없이 만들어지는지 직접 설계하며 검토해보는 것도 추천드립니다!







답변 감사합니다 :)