6.分布式搜索elasticsearch java API ------批量添加删除索引
elasticsearch支持批量添加或删除索引文档,java api里面就是通过构造BulkRequestBuilder,然后把批量的index/delete请求添加到BulkRequestBuilder里面,执行BulkRequestBuilder。下面是个例子:view plaincopy
[*]import static org.elasticsearch.common.xcontent.XContentFactory.*;
[*]
[*] BulkRequestBuilder bulkRequest = client.prepareBulk();
[*]
[*] bulkRequest.add(client.prepareIndex("twitter", "tweet", "1")
[*] .setSource(jsonBuilder()
[*] .startObject()
[*] .field("user", "kimchy")
[*] .field("postDate", new Date())
[*] .field("message", "trying out Elastic Search")
[*] .endObject()
[*] )
[*] );
[*]
[*] bulkRequest.add(client.prepareIndex("twitter", "tweet", "2")
[*] .setSource(jsonBuilder()
[*] .startObject()
[*] .field("user", "kimchy")
[*] .field("postDate", new Date())
[*] .field("message", "another post")
[*] .endObject()
[*] )
[*] );
[*]
[*] BulkResponse bulkResponse = bulkRequest.execute().actionGet();
[*] if (bulkResponse.hasFailures()) {
[*] //处理错误
[*] }
参考资料:http://www.elasticsearch.org/guide/reference/java-api/bulk.html
页:
[1]