summaryrefslogtreecommitdiff
path: root/docs/reference/index-modules/mapper.asciidoc
diff options
context:
space:
mode:
Diffstat (limited to 'docs/reference/index-modules/mapper.asciidoc')
-rw-r--r--docs/reference/index-modules/mapper.asciidoc39
1 files changed, 39 insertions, 0 deletions
diff --git a/docs/reference/index-modules/mapper.asciidoc b/docs/reference/index-modules/mapper.asciidoc
new file mode 100644
index 0000000..1728969
--- /dev/null
+++ b/docs/reference/index-modules/mapper.asciidoc
@@ -0,0 +1,39 @@
+[[index-modules-mapper]]
+== Mapper
+
+The mapper module acts as a registry for the type mapping definitions
+added to an index either when creating it or by using the put mapping
+api. It also handles the dynamic mapping support for types that have no
+explicit mappings pre defined. For more information about mapping
+definitions, check out the <<mapping,mapping section>>.
+
+[float]
+=== Dynamic / Default Mappings
+
+Dynamic mappings allow to automatically apply generic mapping definition
+to types that do not have mapping pre defined or applied to new mapping
+definitions (overridden). This is mainly done thanks to the fact that
+the `object` type and namely the root `object` type allow for schema
+less dynamic addition of unmapped fields.
+
+The default mapping definition is plain mapping definition that is
+embedded within Elasticsearch:
+
+[source,js]
+--------------------------------------------------
+{
+ _default_ : {
+ }
+}
+--------------------------------------------------
+
+Pretty short, no? Basically, everything is defaulted, especially the
+dynamic nature of the root object mapping. The default mapping
+definition can be overridden in several manners. The simplest manner is
+to simply define a file called `default-mapping.json` and placed it
+under the `config` directory (which can be configured to exist in a
+different location). It can also be explicitly set using the
+`index.mapper.default_mapping_location` setting.
+
+Dynamic creation of mappings for unmapped types can be completely
+disabled by setting `index.mapper.dynamic` to `false`.