elasticsearch6和7 创建索引的区别
时间: 2024-04-22 15:22:14 浏览: 140
Elasticsearch 6和7在创建索引方面有一些区别。
1. 索引名称限制: Elasticsearch 6中,索引名称必须全部小写,只能包含字母,数字和连字符。而在Elasticsearch 7中,索引名称可以包含大写字母,但是不推荐使用大写字母。
2. 默认设置: Elasticsearch 7中,新创建的索引默认启用了更严格的设置,例如禁用了映射类型和动态映射等功能。这些更严格的默认设置可以提高索引的性能和稳定性。
3. 映射类型: Elasticsearch 7中已经移除了映射类型的概念,因此在创建索引时不再需要指定映射类型。相反,Elasticsearch 7使用了更为灵活的字段映射方式。
4. 隐式字段: Elasticsearch 7中,每个文档都会自动添加一个"_id"字段,用于唯一标识文档。在Elasticsearch 6中,如果未指定"_id"字段,则会自动为文档生成一个唯一标识符。
总的来说,Elasticsearch 7在索引创建方面做了一些改进,提高了索引的性能和稳定性。但是,如果你从Elasticsearch 6迁移到Elasticsearch 7,需要注意一些细节问题,如索引名称格式和字段映射方式等方面的变化。
相关问题
怎样合理创建es索引_Elasticsearch(ES)创建索引
要合理创建 Elasticsearch(ES)索引,需要考虑以下几个方面:
1. 确定索引的名称:ES中的索引名称应该简洁明了,能够清楚地表达索引的用途或内容。
2. 确定索引的字段:确定需要存储的字段以及字段的类型。在创建索引时,需要指定每个字段的映射类型,包括文本、数字、日期等等。
3. 确定分片和副本:根据数据量和查询负载来确定分片和副本的数量,以实现最佳性能和可用性。
4. 配置索引分析器:ES中的分析器用于将文本字段拆分成单词,并将这些单词标准化以便于搜索。可以根据需要配置合适的分析器。
5. 配置索引设置:根据需要配置索引的相关设置,包括存储大小、写入限制、刷新间隔等等。
6. 优化索引性能:可以通过调整索引缓存、启用压缩、设置合理的索引刷新间隔等方式来优化索引性能。
创建索引的基本语法如下:
```
PUT /索引名称
{
"settings": {
"number_of_shards": 分片数量,
"number_of_replicas": 副本数量
},
"mappings": {
"properties": {
"字段名称": {
"type": "字段类型"
}
}
}
}
```
例如,创建一个名为“my_index”的索引,包含“title”和“content”两个字段,其中“title”为文本类型,而“content”为长文本类型,可以使用以下命令:
```
PUT /my_index
{
"settings": {
"number_of_shards": 5,
"number_of_replicas": 1
},
"mappings": {
"properties": {
"title": {
"type": "text"
},
"content": {
"type": "text",
"analyzer": "english"
}
}
}
}
```
以上是创建索引的基本步骤和语法,根据实际需求,可以进一步配置索引的设置和优化性能。
elasticsearch6创建索引
在 Elasticsearch 6 中创建索引有以下几个步骤:
1. 打开命令行终端并连接 Elasticsearch 集群。可以使用 curl 命令连接 Elasticsearch 集群,例如:
```
curl -XPUT http://localhost:9200/my_index
```
这会在本地运行的 Elasticsearch 实例中创建一个名为 my_index 的索引。
2. 在创建索引时,可以指定一些参数来配置索引的设置。例如,可以设置分片和副本的数量,以及字段的映射。以下是一个示例:
```
curl -XPUT http://localhost:9200/my_index -H 'Content-Type: application/json' -d '{
"settings": {
"number_of_shards": 1,
"number_of_replicas": 0
},
"mappings": {
"properties": {
"title": {
"type": "text"
},
"content": {
"type": "text"
},
"date": {
"type": "date"
}
}
}
}'
```
这个命令创建了一个名为 my_index 的索引,并设置了分片数量为 1,副本数量为 0。还定义了三个字段 title、content 和 date,并为它们指定了相应的数据类型。
3. 索引创建完成后,可以向其中添加文档。例如,以下命令将一篇文章添加到 my_index 索引中:
```
curl -XPOST http://localhost:9200/my_index/_doc -H 'Content-Type: application/json' -d '{
"title": "Elasticsearch 6 创建索引",
"content": "在 Elasticsearch 6 中创建索引有以下几个步骤......",
"date": "2020-01-01"
}'
```
这个命令使用 POST 请求将一个包含 title、content 和 date 字段的文档添加到 my_index 索引中。文档的 ID 由 Elasticsearch 自动生成。
以上就是在 Elasticsearch 6 中创建索引的基本步骤。
阅读全文