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("删除成功");
}