elasticsearch2升级elasticsearch6注意

本文详细介绍了Elasticsearch从2.x到6.x版本的重要更新,包括数据类型的变更,如string类型的移除及text和keyword类型的引入;搜索功能的改进,如_query_cache的废弃和size限制的新增;以及数据拷贝、性能监控、翻页查询等高级功能的增强。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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"}}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值