赞
踩
已更新整合到新文章:https://dataartist.blog.csdn.net/article/details/130139631
样例:
{
"query": {
"term": {
"field_name": "field_value"
}
}
}
{
"query": {
"bool": {
"filter": {
"term": {
"field_name": "field_value"
}
}
}
}
}
查询性能变化:
测试用例 | 优化前 | 优化后 | 优化比例 |
---|---|---|---|
测试用例 1 | 45.20 | 36.94 | 18.27% |
测试用例 2 | 549.69 | 460.65 | 16.20% |
在查询测试用例 2 时,将每次 scroll 获取的记录数从 1000 增加到 10000。
查询性能变化:
测试用例 | 优化前 | 优化后 | 优化比例 |
---|---|---|---|
测试用例 2 | 460.65 | 407.74 | 11.48% |
_doc
排序在 ElasticSearch 的官方文档中,说明了 _doc
表示按索引顺序排序,也是最高效的排序方法。如果不关心返回文档的顺序的话,那么就应按 _doc
进行排序以提高查询性能。这在 scroll
时格外有效。(https://www.elastic.co/guide/en/elasticsearch/reference/8.6/sort-search-results.html)
样例:
{
"query": {
"bool": {
"filter": {
"term": {
"field_name": "field_value"
}
}
}
}
}
{
"query": {
"bool": {
"filter": {
"term": {
"field_name": "field_value"
}
}
}
},
"sort": ["_doc"]
}
查询性能变化:
测试用例 | 优化前 | 优化后 | 优化比例 |
---|---|---|---|
测试用例 1 | 36.94 | 39.46 | -6.82% |
测试用例 2 | 407.95 | 229.92 | 43.64% |
查询性能变化:
测试用例 | 优化前 | 优化后 | 优化比例 |
---|---|---|---|
测试用例 2 | 229.92 | 223.26 | 2.90% |
测试用例特征描述如下:
测试用例编号 | docs.count | store.size |
---|---|---|
1(scroll 查询,doc 字段较少,返回所有字段) | 2096690 | 166.4 mb |
2(scroll 查询,doc 字段较多,筛选其中部分字段返回) | 2087534 | 7.6 gb |
参考资料:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。