
커버링 인덱스를 활용한 페이지네이션 성능 개선하기
·
서버
들어가며안녕하세요. 요즘에 플러피(fluffy)라는 온라인 시험 문제 제작 및 관리 서비스를 개발하고 있습니다. 플러피 서비스의 첫 화면에서 최근 출제된 시험 목록을 보여줍니다. 출제된 시험이 점차 늘어남에 따라 전체 목록을 조회하는 것은 성능적으로 느려질 수 있습니다. 이러한 문제를 해결하기 위해 페이지네이션을 도입하였습니다. 페이지네이션에는 전통적인 게시판에서 자주 사용하는 Offset 방식과 SNS의 무한 스크롤에서 사용하는 Cursor (No Offset)방식이 있습니다. Offset 방식은 페이지 번호를 기반으로 사용자가 원하는 특정 페이지로 이동할 수 있도록 하며, 각 페이지의 시작 위치를 지정하여 데이터를 가져옵니다. 반면, Cursor 방식은 사용자가 마지막으로 본 항목을 기준으로 다음 항..