피드백 내용
공공 데이터 사용, 적은 데이터 수에 대한 문제
- 이 프로젝트의 성격을 헷갈리고 있는 것 같다.
- 이 프로젝트의 역할, 목적이 무엇인지 다시 생각해보자.
- 그저 공공데이터를 보여주는 사이트인가? → 아니다!
- 보여줄 데이터가 부족한 부분을 해결하고 싶다면 → 더미 데이터 사용이 좋아 보인다.
- 전시회 정보 공유 라는 플랫폼 적 특성을 살리려면 전시회 등록 기능을 추가해야 한다!!!!!!!!!!!!!!!
데모 영상 피드백
- 데모 영상 가장 준비 잘됨.
- 일단 지금 구현한 부분은 거의 괜찮다. 앞으로 개발할 부분이 중요한듯.
전시 등록
고민 포인트
- 전시회 시작 날짜
- 전시회 종료 날짜
- 전시회 장
- 관리자 role
- 1 순위: 관리자 없이 일반 유저가 등록 가능하도록
- 2 순위: 관리자 추가
쿼리 최적화
문제 사항
- 쿼리 최적화가 어려운 경우가 많다.
- Join이 많은 경우
- (toMany)fetch join과 Pagination을 함께 써야 하는 경우
- Case 절이 필요한 경우
- 이런 경우 쿼리 최적화 (쿼리 갯수 최소화, 중복 데이터 최소화, 가독성 증대 등등)를 어느정도로 해야하는지?
- 쿼리 갯수가 적다고 무조건 좋은 구조는 아니다. → 중복 데이터가 더 많아서 오히려 성능이 늦어질 수도 있고 코드 복잡도가 너무 높아져 가독성이 안좋아 질 수 도 있다.
해결책
- 이는 굉장히 어려운 문제로, DB 구조, 리소스 상황에 따라 그때그때 더 좋은 구조가 달라질 수 밖에 없다.
- Query DSL로 좀 더 동적인 쿼리를 이용하는 것이 도움이 될 수 있다.
- Query DSL 에서 DTO Projection시 쿼리 성능은 확실히 좋아질 수 있으나, 수정에 취약한 구조가 될 수 있다고 한다. 이 사이에서 줄타기가 중요할듯.
- 오히려 Native Query를 써서 해결할 수 있는 경우도 생길 것이다.
- 정답을 찾는건 주니어 개발자 입장에서 사실 힘든 이야기이고 여러 경험을 하고 여러 생각을 해보는 것이 중요하다. 하면서 느낀점들을 기록해 남기자