range query가 인덱스를 타서 훨씬 빠른것 같은데
굳이 offset, limit 방식을 쓰는 이유가 있나?
예제들이 모두 offset, limit이고 성능 향상의 대안으로 range query를 대고 있는데
이럴거면 왜 range query를 먼저 안쓰는지 궁금
range query가 인덱스를 타서 훨씬 빠른것 같은데
굳이 offset, limit 방식을 쓰는 이유가 있나?
예제들이 모두 offset, limit이고 성능 향상의 대안으로 range query를 대고 있는데
이럴거면 왜 range query를 먼저 안쓰는지 궁금
잘 모르겠지만 만약에 중간 중간 삭제된 게 있으면 range로 500개를 정해도 실제로 500개가 나오지 않을 수 있지 않나?
오...
그러게 range query 가 더 직관적인거 아님? Limit은 dbms 종류에 따라서 지원 안할수도 있는데
생각해보니 최근 id가 1만일 때, id > 9500으로 500개 빼올 수 있다고 생각할 수 있지만, 삭제된 row가 있을 수 있으니 실제론 id > 9500으로 해서 몇개인지 count를 하고 다시 id > 9000 이런식으로 늘려가야할거같네
그건 id가 auto increase 인 케이스를 생각한거임? - dc App
id가 auto increase인 케이스를 가정한거 맞음.
게시판 페이지마냥 딱 갯수 맞게 가져오는 쿼리 짜는게 옛날엔 많았는데 지금은 꼭 그럴필요도 없지 - dc App
또잉 그래?
디씨 모바일만 봐도 무한스크롤 방식이잖음 - dc App
무한스크롤 방식이긴한데, 무한스크롤로 가져올때도 일정 갯수를 가져오지 않나 보통은..?
기억을 떠올려보니 대체로 일정 숫자 만큼의 게시글을 가져오긴 하는데, 좀 덜 가져오는 경우도 있었던거같네
정렬이랑 offset이 성능문제를 일으킴 이것만 뺄수있으면 range랑 크게 다를게 없음 - dc App
흠... 정렬이랑 offset 없이 페이지네이션을 하는게 어떤건지 알려줄 수 있음? 키워드라도 던져주면 알아서 찾아보겟슴
offset cursor - dc App
오키
ㄳ
아 꼭 id를 기준으로 할 필요가 없네 커서 페이지네이션을 쓰면
필터는 상관 없나? 컬럼 하나가 '게시판' 일 때, 'Github 게시판' 에서 500개 가져올라면 range query로는 힘들지 않을까?
맞아. 그 문제가 있어서 새로 게시글 파서 고민을 남겼음
cursor pagination - dc App