Skip to content

[BE] 스터디 목록 조회에 커서 기반 페이징을 적용 #467

Open
@tco0427

Description

@tco0427

요약

커서 기반 페이징 적용하기

세부 설명

현재 offset 기반의 페이징의 경우 예를 들어 50,000 ~ 50,005 번째의 5개의 데이터를 조회해오기 위해서는 DB 디스크에서 50,005 개의 데이터를 모두 읽어와야하며 디스크를 읽을 때 랜덤I/O 가 발생해 성능상 문제가 많습니다.
이를 해결하기 위한 방법인 커서 기반의 페이징을 적용하여 50,000 ~ 50,005 번째의 5개의 데이터를 조회해오더라도 필요한 데이터인 5개만 디스크로 부터 읽어올 수 있도록 개선합니다.
우선은 가장 빈번한 조회가 일어나는 메인 페이지의 study 목록 조회에 대해서 적용합니다.

참고 : 커서 기반 페이지네이션 (Cursor-based Pagination) 구현하기
참고 : Faster Pagination in Mysql – Why Order By With Limit and Offset is Slow?

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions