12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- [[java-admin-indices-put-mapping]]
- ==== Put Mapping
- The PUT mapping API allows you to add a new type while creating an index:
- [source,java]
- --------------------------------------------------
- client.admin().indices().prepareCreate("twitter") <1>
- .addMapping("tweet", "{\n" + <2>
- " \"tweet\": {\n" +
- " \"properties\": {\n" +
- " \"message\": {\n" +
- " \"type\": \"string\"\n" +
- " }\n" +
- " }\n" +
- " }\n" +
- " }")
- .get();
- --------------------------------------------------
- <1> <<java-admin-indices-create-index,Creates an index>> called `twitter`
- <2> It also adds a `tweet` mapping type.
- The PUT mapping API also allows to add a new type to an existing index:
- [source,java]
- --------------------------------------------------
- client.admin().indices().preparePutMapping("twitter") <1>
- .setType("user") <2>
- .setSource("{\n" + <3>
- " \"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" + <4>
- " \"properties\": {\n" +
- " \"name\": {\n" +
- " \"type\": \"string\"\n" +
- " }\n" +
- " }\n" +
- " }\n" +
- "}")
- .get();
- --------------------------------------------------
- <1> Puts a mapping on existing index called `twitter`
- <2> Adds a `user` mapping type.
- <3> This `user` has a predefined type
- <4> type can be also provided within the source
- You can use the same API to update an existing mapping:
- [source,java]
- --------------------------------------------------
- client.admin().indices().preparePutMapping("twitter") <1>
- .setType("user") <2>
- .setSource("{\n" + <3>
- " \"properties\": {\n" +
- " \"user_name\": {\n" +
- " \"type\": \"string\"\n" +
- " }\n" +
- " }\n" +
- "}")
- .get();
- --------------------------------------------------
- <1> Puts a mapping on existing index called `twitter`
- <2> Updates the `user` mapping type.
- <3> This `user` has now a new field `user_name`
|