「Elasticsearch」- 杂记

Painless Scripting Language

https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-scripting-painless.html

ElasticSearch 使用教程之_score(评分)介绍

相关文章

干货 | 自然语言处理(3)之词频-逆文本词频(TF-IDF)详解

数据迁移

how to move elasticsearch data from one server to another

数据类型

Elasticsearch Reference [6.5] » Mapping » Field datatypes

索引别名

Elasticsearch 索引别名的介绍和操作
Elasticsearch 索引重建(Rebuild)

相关链接

Elasticsearch Best Practice Architecture
Elasticsearch Architectural Overview
Four Elastic “X-Pack” Alternatives

Elasticsearch主副本数量调整方法

在 Elasticsearch 中,主分片(Primary Shard)的数量在索引创建时就已经确定,之后无法直接增加。不过,副本分片(Replica Shard)的数量是可以动态调整的。

### 1. 主分片数量
主分片的数量在索引创建时通过 `number_of_shards` 参数设定,一旦索引创建完成,主分片的数量就无法更改。如果需要更多主分片,只能通过以下方式间接实现:

创建新索引:创建一个新的索引,设置更多主分片,然后将数据重新索引到新索引中。
索引别名:使用索引别名来管理多个索引,使其对外表现为一个逻辑索引。

### 2. 副本分片数量
副本分片的数量可以通过 `number_of_replicas` 参数动态调整。增加副本分片可以提高数据的冗余和查询性能。

#### 调整副本分片数量的方法:
更新索引设置
“`json
PUT /<index_name>/_settings
{

“index”: {

“number_of_replicas”: 2

}

}

“`

将 `<index_name>` 替换为你的索引名称,`2` 是你希望设置的副本分片数量。

使用 Kibana 或 Elasticsearch 插件:通过 Kibana 或其他管理工具调整副本分片数量。

### 3. 增加主分片的间接方法
如果需要更多主分片,可以创建一个新索引并重新索引数据:

  1. 创建新索引

“`json

PUT /new_index

{

“settings”: {

“number_of_shards”: 5,

“number_of_replicas”: 1

}

}

“`

  1. 重新索引数据

“`json

POST /_reindex

{

“source”: {

“index”: “old_index”

},

“dest”: {

“index”: “new_index”

}

}

“`

  1. 切换别名(如果使用别名):

“`json

POST /_aliases

{

“actions”: [

{ “remove”: { “index”: “old_index”, “alias”: “my_index” }},

{ “add”: { “index”: “new_index”, “alias”: “my_index” }}

]

}

“`

### 总结
主分片:数量在索引创建时固定,无法直接增加。
副本分片:数量可以动态调整。

如果需要更多主分片,只能通过创建新索引并重新索引数据来实现。