我们目前的使用es版本是5.1.1,在centos上部署的,内存是128G, 是做垂直领域的搜索,有9个node,现在部署一个索引,索引分配了20个shard,2个备份
目前segment有5000+,20个shard目前有4.6T的大小,算上备份目前13.8T多,每个shard的大小达到了200G+
但是目前查询性能太差,基本都是10s+ 差的会到分钟级别;我们已经使用了路由功能。
想问问可能造成查询慢的原因?还有使用profile后,参考官方文档,还不知道怎么调优,希望指导下
在小数据量时,搜索很快的?
这个是查询语句
GET /index-xxxx/type-myshare/_search?routing=xxxxx
{
"_source" : {
"excludes": ["timestamp", "content", "title","userId"]
},
"from" : "0",
"size" : "30",
"query": {
"bool": {
"must": [
{
"term": {
"userId": "xxxxx"
}
},
{
"query_string": {
"query": "微信",
"analyze_wildcard" : "true",
"fields": ["title^2", "name^2", "content", "author", "tags"]
}
}
],
"filter": [
{
"range": {
"createTime": {
"gte": "0",
"lte": "2147483647"
}
}
},
{
"range": {
"modifyTime": {
"gte": "0",
"lte": "2147483647"
}
}
}
]
}
},
"sort" : [
{"createTime" : { "order": "asc"}}
]
}
把排序 去掉之后依旧很慢
目前segment有5000+,20个shard目前有4.6T的大小,算上备份目前13.8T多,每个shard的大小达到了200G+
但是目前查询性能太差,基本都是10s+ 差的会到分钟级别;我们已经使用了路由功能。
想问问可能造成查询慢的原因?还有使用profile后,参考官方文档,还不知道怎么调优,希望指导下
在小数据量时,搜索很快的?
这个是查询语句
GET /index-xxxx/type-myshare/_search?routing=xxxxx
{
"_source" : {
"excludes": ["timestamp", "content", "title","userId"]
},
"from" : "0",
"size" : "30",
"query": {
"bool": {
"must": [
{
"term": {
"userId": "xxxxx"
}
},
{
"query_string": {
"query": "微信",
"analyze_wildcard" : "true",
"fields": ["title^2", "name^2", "content", "author", "tags"]
}
}
],
"filter": [
{
"range": {
"createTime": {
"gte": "0",
"lte": "2147483647"
}
}
},
{
"range": {
"modifyTime": {
"gte": "0",
"lte": "2147483647"
}
}
}
]
}
},
"sort" : [
{"createTime" : { "order": "asc"}}
]
}
把排序 去掉之后依旧很慢
6 个回复
laududu
赞同来自: cjwang 、newairisme 、laoyang360
imp
赞同来自:
kepmoving - 90后
赞同来自:
wyntergreg
赞同来自:
chendaoqiu - 90后IT
赞同来自:
xin_wei5
赞同来自: