Mongo DB 조회 성능 개선기
·
spring
https://www.mongodb.com/ko-kr/docs/manual/tutorial/sort-results-with-indexes/ 복잡한 Join 탈출 - 결제 내역 조회 With Mongo DB진행중인 프로젝트에선 사용자들이 Question이라는 상품을 구매할 수 있습니다. Question은 고등학교 과정의 문제를 의미합니다.(수학, 물리, 생명, 지구과학 등)따라서 사용자는 자신의 구매내역을e4g3r.tistory.com위 글에서 결제 내역 조회 시 복잡한 join 과정을 개선하기 위해 조회용 모델을 설계하고 MongoDB에 저장하여 조회하는 방식으로변경하였습니다.단순히 조회하는 Mongo DB 방식이 8개의 join을 처리하는 Maria DB 방식보다 미세하게 우세할 줄 알았으나 성능 테스..
복잡한 Join 탈출 - 결제 내역 조회 With Mongo DB
·
spring
진행중인 프로젝트에선 사용자들이 Question이라는 상품을 구매할 수 있습니다. Question은 고등학교 과정의 문제를 의미합니다.(수학, 물리, 생명, 지구과학 등)따라서 사용자는 자신의 구매내역을 조회하는 API도 필요하게 되었습니다. Question 결제와 관련된 테이블은 QuestionPayment, QuestionOrder, Coupon, UserCoupon입니다.이 4개의 테이블을 join하여 결제 정보(결제 금액, 사용한 쿠폰, 각 상품의 가격)를 조회하게 됩니다.하지만 구매내역에서는 구매한 상품의 정보도 필요하기 때문에 QuestionOrder에 있는 questionId를 이용하여 상품 정보를 조회합니다. Question은 QuestionCategory, Creator라는 테이블과 관계..