日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

es查询大文本效率_es中terms查询速度能否优化

發布時間:2024/10/6 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 es查询大文本效率_es中terms查询速度能否优化 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

es表結構如下:PUT demo/

{

"mappings": {

"demo": {

"_all": {

"enabled": false

},

"properties": {

"aId": {

"type": "keyword"

},

"cId": {

"type": "keyword"

}

}

}

}

}

插入:按照如上單獨aId和cId存儲為一個doc

查詢:每次傳入一個aId和1000個cId的列表,返回es中匹配的aId+cId的列表。

使用如下filter+terms查詢:

GET demo/_search?routing=11147489

{

"size":1000,

"query": {

"bool": {

"filter": {

"term": {

"aId": "11147489"

}

},

"must": [

{

"terms": {

"cId": [

"11147494",

"11147498",

....(1000個)

]

}

}

]

}

}

}

對于es中aId下cId數量小于100的情況性能比較理想大概在7ms左右,

但是對于aId下cId數量幾千幾萬的情況下,響應時間達到40ms以上,但如果size設置為100,則有時候能降到10多ms。

以上插入和查詢的時候使用了路由,返回結果_source也置為過false,使用過ids查詢,用should里面套用1000個term替換terms,但效果都不理想。

請問下論壇里面的大神:

1. 為什么size=100和size=1000響應時間差距這么大,理論上查詢條件帶有aId和路由相同,只在一個分片上查詢,協調節點只需要從一個分片上直接獲取數據并返回即可,并沒有分片之間結果合并,是因為fetch的過程比較耗時嗎?我用profile去查看的時候幾個耗時都不超過1ms。

2. 有沒有其他方法優化aId下cId較大的情況,上述查詢的響應時間。

謝謝。

總結

以上是生活随笔為你收集整理的es查询大文本效率_es中terms查询速度能否优化的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。