Indexing 在ElasticSearch中重新索引索引以更改碎片数
我需要更改索引中的碎片数。索引非常大,在我对结果感到满意之前,我可能需要更改配置10-15次以进行测试。有没有现成的工具提供这种功能?或者最简单的方法是什么?和客户端都直接支持重新索引 在Perl中,您可以执行以下操作:Indexing 在ElasticSearch中重新索引索引以更改碎片数,indexing,
elasticsearch,Indexing,
elasticsearch,我需要更改索引中的碎片数。索引非常大,在我对结果感到满意之前,我可能需要更改配置10-15次以进行测试。有没有现成的工具提供这种功能?或者最简单的方法是什么?和客户端都直接支持重新索引 在Perl中,您可以执行以下操作: my $source = $es->scrolled_search( index => 'old_index', search_type => 'scan', scroll => '5m', vers
my $source = $es->scrolled_search(
index => 'old_index',
search_type => 'scan',
scroll => '5m',
version => 1
);
$es->reindex(
source => $source,
dest_index => 'new_index'
);
Tire.index('old').reindex 'new', settings: { number_of_shards: 3 }
在中查找更多信息
在Ruby中,您可以执行以下操作:
my $source = $es->scrolled_search(
index => 'old_index',
search_type => 'scan',
scroll => '5m',
version => 1
);
$es->reindex(
source => $source,
dest_index => 'new_index'
);
Tire.index('old').reindex 'new', settings: { number_of_shards: 3 }
在。+1中查找更多信息,了解答案和出色的工作;)我要补充的是,另一种替代方法是从数据库的内容重新编制索引。如果您正在更改索引的内容,例如添加一个要索引的新字段,那么这种情况也很常见?