我编写了一些节点脚本来创建和填充弹性搜索中的索引(https://github.com/tgirotto/Elasticsearch);但是,现在我希望能够通过定义主分片和副本分片的数量来自定义索引。我在弹性搜索javascript api文档中查找了它,但没有找到任何东西。有什么想法吗?
答案 0 :(得分:1)
创建索引后无法更改主分片的数量。但是,您可以更改每个主分片的副本数。
http://www.elastic.co/guide/en/elasticsearch/guide/current/_index_settings.html
PUT /my_temp_index/_settings
{
"number_of_replicas": 1
}
因此,您必须在创建索引之前仔细确定所需的主分片数量,然后执行以下操作:
curl -XPUT 'http://localhost:9200/twitter/' -d '{
"settings" : {
"number_of_shards" : 3,
"number_of_replicas" : 2
}
}'
编辑:请原谅我的阅读技巧......我以为您在创建索引后询问如何进行更改,而不是事先如何设置分片/副本。
无论如何,正如您在上面所看到的,指定副本/分片的数量相当容易。请参阅elasticsearch.org上的明确指南,例如:
http://www.elastic.co/guide/en/elasticsearch/reference/current/indices-create-index.html