`

elasticsearch2升级elasticsearch6注意

阅读更多
1)string类型被去掉了,添加了text和keyword,keyword是不分词,text是分词

创建索引 user
PUT userindex
{
}

创建mapping
PUT userindex/_mapping/user
{
  "properties": {
    "name": {
      "type": "text",
      "fields": {
        "keyword": {
          "type": "keyword"
        }
      }
    }
  }
}
查看分词:

POST userindex/_analyze
{
  "field": "name",
  "text": "zhang cai yan"
}

POST userindex/_analyze
{
  "field": "name.keyword",
  "text": "zhang cai yan"
}

添加数据

POST userindex/user
{
  "name": "zhang san"
}

搜索数据:

GET userindex/_search
{
  "query": {
    "match": {
      "name.keyword": "zhang"
    }
  }
}


聚合: size 为 0 废除,如果显示全部可以不设置size

GET userindex/_search
{
  "aggregations": {
    "name": {
      "terms": {
        "field": "name.keyword",
        "size" : 0
      }
    }
  }
}


query_cache 废除,该设置改为配置文件配置,通过index.queries.cache.enabled和indices.cache.query.size
{
  "query": {
    "match": {
      "name.keyword": "zhang"
    }
  },
  "query_cache": true
}


fields参数废除,可以使用_source代替fields,该参数es2、es5、es6通用

GET userindex/_search
{
  "_source": ["name"],
  "query": {
    "match" : {
      "name": "zhang"
    }
  }
}


reindex 拷贝数据
POST  _reindex
{
  "source": {
    "index": "fofapro",
    "type": "service",
    "remote": {
      "host": "http://10.10.10.87:9200"
    }
  },
  "dest": {
    "index": "fofapro_service",
    "type": "service"
  }
}

size 不能超过10000条,如下

GET fofapro_service/service/_search
{
  "size": 10000,
  "_source": ["protocol"],
  "query": {
    "bool": {
      "must": [
        {
          "match_all": {}
        }
      ]
    }
  }
}



1)scroll 分片功能(slice),一个scroll分成多个分片,并发执行

2)profile: true  性能监控
https://www.elastic.co/guide/en/elasticsearch/reference/master/search-profile.html

3)search  after  传统的from+size效率很低,尤其是深度翻页,es2没有做数量限制,es5开始就做了限制,size不能超过10000条,超过这个限制后可以使用search after

4) 支持ipv6

5)  _all 在es6里不能使用了,此外es6去掉了搜索时的默认分词器,之前是空格,所以{"query_string"=>{"query"=>"zenid=\"\""}}这种语句出问题了,因为没有指定搜索分词器导致空字符串也可以搜索,应该写为{"query_string"=>{"query"=>"zenid=\"\"", "analyzer": "whitespace"}}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics