Server๐งค/QueryDsl
[QueryDsl] ํ์ด์ง๋ค์ด์ ์ฒ๋ฆฌ (Offset based, Cursor based)
yujindonut
2023. 6. 4. 09:10
728x90
Offset
Offset์ ๋ฌธ์ ์
์) offset์ด 50000, limit 20
20์ offset๊ฐ ์๋ค๋ฉด, 50020 rows๋ฅผ ์์ฒญํด์ค๊ณ , ๋๋จธ์ง 50000๊ฐ์ row๋ฅผ ๋ฒ๋ฆฌ๊ฒ ๋ฉ๋๋ค.
๋๋ฆฐ offset ์ฟผ๋ฆฌ๋ฅผ ์ต์ ํํ๊ธฐ ์ํ ๋ฐฉ๋ฒ
Offset์ ์ฌ์ฉํ์ง ์๋ ๋ฐฉ๋ฒ
Offset์ ์ฌ์ฉํ์ง ์๊ณ , Unique ํ ๊ฐ์ bookmark ์ฒ๋ผ ์ฌ์ฉํ์ฌ,
๋ง์ง๋ง์ fetch ๋ค์ row๋ก ์์ํ ์ ์๋๋ก where clause๋ก ์ ์ ์ ์๋ค.
์์๊ฐ ํ์ด์ง ๊ฐ์ ํญ์ ๋์ผํ๊ฒ ์ ์ง๋๋๋ก, ๊ณ ์ ํ ์ด์ ๊ธฐ์ค์ผ๋ก ์์๋ฅผ ์ง์ ํด์ผ ํฉ๋๋ค.
https://www.eversql.com/faster-pagination-in-mysql-why-order-by-with-limit-and-offset-is-slow/
728x90