我有一个ES索引,中等大小的文档(15-30 Mb或多或少).
每个文档都有一个布尔字段,大多数时候用户只想知道特定文档ID是否将该字段设置为true.
文档大小会影响此查询的性能吗?
"size": 1,
"query": {
"term": {
"my_field": True
}
},
"_source": [
"my_field"
]
Run Code Online (Sandbox Code Playgroud)
并且"大小":0查询会产生更好的时间性能吗?
添加"size":0
到您的查询中,您将避免一些净传输,此行为将提高您的性能时间。
但据我了解你的使用情况,你可以使用count
查询示例:
curl -XPOST 'http://localhost:9200/test/_count -d '{
"query": {
"bool": {
"must": [
{
"term": {
"id": xxxxx
}
},
{
"term": {
"bool_field": True
}
}
]
}
}
}'
Run Code Online (Sandbox Code Playgroud)
通过此查询仅检查是否有总计,您将知道具有某个 id 的文档是否已将 bool 字段设置为 true/false,具体取决于您在查询时 bool_field 中指定的值。这会非常快。
归档时间: |
|
查看次数: |
1180 次 |
最近记录: |