WARNING: Version 1.4 of Elasticsearch has passed its EOL date.
This documentation is no longer being maintained and may be removed. If you are running this version, we strongly advise you to upgrade. For the latest information, see the current release documentation.
Array Type
editArray Type
editJSON documents allow to define an array (list) of fields or objects. Mapping array types could not be simpler since arrays gets automatically detected and mapping them can be done either with Core Types or Object Type mappings. For example, the following JSON defines several arrays:
{ "tweet" : { "message" : "some arrays in this tweet...", "tags" : ["elasticsearch", "wow"], "lists" : [ { "name" : "prog_list", "description" : "programming list" }, { "name" : "cool_list", "description" : "cool stuff list" } ] } }
The above JSON has the tags
property defining a list of a simple
string
type, and the lists
property is an object
type array. Here
is a sample explicit mapping:
{ "tweet" : { "properties" : { "message" : {"type" : "string"}, "tags" : {"type" : "string", "index_name" : "tag"}, "lists" : { "properties" : { "name" : {"type" : "string"}, "description" : {"type" : "string"} } } } } }
The fact that array types are automatically supported can be shown by the fact that the following JSON document is perfectly fine:
{ "tweet" : { "message" : "some arrays in this tweet...", "tags" : "elasticsearch", "lists" : { "name" : "prog_list", "description" : "programming list" } } }