45.1 deep Paging 性能優(yōu)化
- 深度分頁性能問題
- ES中有個配置: index.max_result_window, 默認(rèn)是10000條數(shù)據(jù), 如果分頁的數(shù)據(jù)超過10000, 就拒絕返回結(jié)果
- 深度分頁的解決方案
- 方案一:用scroll遍歷方式
- 方案二:search after 方式
45.2 利用scroll遍歷方式
- scroll分為初始化和遍歷兩步, 初始化時將所有符合搜索條件的搜索結(jié)果緩存起來,可以理解為快照
- 在遍歷時, 從這個快照中取數(shù)據(jù), 也就是說在初始化后,對索引插入、刪除、更新數(shù)據(jù)都不會影響遍歷結(jié)果
- 初始化
- 后面跟的兩個參數(shù): scroll 代表緩存暫存時間, 其他的和普通search求相同
- 執(zhí)行完命令后會返回一個_scroll_id, 用來下次去數(shù)據(jù)的時候使用
post /student/_search?scroll=1m&size=2
{
"query":{"match_all":{}}
}

- 遍歷查詢
- 這里的scroll_id是scroll初始化的唯一標(biāo)識, 它可能是上一次遍歷取回的_scroll_id或者是初始化返回的_scroll_id, 兩個值應(yīng)該是一樣的
get /_search/scroll
{
"scroll":"1m",
"scroll_id":"上面初始化時返回的_scroll_id"
}
45.3 search after 方式

45.4 三種分頁方式比較

大數(shù)據(jù)視頻推薦:
騰訊課堂
CSDN
AIops智能運(yùn)維機(jī)器學(xué)習(xí)算法實(shí)戰(zhàn)
ELK入門精講
AIOps智能運(yùn)維實(shí)戰(zhàn)
ELK7 stack開發(fā)運(yùn)維
大數(shù)據(jù)語音推薦:
ELK7 stack開發(fā)運(yùn)維
企業(yè)級大數(shù)據(jù)技術(shù)應(yīng)用
大數(shù)據(jù)機(jī)器學(xué)習(xí)案例之推薦系統(tǒng)
自然語言處理
大數(shù)據(jù)基礎(chǔ)
人工智能:深度學(xué)習(xí)入門到精通