-
Book Overview & Buying
-
Table Of Contents
Elasticsearch 8.x Cookbook - Fifth Edition
By :
Sometimes, when we are working with our mapping, we may need to store some additional data to be used for display purposes, ORM facilities, permissions, or simply to track them in the mapping.
Elasticsearch allows you to store every kind of JSON data you want in the mapping with the special _meta field.
You will need an up-and-running Elasticsearch installation, as we described in the Downloading and installing Elasticsearch recipe of Chapter 1, Getting Started.
The _meta mapping field can be populated with any data we want in JSON format, like so:
{ "_meta": {
"attr1": ["value1", "value2"],
"attr2": { "attr3": "value3" }
} }
When Elasticsearch processes a new mapping and finds a _meta field, it stores it as-is in the global mapping status and propagates the information to all the cluster nodes. The content of the _meta files is only checked to ensure it's a valid JSON format. Its content is not taken into consideration by Elasticsearch. You can populate it with everything you need to be in JSON format.
_meta is only used for storing purposes; it's not indexed and searchable. It can be used to enrich your mapping with custom information that can be used by your applications.
It can be used for the following reasons:
{"name": "Address", "description": "This entity store address information"}{"class": "com.company.package.AwesomeClass", "properties" : { "address":{"class": "com.company.package.Address"}} }{"read":["user1", "user2"], "write":["user1"]}icon filename, which is used to display the type):{"icon":"fa fa-alert" }{"fragment":"<div><h1>$name</h1><p>$description</p></div>" }