在ElasticSearch中重新索引索引以更改分片数

时间:2012-03-30 11:15:00

标签: indexing elasticsearch

我需要更改索引中的分片数量。索引非常大,在我对结果满意之前,为了测试目的,我可能需要更改配置10-15次。有没有开箱即用的工具这种功能?或者最简单的方法是什么?

1 个答案:

答案 0 :(得分:7)

PerlRuby客户端都直接支持重建索引。

在Perl中,你会这样做:

my $source = $es->scrolled_search(
    index       => 'old_index',
    search_type => 'scan',
    scroll      => '5m',
    version     => 1
);

$es->reindex(
    source      => $source,
    dest_index  => 'new_index'
);

post by Clinton Gormley

中查找更多信息

在Ruby中,你会这样做:

Tire.index('old').reindex 'new', settings: { number_of_shards: 3 }

relevant Tire commit

中查找更多信息