Indices Administration
editIndices Administration
editTo 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 Index
editUsing an IndicesAdminClient, you can create an index with all default settings and no mapping:
client.admin().indices().prepareCreate("twitter").get();
Index Settings
editEach index created can have specific settings associated with it.
Put Mapping
editThe 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:
Refresh
editThe refresh API allows to explicitly refresh one or more index:
Get Settings
editThe 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 Settings
editYou can change index settings by calling: