Settings 和 Mappings_Settings|学习笔记

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 快速学习 Settings 和 Mappings_Settings。

开发者学堂课程【ElasticSearch 最新快速入门教程Settings 和 Mappings_Settings】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/642/detail/10679


Settings 和 Mappings_Settings

 

Settings 的功能

维护索引库默认设置,经常用来修改默认设置。

例如:分片数量、副本数量

1.查看

curl-XGFT 通过

http://localhost:9200/bigdata/_settings?pretty查询bigdata索引库的分片数量及副本数量

在Elasticsearch中输入http://janson01.9200/bigdata,在下方操作栏输入_settings?pretty,并在右侧下拉列表中选择GET,点击提交请求,输出结果如下:

{

"bigdata":{

"settings":{

"index":{

"creation_date":"1555573227641",

"number_of_shards":"5",

"number_of_replicas":"1",

"uuid":"BN7REDzSRfy947JIHZmYvQ",

"version":{

"created":"6050399",

},

"provided_name":"bigdata"

}

}

}

}

则可知 bigdata 索引库中有5个分片(shard),1个副本(replica)。

2. 操作

(1)操作不存在的索引

修改索引库的分片数及副本数

curl-XPUT'localhost:9200/bigdata/'

-d'{"settings":{"number_of_shards":3,"number_of_rep

licas":2}}'

在 Elasticsearch 中输入 http://janson01.9200/bigdata2,即操作一个不存在的索引库 bigdata2,在右侧下拉列表中选择 PUT,在输入框中输入以下命令(将 bigdata2的分片数改为3,副本数改为2):

{

"settings":{

"number_of_shards":"3",

"number_of_replicas":"2"

}

}

点击提交请求,输出结果如下:

{

"acknowledged":true,

"shards_acknowledged":true,

"index":"bigdata2"

}

然后进行“确认”操作:点击“概览”,再点击页面右上角的“刷新”按钮,即可查询到添加的索引库bigdata2。在其下方的“信息”中选择“索引信息”,即可查询到该索引库的相关信息,也可以再次基础上进行“动作”,如Flash刷新等。

(2)操作已存在的索引

①修改索引库的副本数

curl-XPUT'localhost:9200/bigdata/_settings'

-d'{"index":{"number_of_replicas":2}}'

在进行上一步操作的基础上(即已存在索引库 bigdata2),在 Elasticsearch 中输入http://janson01.9200/bigdata2,在右侧下拉列表中选择 PUT,在输入框中输入以下命令(将 bigdata2的副本数改为3):

{

"index":{

"number_of_replicas":"3"

}

}

然后点击“提交请求”,得到的输出结果中显示,资源已存在(resource_already_exists_exception),则说明已有原赋值信息,故在操作框中输入“_settings”,此时点击“概览”,并刷新,在 bigdata2中,“索引信息”中显示"number_of_replicas":"3",即该索引的副本数变为了“3”。

点击“复合查询”,再次修改副本数,操作如下:

输入 http://janson01.9200/bigdata2,在右侧下拉列表中选择 PUT,并输入“_settings”,最下方输入框中输入以下命令(将 bigdata2的副本数改为2):

{

"index":{

"number_of_replicas":"2"

}

}

点击“概览”,并刷新,在 bigdata2中,“索引信息”中显示"number_of_replicas":"2",即该索引的副本数变为了“2”。

②注:对于已存在的索引,只能修改副本数,而不能修改其分片数。

如在 Elasticsearch 中输入 http://janson01.9200/bigdata2,在右侧下拉列表中选择 PUT,并在左侧输入“_settings”,最下方输入框中输入以下命令(将 bigdata2的分片数改为5,副本数改为2):

{

"settings":{

"number_of_shards":"5",

"number_of_replicas":"2"

}

}

点击“提交请求”,输出结果中显示有异常,因为对于已有索引,不可修改分片数(Can’t update non dynamic setting[(index.number_

of_shards)])。

故在操作中应注意:number_of_shards 是建立索引库时指定的,此后不嫩修改,而副本可以。

删除索引 bigdata2:在 Elasticsearch 的概览中,在索引“bigdata2”下方,点击“动作”“删除”,根据提示在弹出的页面中输入“删除”,并点击“确认”即可删除该索引。

settings 和 mappings,尤其是前者可以修改索引库的副本数及分片数。

根据对索引库数据要求的不同,在置换空间充足的情况下,可以适量增加副本数,通过增加冗余副本,可以从其他副本中进行数据恢复,有效防止数据丢失,这是提升分布式搜索引擎高可硬性的机制。

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
idea报错URI is not registered (Settings | Languages & Frameworks | Schemas and DTDs)
idea报错URI is not registered (Settings | Languages & Frameworks | Schemas and DTDs)
idea报错URI is not registered (Settings | Languages & Frameworks | Schemas and DTDs)
|
Unix Linux iOS开发
FastAPI(64)- Settings and Environment Variables 配置项和环境变量(下)
FastAPI(64)- Settings and Environment Variables 配置项和环境变量(下)
478 0
FastAPI(64)- Settings and Environment Variables 配置项和环境变量(下)
|
Java 数据库 Android开发
|
搜索推荐 开发者 索引
Settings 和 Mappings_Settings|学习笔记
快速学习 Settings 和 Mappings_Settings。
40 0
|
存储 自然语言处理 数据库
Settings 和 Mappings_Settings_Ⅰ_介绍 | 学习笔记
快速学习 Settings 和 Mappings_Settings_Ⅰ_介绍
75 0
Settings 和 Mappings_Settings_Ⅰ_介绍 | 学习笔记
|
开发者 索引
Settings 和 Mappings_Settings | 学习笔记
快速学习 Settings 和 Mappings_Settings
73 0
Settings 和 Mappings_Settings | 学习笔记
|
存储 自然语言处理 数据库
Settings 和 Mappings_Settings_Ⅱ_实例 | 学习笔记
快速学习 Settings 和 Mappings_Settings_Ⅱ_实例
69 0
Settings 和 Mappings_Settings_Ⅱ_实例 | 学习笔记
|
存储 自然语言处理 数据库
Settings 和 Mappings_Mappings_Ⅰ_介绍|学习笔记
快速学习 Settings 和 Mappings_Mappings_Ⅰ_介绍。
63 0
|
JSON BI 数据格式
Settings 和 Mappings_Mappings_Ⅱ_案例|学习笔记
快速学习 Settings 和 Mappings_Mappings_Ⅱ_案例。
63 0
|
Java 开发者 索引
Settings 和 Mappings_概述|学习笔记
快速学习 Settings 和 Mappings_概述。
45 0