欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 产业 > 021 elasticsearch索引管理

021 elasticsearch索引管理

2025/9/24 20:20:06 来源:https://blog.csdn.net/m0_46695127/article/details/142899675  浏览:    关键词:021 elasticsearch索引管理

文章目录

    • 索引的管理
      • 1创建索引库
      • 2删除索引
      • 3设置mapping
        • 创建索引库时定义mapping
        • 先创建索引库然后设置mapping
      • 4设置settings
        • 创建索引库时设置settings
        • 创建索引之后修改settings

概念说明
索引库(indexes)索引库包含一堆相关业务,结构相似的文档document数据,比如说建立一个商品product索引库,里面可能就存放了所有的商品数据。
类型(type)type是索引库中的一个逻辑数据分类,一个type下的document,都有相同的field,类似于数据库中的表。比如商品type,里面存放了所有的商品document数据。6.0版本以后一个index只能有1个type,6.0版本以前每个index里可以是一个或多个type。7.0以后,没有type这个概念了
文档(document)文档是es中的存入索引库最小数据单元,一个document可以是一条客户数据,一条商品数据,一条订单数据,通常用JSON数据结构表示。document存在索引库下的type类型中
字段(field)Field是Elasticsearch的最小单位。一个document里面有多个field,每个field就是一个数据字段
映射配置(mappings)对type文档结构的约束叫做映射(mapping),用来定义document的每个字段的约束。如:字段的数据类型、是否分词、是否索引、是否存储等特性。type是模拟mysql中的table概念。表是有结构的,也就是表中每个字段都有约束信息

索引的管理

http://localhost:9200/_all

1创建索引库

方法:put
url:http://localhost:9200/{索引名称}

2删除索引

3设置mapping

就是索引中文档格式的定义
文档中包含的字段的名称、数据类型、是否索引、是否存储、是否分词
最好是先定义好mapping,然后再添加数据,不定义mapping也可以添加文档,es会根据Document格式推断出mapping的定义

创建索引库时定义mapping

方法:put
url: http://localhost:9200/{索引名称}
例如:http://localhost:9200/blog
请求体:
如果要进行分词处理必须使用text类型,keyword类型不分词
如果document中的内容在后续业务中有需要就要存储,否则就可以不存储。不存储也可以分词创建索引,不影响搜索
不分词也可以创建索引

{"mappings":{"properties":{"id":{"type":"long"},"title":{"type":"text","analyzer":"standard","store":"true","index":true},"mobile":{"type":"keyword","store":"true","index":true},"comment":{"type":"text","analyzer":"standard","store":"true","index":true				}}}
}
先创建索引库然后设置mapping

方法:post
url:http://localhost:9200/{索引名称}/_mapping
请求体:

{"properties":{"id":{"type":"long"},"title":{"type":"text","analyzer":"standard","store":"true","index":true},"mobile":{"type":"keyword","store":"true","index":true},"comment":{"type":"text","analyzer":"standard","store":"true","index":true				}}
}

4设置settings

创建索引库时设置settings

方法:put
url: http://localhost:9200/{索引名称}
例如:http://localhost:9200/blog
请求体:

{"settings":{"number_of_shards": "5","number_of_replicas": "1"}
}
创建索引之后修改settings

分片数量在创建索引库之后就不能再修改了
可以修改副本的数量
方法:put
url: http://localhost:9200/{索引名称}/_settings
例如:http://localhost:9200/blog/_settings
请求体:

{"number_of_replicas": "1"
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词