最近由于业务的需求,需要将elasticsearch中的索引数据迁移到另一个索引中,由于本人不会python,而且用的是windows,所以网上说的修改映射以及elasticdump来实现对我根本不现实,所以只能是苦逼的写java代码来实现,所幸网络发达,让我找到了出路! 下面看代码。
Settings settings = ImmutableSettings.settingsBuilder()
.put("cluster.name", "test").put("client.transport.sniff", true)
.put("client.transport.ping_timeout", "30s")
.put("client.transport.nodes_sampler_interval", "30s").build();
TransportClient client = new TransportClient(settings);
client.addTransportAddress(
new InetSocketTransportAddress("127.0.0.1", 9300));
List<Map<String, Object>> addList = new ArrayList<Map<String, Object>>();
//指定一个index和type
SearchRequestBuilder search = client.prepareSearch("indexName").setTy