ES6.1.3常用java操作

1.查询所有index名称

TransportClient client = EsOperation.getInstance(); 
		
//获取所有索引
ActionFuture<IndicesStatsResponse> isr = client.admin().indices().stats(new IndicesStatsRequest().all());
Set<String> set = isr.actionGet().getIndices().keySet();
for(String s:set)
{
	System.out.println(s);
}

2.创建index,并配置mapping

TransportClient client = EsOperation.getInstance();
String mapping_str = "{"+
		        "\"properties\":{"+
					"\"host_ip\":{"+
						"\"type\":\"ip\","+
						"\"fields\":{"+
							"\"keyword\":{"+
								"\"type\":\"keyword\","+
								"\"ignore_above\":256}}},"+
						"\"time\":{"+
							"\"type\":\"date\"},"+
						}}";
client.admin().indices().prepareCreate(indexName).execute().actionGet();
PutMappingRequest putMappingRequest = Requests.putMappingRequest(indexName).type("doc").source(mapping_str , XContentType.JSON);
client.admin().indices().putMapping(putMappingRequest).actionGet();

3.批量插入

TransportClient client = EsOperation.getInstance(); 
String log = "{" +
		        "\"host_ip\":\"10.43.28.12\"," +
		        "\"time\":\"2013-04-30T12:00:00\"" +
		        "}";
BulkRequestBuilder request = client.prepareBulk();
IndexRequest indexReq = new IndexRequest(indexName);
indexReq.type("logs");
indexReq.source(log, XContentType.JSON);
request.add(indexReq);//添加数据
BulkResponse bulkResponse = request.execute().actionGet();
if(bulkResponse.hasFailures()){
    System.out.println("error: " + bulkResponse.buildFailureMessage());
}

4.删除index

TransportClient client = EsOperation.getInstance();
DeleteIndexResponse dResponse = client.admin().indices().prepareDelete(indexName).execute().actionGet();
if(dResponse.isAcknowledged())
{
	System.out.println("删除成功");
}

你可能感兴趣的:(数据库)