首页 > 代码库 > Elasticsearch的javaAPI之get,delete,bulk
Elasticsearch的javaAPI之get,delete,bulk
Elsasticsearch的javaAPI之get
get API允许根据其id获得指定index中的基于json document。下面的例子得到一个JSON document(index为twitter,type为tweet,id为价值1)
GetResponse response = client.prepareGet("twitter", "tweet", "1").execute().actionGet();
在get操作的更多信息,可以查看REST get docs
线程操作
Get API允许你设置线程来执行操作,这样实际将执行API上执行的是相同的节点(API上执行一个分配在同一服务器的shard上)。
选择一个不同的线程上执行操作,或调用线程上执行它(注意,API仍然异步)。 默认情况下,
operationThreaded
被设置为true
,
这意味着操作是由不同的线程上执行下面是一个示例,设置为false:GetResponse response = client.prepareGet("twitter", "tweet", "1").setOperationThreaded(false).execute().actionGet();
Elsasticsearch的javaAPI之delete
delete API允许根据其id删除指定index中的json document。下面的例子:删除一个JSON document(index为twitter,type为tweet,id为价值1)
DeleteResponse response = client.prepareDelete("twitter", "tweet", "1").execute().actionGet();
BulkRequestBuilder bulkRequest= client.prepareBulk();在删除操作的更多信息,查看delete API docs。
线程操作
Delete API允许你设置线程来执行操作,这样实际姜执行API上执行的是相同的节点(API上执行一个分配在同一服务器的shard上)。
选择一个不同的线程上执行操作,或调用线程上执行它(注意,API仍然异步)。 默认情况下,
operationThreaded
被设置为true
,
这意味着操作是由不同的线程上执行下面是一个示例,设置为false:DeleteResponse response = client.prepareDelete("twitter", "tweet", "1").setOperationThreaded(false).execute().actionGet();
Elasticsearch的javaAPI之bulk
Bulk API可以用来在一个请求中,检索和删除多条数据,下面是一个例子:
importstatic org.elasticsearch.common.xcontent.XContentFactory.*;
bulkRequest.add(client.prepareIndex("twitter","tweet","2")
// either use client#prepare, or use Requests# to directly build index/delete requests
bulkRequest.add(client.prepareIndex("twitter","tweet","1")
.setSource(jsonBuilder()
.startObject()
.field("user","kimchy")
.field("postDate",newDate())
.field("message","trying out Elasticsearch")
.endObject()
)
);
BulkResponse bulkResponse= bulkRequest.execute().actionGet();
.setSource(jsonBuilder()
.startObject()
.field("user","kimchy")
.field("postDate",newDate())
.field("message","another post")
.endObject()
)
);
if(bulkResponse.hasFailures()){
// process failures by iterating through each bulk response item
}
原文http://www.elasticsearch.org/guide/en/elasticsearch/client/java-api/current/get.html
http://www.elasticsearch.org/guide/en/elasticsearch/client/java-api/current/delete.html
http://www.elasticsearch.org/guide/en/elasticsearch/client/java-api/current/bulk.html翻译欠佳,希望不会对大家造成误导
Elasticsearch的javaAPI之get,delete,bulk