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

Elasticsearch聚合學(xué)習(xí)之四:結(jié)果排序,阿里云java面試

這篇具有很好參考價值的文章主要介紹了Elasticsearch聚合學(xué)習(xí)之四:結(jié)果排序,阿里云java面試。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

返回結(jié)果如下,已經(jīng)按照key的大小從大到小排序:

“aggregations” : {

“price” : {

“buckets” : [

{

“key” : 80000.0,

“doc_count” : 1

},

{

“key” : 60000.0,

“doc_count” : 0

},

{

“key” : 40000.0,

“doc_count” : 0

},

{

“key” : 20000.0,

“doc_count” : 4

},

{

“key” : 0.0,

“doc_count” : 3

}

]

}

}

}

《Elasticsearch 權(quán)威指南》里指出:_key只在 histogram 和 date_histogram 內(nèi)使用,原文如下圖紅框所示:

Elasticsearch聚合學(xué)習(xí)之四:結(jié)果排序,阿里云java面試,2024年程序員學(xué)習(xí),elasticsearch,學(xué)習(xí),阿里云

但是在實際操作中發(fā)現(xiàn),6.7.1版本中,除了histogram 和 date_histogram,terms桶也可以用_key排序,如下圖,是按照key的字母降序:

Elasticsearch聚合學(xué)習(xí)之四:結(jié)果排序,阿里云java面試,2024年程序員學(xué)習(xí),elasticsearch,學(xué)習(xí),阿里云

把desc改為asc之后返回如下圖,變成了按照key的首字母升序排序:

Elasticsearch聚合學(xué)習(xí)之四:結(jié)果排序,阿里云java面試,2024年程序員學(xué)習(xí),elasticsearch,學(xué)習(xí),阿里云

3. 另外《Elasticsearch 權(quán)威指南》中還提到一種內(nèi)置排序類型_term,但是《Elasticsearch官方文檔》中宣布該類型在6.0之后已經(jīng)廢棄,如下:

Elasticsearch聚合學(xué)習(xí)之四:結(jié)果排序,阿里云java面試,2024年程序員學(xué)習(xí),elasticsearch,學(xué)習(xí),阿里云

也許是"手賤"的緣故,我還是用_term試了下,可以返回結(jié)果,但是會建議用_key替代_term,如下圖:

Elasticsearch聚合學(xué)習(xí)之四:結(jié)果排序,阿里云java面試,2024年程序員學(xué)習(xí),elasticsearch,學(xué)習(xí),阿里云

按照metrics排序(metrics結(jié)果只有一個值)

常見的metrics有累加和(sum)、最大值(max)、最小值(min)、平均值(avg),這些metrics的特點是處理結(jié)果只有一個值,我們可以按照這個結(jié)果來排序,例如計算每個汽車品牌的銷售額,再按照銷售額排序:

GET /cars/transactions/_search

{

“size”: 0,

“aggs”: {

“sales_rank”: {

“terms”: { —桶類型是terms

“field”: “make”, —按照make字段聚合

“order”: { —要求排序

“sales”: “desc” —排序字段是sales

}

},

“aggs”: {

“sales”: { —metrics處理后的結(jié)果保存在名為sales的字段中,排序已經(jīng)指定了該字段

“sum”: { —桶內(nèi)的metrics處理,類型是累加

“field”: “price” —將price字段的值累加

}

}

}

}

}

}

下面是聚合結(jié)果,可見已按照每個品牌的銷售額大小做了降序的排序:

“aggregations” : { —聚合結(jié)果

“sales_rank” : { —桶名稱

“doc_count_error_upper_bound” : 0,

“sum_other_doc_count” : 0,

“buckets” : [ —這個JSON數(shù)組內(nèi)是按照品牌聚合而成的所有桶

{

“key” : “bmw”, —品牌為bmw的桶

“doc_count” : 1, —文檔數(shù)量為1

“sales” : { —metrics處理結(jié)果

“value” : 80000.0 —品牌為bmw的汽車銷售總額是80000

}

},

{

“key” : “ford”,

“doc_count” : 2,

“sales” : {

“value” : 55000.0

}

},

{

“key” : “honda”,

“doc_count” : 3,

“sales” : {

“value” : 50000.0

}

},

{

“key” : “toyota”,

“doc_count” : 2,

“sales” : {

“value” : 27000.0

}

}

]

}

}

}

按照metrics排序(metrics結(jié)果有多個值)

和sum、max這些只有一個結(jié)果的metrics不同,extended_stats的結(jié)果包含了數(shù)量、最大值、最小值、平均值、累加和等多種處理,此時必須要指定用其中的哪一項(否則會返回錯誤:Invalid aggregation order path [xxxx]. When ordering on a multi-value metrics aggregation a metric name must be specified):

GET /cars/transactions/_search

{

“size”: 0,

“aggs”: {

“sales_rank”: {

“terms”: { —桶類型是terms

“field”: “make”, —按照make字段聚合

“order”: { —要求排序

“stat.avg”: “asc” —排序字段是metrics結(jié)果的一個子項(平均值),升序

}

},

“aggs”: {

“stat”: { —metrics處理后的結(jié)果保存在名為stat的字段中,排序已經(jīng)指定了該字段的agv子項(平均值)

“extended_stats”: { —桶內(nèi)的metrics處理,類型是計算數(shù)量、最大值、最小值、平均值等多個指標(biāo)項

“field”: “price” —將price字段的值拿來做metrics處理

自我介紹一下,小編13年上海交大畢業(yè),曾經(jīng)在小公司待過,也去過華為、OPPO等大廠,18年進(jìn)入阿里一直到現(xiàn)在。

深知大多數(shù)Java工程師,想要提升技能,往往是自己摸索成長或者是報班學(xué)習(xí),但對于培訓(xùn)機(jī)構(gòu)動則幾千的學(xué)費,著實壓力不小。自己不成體系的自學(xué)效果低效又漫長,而且極易碰到天花板技術(shù)停滯不前!

因此收集整理了一份《2024年Java開發(fā)全套學(xué)習(xí)資料》,初衷也很簡單,就是希望能夠幫助到想自學(xué)提升又不知道該從何學(xué)起的朋友,同時減輕大家的負(fù)擔(dān)。
Elasticsearch聚合學(xué)習(xí)之四:結(jié)果排序,阿里云java面試,2024年程序員學(xué)習(xí),elasticsearch,學(xué)習(xí),阿里云
Elasticsearch聚合學(xué)習(xí)之四:結(jié)果排序,阿里云java面試,2024年程序員學(xué)習(xí),elasticsearch,學(xué)習(xí),阿里云
Elasticsearch聚合學(xué)習(xí)之四:結(jié)果排序,阿里云java面試,2024年程序員學(xué)習(xí),elasticsearch,學(xué)習(xí),阿里云
Elasticsearch聚合學(xué)習(xí)之四:結(jié)果排序,阿里云java面試,2024年程序員學(xué)習(xí),elasticsearch,學(xué)習(xí),阿里云
Elasticsearch聚合學(xué)習(xí)之四:結(jié)果排序,阿里云java面試,2024年程序員學(xué)習(xí),elasticsearch,學(xué)習(xí),阿里云
Elasticsearch聚合學(xué)習(xí)之四:結(jié)果排序,阿里云java面試,2024年程序員學(xué)習(xí),elasticsearch,學(xué)習(xí),阿里云

既有適合小白學(xué)習(xí)的零基礎(chǔ)資料,也有適合3年以上經(jīng)驗的小伙伴深入學(xué)習(xí)提升的進(jìn)階課程,基本涵蓋了95%以上Java開發(fā)知識點,真正體系化!

由于文件比較大,這里只是將部分目錄大綱截圖出來,每個節(jié)點里面都包含大廠面經(jīng)、學(xué)習(xí)筆記、源碼講義、實戰(zhàn)項目、講解視頻,并且后續(xù)會持續(xù)更新

如果你覺得這些內(nèi)容對你有幫助,可以添加V獲?。簐ip1024b (備注Java)
Elasticsearch聚合學(xué)習(xí)之四:結(jié)果排序,阿里云java面試,2024年程序員學(xué)習(xí),elasticsearch,學(xué)習(xí),阿里云

最后

按照上面的過程,4個月的時間剛剛好。當(dāng)然Java的體系是很龐大的,還有很多更高級的技能需要掌握,但不要著急,這些完全可以放到以后工作中邊用別學(xué)。

學(xué)習(xí)編程就是一個由混沌到有序的過程,所以你在學(xué)習(xí)過程中,如果一時碰到理解不了的知識點,大可不必沮喪,更不要氣餒,這都是正常的不能再正常的事情了,不過是“人同此心,心同此理”的暫時而已。

道路是曲折的,前途是光明的!”

Elasticsearch聚合學(xué)習(xí)之四:結(jié)果排序,阿里云java面試,2024年程序員學(xué)習(xí),elasticsearch,學(xué)習(xí),阿里云

Elasticsearch聚合學(xué)習(xí)之四:結(jié)果排序,阿里云java面試,2024年程序員學(xué)習(xí),elasticsearch,學(xué)習(xí),阿里云

711737274614)]

最后

按照上面的過程,4個月的時間剛剛好。當(dāng)然Java的體系是很龐大的,還有很多更高級的技能需要掌握,但不要著急,這些完全可以放到以后工作中邊用別學(xué)。

學(xué)習(xí)編程就是一個由混沌到有序的過程,所以你在學(xué)習(xí)過程中,如果一時碰到理解不了的知識點,大可不必沮喪,更不要氣餒,這都是正常的不能再正常的事情了,不過是“人同此心,心同此理”的暫時而已。

道路是曲折的,前途是光明的!”

[外鏈圖片轉(zhuǎn)存中…(img-vtu7RjAU-1711737274614)]

[外鏈圖片轉(zhuǎn)存中…(img-ws81Z57O-1711737274615)]文章來源地址http://www.zghlxwxcb.cn/news/detail-845111.html

到了這里,關(guān)于Elasticsearch聚合學(xué)習(xí)之四:結(jié)果排序,阿里云java面試的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • Elasticsearch - 聚合獲取原始數(shù)據(jù)并分頁&排序&模糊查詢

    Elasticsearch - 聚合獲取原始數(shù)據(jù)并分頁&排序&模糊查詢

    ES版本: 7.6. 需要按照主機(jī)ID 進(jìn)行告警時間的匯總,并且還得把主機(jī)相關(guān)的信息展示出來。 注: 所有的數(shù)據(jù)都存在索引中, 通過一個DSL查詢展示 實際上就是將terms聚合的結(jié)果以列表形式分頁展示。 bucket_sort中 from不是pageNum,如想實現(xiàn)pageNum效果,from=pageNum*size即可; terms聚合

    2024年02月05日
    瀏覽(20)
  • 解決Elasticsearch的Text類型的字段參與聚合和排序

    解決Elasticsearch的Text類型的字段參與聚合和排序

    text字段類型用于全文內(nèi)容,例如電子郵件正文或產(chǎn)品說明,并且es會通過分析器對字符串進(jìn)行分詞,可以在全文檢索中搜索單獨的單詞。文本字段最適合非結(jié)構(gòu)化但可讀的內(nèi)容并且不用于排序,也很少用于聚合 keyword主要用于結(jié)構(gòu)化內(nèi)容的字段,并且總是會有相同值的字段。

    2024年02月11日
    瀏覽(23)
  • ElasticSearch系列 - SpringBoot整合ES:實現(xiàn)搜索結(jié)果排序 sort

    00. 數(shù)據(jù)準(zhǔn)備 01. Elasticsearch 默認(rèn)的排序方式是什么? ElasticSearch 默認(rèn)的排序方式是相關(guān)性排序。相關(guān)性排序是根據(jù)查詢條件與文檔的匹配程度來計算每個文檔的相關(guān)性得分,然后按照得分從高到低進(jìn)行排序。相關(guān)性排序是 ElasticSearch 中最常用的排序方式,因為它可以根據(jù)查詢

    2024年02月02日
    瀏覽(22)
  • elasticsearch[四]-數(shù)據(jù)聚合排序查詢、搜索框自動補(bǔ)全、數(shù)據(jù)同步、集群

    elasticsearch[四]-數(shù)據(jù)聚合排序查詢、搜索框自動補(bǔ)全、數(shù)據(jù)同步、集群

    **聚合(aggregations)**可以讓我們極其方便的實現(xiàn)對數(shù)據(jù)的統(tǒng)計、分析、運算。例如: 什么品牌的手機(jī)最受歡迎? 這些手機(jī)的平均價格、最高價格、最低價格? 這些手機(jī)每月的銷售情況如何? 實現(xiàn)這些統(tǒng)計功能的比數(shù)據(jù)庫的 sql 要方便的多,而且查詢速度非???,可以實現(xiàn)近

    2024年01月19日
    瀏覽(18)
  • Elasticsearch 核心技術(shù)(九):搜索結(jié)果處理(分頁、排序、指定返回字段、去重、高亮顯示)

    Elasticsearch 核心技術(shù)(九):搜索結(jié)果處理(分頁、排序、指定返回字段、去重、高亮顯示)

    ?? 博客主頁:水滴技術(shù) ?? 支持水滴: 點贊 ?? + 收藏 ? + 留言 ?? ?? 訂閱專欄:大數(shù)據(jù)核心技術(shù)從入門到精通

    2023年04月13日
    瀏覽(23)
  • 微服務(wù)分布式搜索引擎 ElasticSearch 搜索結(jié)果處理 排序、分頁與高亮

    微服務(wù)分布式搜索引擎 ElasticSearch 搜索結(jié)果處理 排序、分頁與高亮

    本文參考黑馬 分布式Elastic search Elasticsearch是一款非常強(qiáng)大的開源搜索引擎,具備非常多強(qiáng)大功能,可以幫助我們從海量數(shù)據(jù)中快速找到需要的內(nèi)容 搜索結(jié)果處理 搜索的結(jié)果可以按照用戶指定的方式去處理或展示。 elasticsearch默認(rèn)是根據(jù)相關(guān)度算分(_score)來排序,但是也支

    2024年02月02日
    瀏覽(44)
  • 原生語言操作和spring data中RestHighLevelClient操作Elasticsearch,索引,文檔的基本操作,es的高級查詢.查詢結(jié)果處理. 數(shù)據(jù)聚合.相關(guān)性系數(shù)打分

    原生語言操作和spring data中RestHighLevelClient操作Elasticsearch,索引,文檔的基本操作,es的高級查詢.查詢結(jié)果處理. 數(shù)據(jù)聚合.相關(guān)性系數(shù)打分

    ? Elasticsearch 是一個分布式、高擴(kuò)展、高實時的搜索與數(shù)據(jù)分析引擎。它能很方便的使大量數(shù)據(jù)具有搜索、分析和探索的能力。充分利用Elasticsearch的水平伸縮性,能使數(shù)據(jù)在生產(chǎn)環(huán)境變得更有價值。Elasticsearch 的實現(xiàn)原理主要分為以下幾個步驟,首先用戶將數(shù)據(jù)提交到Elasti

    2024年02月05日
    瀏覽(123)
  • ElasticSearch java API - 聚合查詢

    ElasticSearch java API - 聚合查詢

    }, “l(fā)ow”: { “type”: “l(fā)ong” }, “date”: { “format”: “strict_date_optional_time||epoch_millis”, “type”: “date” }, “close”: { “type”: “l(fā)ong” } }, “_all”: { “enabled”: false } } } 索引中的全部數(shù)據(jù): name age salary team position james 33 3000 cav sf irving 25 2000 cav pg curry 29 1000 war pg thompson 26

    2024年04月10日
    瀏覽(23)
  • 【ElasticSearch】數(shù)據(jù)聚合語法與Java實現(xiàn)

    【ElasticSearch】數(shù)據(jù)聚合語法與Java實現(xiàn)

    聚合(aggregations)可以實現(xiàn) 對文檔數(shù)據(jù)的統(tǒng)計、分析、運算 。(類比MySQL的聚合函數(shù))ES聚合常見的有三類: 桶(Bucket)聚合:用來對文檔做分組 度量(Metric)聚合:用以計算一些值,比如:最大值、最小值、平均值等 管道(pipeline)聚合:基于其它聚合的結(jié)果為基礎(chǔ)做聚

    2024年02月14日
    瀏覽(24)
  • Java Elasticsearch多條件分組聚合查詢

    需求 ????????在項目開發(fā)中,需要從elasticsearch中查詢?nèi)罩緮?shù)據(jù),先統(tǒng)計每一天的日志調(diào)用量,然后在每一天的分組聚合基礎(chǔ)上,再分組聚合統(tǒng)計成功和失敗的日志調(diào)用量。 代碼

    2024年02月08日
    瀏覽(27)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包