ES 25 - Elasticsearch的分頁查詢及其深分頁問題 (deep paging)


1 分頁查詢方法

  • 在GET請求中拼接from和size參數
// 查詢10條數據, 默認從第0條數據開始
GET book_shop/_search?size=10
// 從第0條數據開始(包括第0條), 查詢10條數據
GET book_shop/_search?from=0&size=10
// 從第5條數據開始(包括第5條), 查詢10條數據
GET book_shop/_search?from=5&size=10

2 分頁查詢的deep paging問題

deep paging, 就是深層分頁搜索:

分頁搜索的深度越深, 協調節點(負責分發查詢、匯總結果的ES節點)上要存儲的數據就越多, 協調節點對這些數據整體排序后, 再取對應頁的數據.

這個過程既耗費網絡資源, 也耗費內存和CPU資源.

應該盡可能避免deep paging操作. —— 方法類似於Solr的游標, 后續補充.

版權聲明

作者: 馬瘦風(https://healchow.com)

出處: 博客園 馬瘦風的博客(https://www.cnblogs.com/shoufeng)

感謝閱讀, 如果文章有幫助或啟發到你, 點個[好文要頂👆] 或 [推薦👍] 吧😜

本文版權歸博主所有, 歡迎轉載, 但 [必須在文章頁面明顯位置標明原文鏈接], 否則博主保留追究相關人員法律責任的權利.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM