Indices Administrationedit
To access indices Java API, you need to call indices()
method from an AdminClient
:
IndicesAdminClient indicesAdminClient = client.admin().indices();

In the rest of this guide, we will use client.admin().indices()
.
Create Indexedit
Using an IndicesAdminClient
, you can create an index with all default settings and no mapping:
client.admin().indices().prepareCreate("twitter").get();
Index Settingsedit
Each index created can have specific settings associated with it.
Put Mappingedit
The PUT mapping API allows you to add a new type while creating an index:
client.admin().indices().prepareCreate("twitter").addMapping("tweet", "{\n" +
" \"tweet\": {\n" + " \"properties\": {\n" + " \"message\": {\n" + " \"type\": \"string\"\n" + " }\n" + " }\n" + " }\n" + " }") .get();
Creates an index called | |
It also adds a |
The PUT mapping API also allows to add a new type to an existing index:
client.admin().indices().preparePutMapping("twitter").setType("user")
.setSource("{\n" +
" \"properties\": {\n" + " \"name\": {\n" + " \"type\": \"string\"\n" + " }\n" + " }\n" + "}") .get(); // You can also provide the type in the source document client.admin().indices().preparePutMapping("twitter") .setType("user") .setSource("{\n" + " \"user\":{\n" +
" \"properties\": {\n" + " \"name\": {\n" + " \"type\": \"string\"\n" + " }\n" + " }\n" + " }\n" + "}") .get();
Puts a mapping on existing index called | |
Adds a | |
This | |
type can be also provided within the source |
You can use the same API to update an existing mapping:
Refreshedit
The refresh API allows to explicitly refresh one or more index:
Get Settingsedit
The get settings API allows to retrieve settings of index/indices:
GetSettingsResponse response = client.admin().indices() .prepareGetSettings("company", "employee").get();for (ObjectObjectCursor<String, Settings> cursor : response.getIndexToSettings()) {
String index = cursor.key;
Settings settings = cursor.value;
Integer shards = settings.getAsInt("index.number_of_shards", null);
Integer replicas = settings.getAsInt("index.number_of_replicas", null);
}
Update Indices Settingsedit
You can change index settings by calling: