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上运行一个分配在同一server的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();

在删除操作的很多其它信息,查看delete API docs。

线程操作

Delete API同意你设置线程来运行操作。这样实际姜运行API上运行的是同样的节点(API上运行一个分配在同一server的shard上)。

选择一个不同的线程上运行操作,或调用线程上运行它(注意,API仍然异步)。

默认情况下,
operationThreaded
 被设置为true这意味着操作是由不同的线程上运行以下是一个演示样例,设置为false:

DeleteResponse response = client.prepareDelete("twitter", "tweet", "1")
        .setOperationThreaded(false)
        .execute()
        .actionGet();

Elasticsearch的javaAPI之bulk

Bulk API能够用来在一个请求中,检索和删除多条数据,以下是一个样例:

import
static org.elasticsearch.common.xcontent.XContentFactory.*;

BulkRequestBuilder bulkRequest
= client.prepareBulk();

// 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",
new
Date())

                        .field("message",
"trying out Elasticsearch")

                    .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())
{

    // 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的更多相关文章

  1. ElasticSearch的javaAPI之Client

    翻译的原文:http://www.elasticsearch.org/guide/en/elasticsearch/client/java-api/current/client.html#node-c ...

  2. Elasticsearch的javaAPI之percolator

    Elasticsearch的javaAPI之percolator percolator同意一个在index中注冊queries,然后发送包括doc的请求,返回得到在index中注冊过的而且匹配doc的 ...

  3. elasticsearch的javaAPI之query

    elasticsearch的javaAPI之query API the Search API同意运行一个搜索查询,返回一个与查询匹配的结果(hits). 它能够在跨一个或多个index上运行, 或者一 ...

  4. Elasticsearch的javaAPI之query dsl-queries

    Elasticsearch的javaAPI之query dsl-queries 和rest query dsl一样,elasticsearch提供了一个完整的Java query dsl. 查询建造者 ...

  5. elasticsearch的javaAPI之index

    Index API 原文:http://www.elasticsearch.org/guide/en/elasticsearch/client/java-api/current/index_.html ...

  6. ElasticSearch(十一)批量CURD bulk

    1.bulk语法 POST /_bulk { "delete": { "_index": "test_index", "_type ...

  7. Elasticsearch增删改查 之 —— Delete删除

    删除文档也算是常用的操作了...如果把Elasticsearch当做一款普通的数据库,那么删除操作自然就很常用了.如果仅仅是全文检索,可能就不会太常用到删除. Delete API 删除API,可以根 ...

  8. java操作elasticsearch实现批量添加数据(bulk)

    java操作elasticsearch实现批量添加主要使用了bulk 代码如下: //bulk批量操作(批量添加) @Test public void test7() throws IOExcepti ...

  9. Elasticsearch的JavaAPI

    获取客户端对象 public class App { private TransportClient client; //获取客户端对象 @Before public void getClinet() ...

随机推荐

  1. Linux-Memcache和Redis常用命令

    Memcache:    支持类型: String     add, delete, set, replace, get, flush_all, stats, stats reset, stats i ...

  2. <转>字符编码笔记:ASCII,Unicode和UTF-8

    本文转自:http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html 今天中午,我突然想搞清楚Unicode和UTF-8之间 ...

  3. System V 共享内存区

    1.概述 系统调用mmap通过映射一个普通文件实现共享内存.System V 则是通过映射特殊文件系统shm中的文件实现进程间的共享内存通信.也就是说,每个共享内存区域对应特殊文件系统shm中的一个文 ...

  4. Python pow() 函数

    描述 pow() 方法返回 xy(x的y次方) 的值. 语法 以下是 math 模块 pow() 方法的语法: import math math.pow( x, y ) 内置的 pow() 方法 po ...

  5. js cookie库

    顺手摘下来 /** * @desc 设置Cookie * @param {String} name * @param {String} value * @param {Number} expires ...

  6. shell 批量查看job 配置

    如查看构建失败发送情况 进入job 目录,查找以DailyBuild开头的job的配置文件 grep '<hudson.plugins.emailext.plugins.trigger.Fail ...

  7. Andriod Studio中setText输出中文在AVD中显示乱码的解决方法

    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);      ...

  8. 分享八:特殊的mysql函数

    一:MYSQL自定义排序函数FIELD() MySQL可以通过field()函数自定义排序,格式:field(value,str1,str2,str3,str4),value与str1.str2.st ...

  9. git的全局变量

    git的全局变量可以用在命令行设置: git config --global user.name "litifeng" git config --global user.email ...

  10. 批处理学习笔记11 - del命令和rd命令

    这两个命令都是删除,所以放一块说了 del 删除文件 rd 删除目录(文件夹) ------------------------------------------------------------ ...