麻豆黑色丝袜jk制服福利网站-麻豆精品传媒视频观看-麻豆精品传媒一二三区在线视频-麻豆精选传媒4区2021-在线视频99-在线视频a

千鋒教育-做有情懷、有良心、有品質的職業(yè)教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > Fielddata 詳盡解讀

Fielddata 詳盡解讀

來源:千鋒教育
發(fā)布人:xqq
時間: 2023-11-23 12:03:14 1700712194

Fielddata 是 Elasticsearch 中的一個術語,指的是一些字段上值的聚合操作。ES 默認情況下,對于每個字段,都會存儲原始的值和倒排索引來支持搜索。然而,在某些場景下,我們也需要聚合數據,計算最小、最大、平均值等指標,這就用到了 fielddata。下面將從幾個方面對 fielddata 進行詳細解讀。

一、基礎概念

Fielddata 中有兩種類型的值:doc value 和 fielddata cache。其中,doc value 本質是一種優(yōu)化索引的方式,可以加速排序和聚合操作。doc value 值是預先計算好的存儲在內存中的值。相比之下,fielddata cache 存儲在磁盤上的原始值,需要在聚合操作時再進行計算。fielddata cache 默認情況下是禁用的,需要手動啟用。

二、聚合操作

聚合操作是 Elasticsearch 中 fielddata 的一個核心使用場景。最簡單的聚合操作是計算最大值、最小值、平均值和唯一值,可以通過以下語句進行實現:


GET /my_index/_search
{
    "aggs": {
        "max_amount": { "max": { "field": "amount" } },
        "min_amount": { "min": { "field": "amount" } },
        "avg_amount": { "avg": { "field": "amount" } },
        "unique_tags": { "cardinality": { "field": "tags" } }
    }
}

另外,我們還可以使用 fielddata 對文本進行聚合操作。例如,以下語句計算商品品牌的銷售總量:


GET /my_index/_search
{
    "aggs": {
        "brand_sales": {
            "terms": {
                "field": "brand.keyword"
            },
            "aggs": {
                "total_sales": {
                    "sum": {
                        "field": "sales"
                    }
                }
            }
        }
    }
}

三、性能優(yōu)化

Fielddata 相對于一些常用的 Elasticsearch 操作(如搜索)是非常消耗資源的。因此需要一定的性能優(yōu)化。常見的優(yōu)化方式包括:

1、啟用 doc value

啟用 doc value 可以提升排序、聚合操作的性能,占用更少的內存。


PUT my_index/_mapping/my_type
{
  "properties": {
    "my_field": {
      "type": "long",
      "doc_values": true
    }
  }
}

2、避免全量操作

避免全量操作可以大大減少聚合操作的耗時。因此,需要明確設置聚合、搜索、查詢、過濾和排序等操作的范圍和目標,盡量不對全部數據執(zhí)行操作。

3、增加緩存大小

fielddata 的 cache 默認是 30% JVM 堆空間。如果數據量較大,緩存可能會非常滿,導致性能問題。可以通過增加緩存大小解決這個問題。


PUT /my_index/_settings
{
    "index": {
        "fielddata": {
            "cache": {
                "size": "40%"
            }
        }
    }
}

4、合理使用 filter

filter 比 query 更快,因為它可以減少 fielddata 的工作。過濾多個聚合操作時,盡量使用 filter 而不是 query。

四、總結

本文介紹了 Elasticsearch 中的 fielddata,討論了其基礎概念、聚合操作和性能優(yōu)化。對于線上環(huán)境中的 fielddata 操作,需要根據具體的業(yè)務場景和數據量進行合理的性能優(yōu)化,才能獲得更好的使用效果。

tags: fp32和fp16
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業(yè)內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT
主站蜘蛛池模板: 大陆黄色a级片| 最近中文字幕国语免费完整| 国产制服丝袜在线| 怡红院美国分院一区二区| 波多结衣一区二区三区| 中文字幕日韩有码| 成人性生活免费视频| 性高湖久久久久久久久| 成人免费福利电影| 老八吃屎奥利给原视频带声音的| 99在线精品视频在线观看| 久久天天躁狠狠躁夜夜| 久久一本精品久久精品66| 国产大片免费天天看| 北条麻妃在线视频| 麻豆免费高清完整版视频| 亚洲视频免费播放| 中文字幕在线一区二区三区| 侯龙涛何丽萍| 精品无人区一区二区三区a| 韩国三级hd中文字幕| 动漫触手被吸乳羞羞动漫| 女人张开腿让男人桶个爽| 亚洲欧美日韩国产精品一区| 国产理论片在线观看| 大佬的365天第三季完整视频在线观看| 国产成人亚洲欧美电影| 久久天天躁日日躁狠狠躁| 欧美黑人巨大videos在线| 成人毛片手机版免费看| 亚洲天天做日日做天天欢毛片| 色妞网| 色涩综合| 奇米视频7777| 四虎最新地址在线观看1080p| 丝瓜草莓www在线观看| 国产激情久久久久影院小草| 日本电车强视频在线播放| 久久99热66这里只有精品一| 亚洲欧美成人综合久久久| 三级在线看中文字幕完整版|