国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

es 分頁查詢

這篇具有很好參考價(jià)值的文章主要介紹了es 分頁查詢。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

1、from和size是查詢所有數(shù)據(jù),然后剔除不要的部分

POST /my_index/my_type/_search
{
    "query": { "match_all": {}},
    "from": 100,
    "size":  10
}

2、scroll是記錄了一個讀取的位置,保證下一次快速繼續(xù)讀取

scroll

查詢階段:將查詢的結(jié)果集,doc_id列表保存在了一個上下文里

fetch階段:根據(jù)size取回即可

POST /twitter/tweet/_search?scroll=1m
{
    "size": 100,
    "query": {
        "match" : {
            "title" : "elasticsearch"
        }
    }
}

Query階段:每個shard將命中的結(jié)果( doc_id和_score) 按照 _score 順序在上下文中創(chuàng)建一個優(yōu)先隊(duì)列快照,并通過scroll_id指向它,lastEmittedDoc指向上次訪問的位置,最后將TOP(size)的doc id返回給協(xié)調(diào)節(jié)點(diǎn)。

Fetch階段:協(xié)調(diào)節(jié)點(diǎn)將各個shard返回的結(jié)果再進(jìn)行合并排序,最后通過doc_id查找返回結(jié)果的全量數(shù)據(jù)。之后更新各個分片上的上下文。
?

3、search_after

根據(jù)上一頁最后一條數(shù)據(jù)來確定下一頁的位置,因?yàn)槊恳豁摰臄?shù)據(jù)依賴于上一頁最后一條數(shù)據(jù),所以無法完成跳頁請求;在分頁請求過程中如果有索引數(shù)據(jù)的增刪改查,這些變更也會實(shí)時的反映到游標(biāo)上。

核心思想記錄上一次最后訪問的位置

GET twitter/_search
{
    "size": 10,
    "query": {
        "match" : {
            "title" : "es"
        }
    },
    "search_after": [124648691, "624812"],
    "sort": [
        {"date": "asc"},
        {"_id": "desc"}
    ]
}

ES的排序方式

在query階段就要進(jìn)行排序,不全量查詢的情況下怎么排序的?

  • filter 查詢 為?doc_id(Lucene 文件結(jié)構(gòu)的當(dāng)時索引時的先后順序)
  • 按照相關(guān)性得分排序( _score)
  • 按照指定的字段排序 (term index中的順序)

es默認(rèn)分頁查詢方式

分頁方式 性能 優(yōu)點(diǎn) 缺點(diǎn) 場景
from + size 靈活性好,實(shí)現(xiàn)簡單 深度分頁問題 數(shù)據(jù)量比較小,能容忍深度分頁問題
scroll 解決了深度分頁問題 無法反應(yīng)數(shù)據(jù)的實(shí)時性(快照版本)維護(hù)成本高,需要維護(hù)一個 scroll_id 海量數(shù)據(jù)的導(dǎo)出需要查詢海量結(jié)果集的數(shù)據(jù)
search_after 性能最好不存在深度分頁問題能夠反映數(shù)據(jù)的實(shí)時變更 實(shí)現(xiàn)復(fù)雜,需要有一個全局唯一的字段連續(xù)分頁的實(shí)現(xiàn)會比較復(fù)雜,因?yàn)槊恳淮尾樵兌夹枰洗尾樵兊慕Y(jié)果,它不適用于大幅度跳頁查詢

京東面試題:ElasticSearch深度分頁解決方案

es分頁查詢原理_喂喂喂_java的博客-CSDN博客文章來源地址http://www.zghlxwxcb.cn/news/detail-408013.html

到了這里,關(guān)于es 分頁查詢的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Mybatis-Plus詳解(新建maven項(xiàng)目、查詢所有信息、打印SQL日志、實(shí)現(xiàn)CRUD(增刪改查)、分頁、條件查詢且分頁,前后端分離式開發(fā))

    Mybatis-Plus詳解(新建maven項(xiàng)目、查詢所有信息、打印SQL日志、實(shí)現(xiàn)CRUD(增刪改查)、分頁、條件查詢且分頁,前后端分離式開發(fā))

    MyBatis-Plus(opens new window) (簡稱MP) 是一個MyBatis(opens new window)的增強(qiáng)工具,在MyBatis的基礎(chǔ)上只做增強(qiáng)不做改變,為簡化開發(fā)、提高效率而生。想查看官網(wǎng)相關(guān)內(nèi)容的化我這里提供了官網(wǎng)地址:https://baomidou.com/ 無侵入:只做增強(qiáng)不做改變,引入它不會對現(xiàn)有工程產(chǎn)生影響,如絲般

    2024年02月04日
    瀏覽(22)
  • 若依框架ruoyi前后端實(shí)現(xiàn)自定義分頁功能(ES分頁查詢)

    若依 ruoyi 框架主要針對 Sql 進(jìn)行了分頁集成,像平時別的一些數(shù)據(jù)庫或者中間件的分頁,則需要自己實(shí)現(xiàn). 本文主要使用 ES 的分頁查詢?yōu)槔?,展示前后端的基本操作,原理可以類推到其他中間件分頁查詢上.

    2024年02月12日
    瀏覽(162)
  • es 使用 cardinality + collapse做分頁去重查詢

    1.首先我們來介紹一下cardinality的用法 cardinality 即去重計(jì)算,類似sql中 count(distinct),先去重再求和,計(jì)算指定field值的種類數(shù)。 可以看到,aggregations聚合下,返回了按名字查詢?nèi)ブ睾蟮慕Y(jié)果數(shù),但是只有去重后的條數(shù),沒有具體的數(shù)據(jù)。 2.接下來我們再看一下collapse的用法

    2024年02月01日
    瀏覽(25)
  • ES簡單教程(四)使用ElasticsearchRestTemplate多條件分頁查詢(復(fù)雜版)

    TIPS :本文實(shí)現(xiàn)類似數(shù)據(jù)庫后臺管理系統(tǒng)的多條件分頁查詢。

    2024年02月11日
    瀏覽(27)
  • java 整合ES實(shí)現(xiàn)文檔增刪改查(多條件分頁查詢)

    本文采用ES版本為8.7.1 由于只存儲文章,僅用固定索引即可,索引用kibanna直接生成,省略索引部分的增刪查步驟 抓取返回信息是因?yàn)榘姹締栴}無法解析ES返回的正確信息,實(shí)際操作成功但是會報(bào)錯 我這邊只需要單索引操作,有需求的可以讓前端傳過來

    2024年02月13日
    瀏覽(24)
  • 若依整合Easy-Es實(shí)現(xiàn)文章列表分頁查詢

    Easy-Es(簡稱EE)是一款基于ElasticSearch(簡稱Es)官方提供的RestHighLevelClient打造的ORM開發(fā)框架,在 RestHighLevelClient 的基礎(chǔ)上,只做增強(qiáng)不做改變,為簡化開發(fā)、提高效率而生,您如果有用過Mybatis-Plus(簡稱MP),那么您基本可以零學(xué)習(xí)成本直接上手EE,EE是MP的Es平替版,在有些方面甚至比M

    2024年01月16日
    瀏覽(19)
  • Python所有方向的學(xué)習(xí)路線,你們要的知識體系在這,千萬別做了無用功!

    Python所有方向的學(xué)習(xí)路線,你們要的知識體系在這,千萬別做了無用功!

    一直以來都有很多想學(xué)習(xí)Python的朋友們問我,學(xué)Python怎么學(xué)?爬蟲和數(shù)據(jù)分析怎么學(xué)?web開發(fā)的學(xué)習(xí)路線能教教我嗎? 我先告訴大家一個點(diǎn), 不管你是報(bào)了什么培訓(xùn)班,還是自己在通過各種渠道自學(xué),你一定要注重一個東西:完整的知識體系。 感覺很迷茫?學(xué)了一段時間還

    2024年02月06日
    瀏覽(18)
  • ElasticSearch第六講 ES 三種分頁查詢from+size / Scroll /search_after

    我的Git地址:https://gitee.com/ITLULU 歡迎訪問 ES的分頁查詢和關(guān)系數(shù)據(jù)庫的分頁查詢的區(qū)別: ES分頁查詢有以下幾種: 1:簡單的 from size (有默認(rèn)的最大Size,不可無限大小查詢,因?yàn)閿?shù)據(jù)過多查詢性能會降低,且也要考慮內(nèi)存問題,以及OS緩存數(shù)據(jù)的能力) 2: scroll基于查詢窗口

    2024年02月01日
    瀏覽(15)
  • elasticSearch 分頁查詢出現(xiàn)重復(fù)數(shù)據(jù)

    ????????match查詢默認(rèn)按照評分排序,出現(xiàn)數(shù)據(jù)評分一致,客戶端調(diào)用分頁的時候,會出現(xiàn)數(shù)據(jù)重復(fù)錯亂很嚴(yán)重。from size 做分頁,每次都是重新加載,所以評分一致的數(shù)據(jù),順序有可能會變化。在分頁的臨界點(diǎn),容易導(dǎo)致數(shù)據(jù)重復(fù)。 ?解決方法: 1. 使用不重復(fù)字段進(jìn)行排

    2024年04月16日
    瀏覽(22)
  • 百萬數(shù)據(jù)分頁查詢優(yōu)化方案

    百萬數(shù)據(jù)分頁查詢優(yōu)化方案

    分頁問題 分頁列表查詢是項(xiàng)目中的熱點(diǎn)需求,這種需求的特點(diǎn)是:字段多、數(shù)據(jù)量大、訪問頻繁、使用率高的特點(diǎn),這個功能是給用戶最直觀的展示系統(tǒng)的信息,針對于多、大、頻、熱這幾個特點(diǎn),會引申出一個問題:列表展示的數(shù)據(jù)可能是來自于不同的數(shù)據(jù)維度、需要關(guān)聯(lián)

    2024年02月15日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包