本文整理了Java中org.elasticsearch.client.Client.search()
方法的一些代码示例,展示了Client.search()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Client.search()
方法的具体详情如下:
包路径:org.elasticsearch.client.Client
类名称:Client
方法名:search
[英]Search across one or more indices and one or more types with a query.
[中]使用查询搜索一个或多个索引和一个或多个类型。
代码示例来源:origin: NLPchina/elasticsearch-sql
/**
* Execute the ActionRequest and returns the REST response using the channel.
*/
public void execute() throws Exception {
ActionRequest request = requestBuilder.request();
//todo: maby change to instanceof multi?
if(requestBuilder instanceof JoinRequestBuilder){
executeJoinRequestAndSendResponse();
}
else if (request instanceof SearchRequest) {
client.search((SearchRequest) request, new RestStatusToXContentListener<SearchResponse>(channel));
} else if (requestBuilder instanceof SqlElasticDeleteByQueryRequestBuilder) {
throw new UnsupportedOperationException("currently not support delete on elastic 2.0.0");
}
else if(request instanceof GetIndexRequest) {
this.requestBuilder.getBuilder().execute( new GetIndexRequestRestListener(channel, (GetIndexRequest) request));
}
else {
throw new Exception(String.format("Unsupported ActionRequest provided: %s", request.getClass().getName()));
}
}
代码示例来源:origin: NLPchina/elasticsearch-sql
client.search((SearchRequest) request, new RestStatusToXContentListener<>(channel));
} else if (request instanceof DeleteByQueryRequest) {
代码示例来源:origin: NLPchina/elasticsearch-sql
@Override
public String execute(Client client, Map<String, String> params, QueryAction queryAction) throws Exception {
SqlElasticRequestBuilder requestBuilder = queryAction.explain();
ActionRequest request = requestBuilder.request();
if (requestBuilder instanceof JoinRequestBuilder) {
ElasticJoinExecutor executor = ElasticJoinExecutor.createJoinExecutor(client, requestBuilder);
executor.run();
return ElasticUtils.hitsAsStringResult(executor.getHits(), new MetaSearchResult());
} else if (requestBuilder instanceof MultiQueryRequestBuilder) {
ElasticHitsExecutor executor = MultiRequestExecutorFactory.createExecutor(client, (MultiQueryRequestBuilder) requestBuilder);
executor.run();
return ElasticUtils.hitsAsStringResult(executor.getHits(), new MetaSearchResult());
} else if (request instanceof SearchRequest) {
ActionFuture<SearchResponse> future = client.search((SearchRequest) request);
SearchResponse response = future.actionGet();
return response.toString();
} else if (request instanceof DeleteByQueryRequest) {
return requestBuilder.get().toString();
} else if (request instanceof GetIndexRequest) {
return requestBuilder.getBuilder().execute().actionGet().toString();
} else {
throw new Exception(String.format("Unsupported ActionRequest provided: %s", request.getClass().getName()));
}
}
代码示例来源:origin: komoot/photon
public long count() {
return this.esClient.search(Requests.searchRequest(indexName).types(indexType).source(SearchSourceBuilder.searchSource().size(0))).actionGet().getHits()
.getTotalHits();
}
}
代码示例来源:origin: javanna/elasticshell
@Override
protected ActionFuture<SearchResponse> doExecute(SearchRequest request) {
return client.search(request);
}
代码示例来源:origin: mbok/logsniffer
@Override
public SearchResponse execute(final Client client) {
return client.search(searchRequest).actionGet();
}
});
代码示例来源:origin: org.nuxeo.elasticsearch/nuxeo-elasticsearch-core
@Override
public SearchResponse search(SearchRequest request) {
return client.search(request).actionGet();
}
代码示例来源:origin: com.floragunn/search-guard
protected void doGet(final GetRequest request, final ActionListener listener, final Client client) {
client.search(toSearchRequest(request), new DelegatingActionListener<SearchResponse, GetResponse>(listener) {
@Override
public GetResponse getDelegatedFromInstigator(final SearchResponse searchResponse) {
if (searchResponse.getHits().getTotalHits() <= 0) {
return new GetResponse(new GetResult(request.index(), request.type(), request.id(), request.version(), false, null,
null));
} else if (searchResponse.getHits().getTotalHits() > 1) {
throw new RuntimeException("cannot happen");
} else {
final SearchHit sh = searchResponse.getHits().getHits()[0];
return new GetResponse(new GetResult(sh.index(), sh.type(), sh.id(), sh.version(), true, sh.getSourceRef(), null));
}
}
});
}
代码示例来源:origin: medcl/elasticsearch-carrot2
protected void doInnerExecute(ActionListener<SearchResponse> listener) {
if (sourceBuilder != null) {
request.source( sourceBuilder());
}
((Client) client).search(request, listener);
}
代码示例来源:origin: SeaseLtd/rated-ranking-evaluator
@Override
public QueryOrSearchResponse executeQuery(final String indexName, final String query, final String[] fields, final int maxRows) {
try {
final SearchResponse qresponse = proxy.search(buildSearchRequest(indexName, query, fields, maxRows)).actionGet();
return convertResponse(qresponse);
} catch (final ElasticsearchException e) {
LOGGER.error("Caught ElasticsearchException :: " + e.getMessage());
return new QueryOrSearchResponse(0, Collections.emptyList());
} catch (final IOException exception) {
throw new RuntimeException(exception);
}
}
代码示例来源:origin: harbby/presto-connectors
@Override
public void handleRequest(final RestRequest request, final RestChannel channel, final Client client) {
SearchRequest searchRequest = new SearchRequest();
RestSearchAction.parseSearchRequest(searchRequest, request, parseFieldMatcher, null);
client.search(searchRequest, new RestStatusToXContentListener<SearchResponse>(channel));
}
代码示例来源:origin: org.nlpcn/elasticsearch-sql
/**
* Execute the ActionRequest and returns the REST response using the channel.
*/
public void execute() throws Exception {
ActionRequest request = requestBuilder.request();
//todo: maby change to instanceof multi?
if(requestBuilder instanceof JoinRequestBuilder){
executeJoinRequestAndSendResponse();
}
else if (request instanceof SearchRequest) {
client.search((SearchRequest) request, new RestStatusToXContentListener<SearchResponse>(channel));
} else if (requestBuilder instanceof SqlElasticDeleteByQueryRequestBuilder) {
throw new UnsupportedOperationException("currently not support delete on elastic 2.0.0");
}
else if(request instanceof GetIndexRequest) {
this.requestBuilder.getBuilder().execute( new GetIndexRequestRestListener(channel, (GetIndexRequest) request));
}
else {
throw new Exception(String.format("Unsupported ActionRequest provided: %s", request.getClass().getName()));
}
}
代码示例来源:origin: org.codelibs/elasticsearch-dynarank
@Override
public void onResponse(final Response response) {
try {
searchResponseListener.onResponse(response);
} catch (final RetrySearchException e) {
threadPool.getThreadContext().putHeader(DYNARANK_RERANK_ENABLE, Boolean.FALSE.toString());
source.size(size);
source.from(from);
source.toString();
final SearchSourceBuilder newSource = e.rewrite(source);
if (newSource == null) {
throw new ElasticsearchException("Failed to rewrite source: " + source);
}
if (logger.isDebugEnabled()) {
logger.debug("Original Query: \n{}\nRewrited Query: \n{}", source, newSource);
}
request.source(newSource);
@SuppressWarnings("unchecked")
final ActionListener<SearchResponse> actionListener = (ActionListener<SearchResponse>) listener;
client.search(request, actionListener);
}
}
代码示例来源:origin: ezbz/projectx
@Override
public ActionFuture<SearchResponse> execute(final Client client) {
final SearchRequest request = Requests.searchRequest().searchType(
SearchType.DFS_QUERY_AND_FETCH);
final SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
sourceBuilder.query(query);
sourceBuilder.size(maxResults);
request.source(sourceBuilder);
return client.search(request);
}
});
代码示例来源:origin: org.dashbuilder/dashbuilder-dataset-elasticsearch
public static void testDocumentsCount( String index, String type, long count ) throws Exception {
SearchRequest request = new SearchRequestBuilder( client, SearchAction.INSTANCE )
.setIndices( index )
.setTypes( type)
.request();
SearchResponse response = client.search( request ).actionGet();
long c = response.getHits().totalHits();
assert count == c;
}
代码示例来源:origin: harbby/presto-connectors
@Override
public void doRequest(final RestRequest request, final RestChannel channel, final Client client) {
String[] indices = Strings.splitStringByCommaToArray(request.param("index"));
CountRequest countRequest = new CountRequest(indices);
String source = request.param("source");
if (source != null) {
countRequest.source(source);
} else {
QuerySourceBuilder querySourceBuilder = RestActions.parseQuerySource(request);
if (querySourceBuilder != null) {
countRequest.source(querySourceBuilder);
}
}
client.search(countRequest.toSearchRequest(), new RestResponseListener<SearchResponse>(channel) {
@Override
public RestResponse buildResponse(SearchResponse countResponse) throws Exception {
return RestTable.buildResponse(buildTable(request, countResponse), channel);
}
});
}
代码示例来源:origin: dstl/baleen
@SuppressWarnings("unchecked")
@Test
public void testMetadata() throws Exception {
createMetadataDocument();
ae.process(jCas);
elasticsearch.flush(BALEEN_INDEX);
assertEquals(new Long(1), getCount());
SearchHit result =
elasticsearch.client().search(new SearchRequest()).actionGet().getHits().getHits()[0];
List<String> pids = (List<String>) result.getSource().get("publishedId");
assertEquals("id_1", pids.get(0));
assertEquals("id_2", pids.get(1));
Map<String, Object> metadataMap = (Map<String, Object>) result.getSource().get("metadata");
assertEquals("D3", metadataMap.get("sourceAndInformationGrading"));
assertEquals("test_value", metadataMap.get("test_key"));
assertEquals("Test Title", metadataMap.get("documentTitle"));
assertEquals("ENG|WAL|SCO", metadataMap.get("countryInfo"));
}
代码示例来源:origin: dstl/baleen
@SuppressWarnings("unchecked")
@Test
public void testNoEntities() throws Exception {
long timestamp = createNoEntitiesDocument();
ae.process(jCas);
elasticsearch.flush(BALEEN_INDEX);
assertEquals(new Long(1), getCount());
SearchHit result =
elasticsearch.client().search(new SearchRequest()).actionGet().getHits().getHits()[0];
assertEquals("Hello World", result.getSource().get("content"));
assertEquals("en", result.getSource().get("language"));
assertEquals(timestamp, result.getSource().get("dateAccessed"));
assertEquals("test/no_entities", result.getSource().get("sourceUri"));
assertEquals("test", result.getSource().get(DOC_TYPE));
assertEquals("OFFICIAL", result.getSource().get("classification"));
List<String> rels = (List<String>) result.getSource().get("releasability");
assertEquals(3, rels.size());
assertTrue(rels.contains("ENG"));
List<String> cavs = (List<String>) result.getSource().get("caveats");
assertEquals(2, cavs.size());
assertTrue(cavs.contains("TEST_A"));
}
代码示例来源:origin: dstl/baleen
@Test
public void testReindexEntities() throws Exception {
createEntitiesDocument();
ae.process(jCas);
ae.process(jCas);
// Change the last document so we can check its been updated
getDocumentAnnotation(jCas).setDocumentClassification("TEST");
ae.process(jCas);
elasticsearch.flush(BALEEN_INDEX);
assertEquals(new Long(1), getCount());
SearchHit result =
elasticsearch.client().search(new SearchRequest()).actionGet().getHits().getHits()[0];
// This checks the last document is tone we are getting
assertEquals("TEST", result.getSource().get("classification"));
}
代码示例来源:origin: dstl/baleen
@Test
public void testNestedEntities() throws Exception {
createEntitiesDocument();
ae.process(jCas);
createEntitiesDocument2();
ae.process(jCas);
elasticsearch.flush(BALEEN_INDEX);
assertEquals(new Long(2), getCount());
SearchRequestBuilder srb =
elasticsearch
.client()
.prepareSearch(BALEEN_INDEX)
.setQuery(
QueryBuilders.nestedQuery(
"entities",
QueryBuilders.boolQuery()
.must(QueryBuilders.matchQuery("entities.type", "Location"))
.must(QueryBuilders.matchQuery("entities.value", "London")),
ScoreMode.Avg));
SearchHits results = elasticsearch.client().search(srb.request()).actionGet().getHits();
assertEquals(1, results.getTotalHits());
}
内容来源于网络,如有侵权,请联系作者删除!