Search Index Mapping
Parent: MongoDB Atlas Search · Published reference · snapshot 2026-10-24 · skill mongodb-cohort-ebff5b8ead9e
↓ Facts as markdownall context files
Source-anchored research for Search Index Mapping. Run status: COMPLETED.
These notes link each claim to its source. Some citations identify archived research reports that are no longer hosted on this site. A published reference means the content is available; it does not certify independent review or accuracy.Read the editorial policy and follow the sources before relying on a claim.
How it works
- Autocomplete is absent from the default dynamic type set but can be added through a custom typeSet. MongoDB recommends static autocomplete mappings because broad dynamic autocomplete increases index size, resource use, and scoring risks. (high confidence) (verified as of 2026-10-24) [source]
- Index only fields needed by the search workload when their names are known. MongoDB and Mongoose recommend static mappings to reduce unnecessary index storage and resource usage. (high confidence) [source]
- Dynamic indexing of arbitrary field names can cause mapping explosions, increasing mongot memory consumption and potentially crashing it. MongoDB recommends restricting mappings or restructuring keys into a tuple-like schema. (low confidence) [source]
Problems, failure modes and limitations
- Static nested-field mappings require definitions for each parent; dotted field names cannot replace that hierarchy. (low confidence) [source]
- With mappings.dynamic:true, the default type set applies. A named custom typeSet can change dynamically indexed types; document, embeddedDocuments, vector, and deprecated field types are excluded from custom type sets. (low confidence) (verified as of 2026-10-14) [source]
Comparisons and alternatives
- MongoDB recommends limiting dynamic mappings to changing or unknown fields inside a document rather than enabling them indiscriminately at the root. (low confidence) [source]
- TCGplayer’s benchmark repository keeps collection and Search mapping definitions in src/mongo_bench/resources/bench_collections.json and directs test plans to reference that file or its commit and path. Its index named bench_search_dynamic_all actually uses dynamic:false, showing why benchmark interpretation must inspect definitions rather than names. (low confidence) [source]
Facts and statements
- Dynamic mappings automatically index supported fields, while mappings.dynamic:false with mappings.fields selects explicit fields and search types. (high confidence) [source]
- Static definitions override dynamic treatment per field. To index one field as both string and autocomplete, explicitly include both types in its static mapping array. (high confidence) [source]
- Dynamic indexing can include unnecessary fields and increase storage use. Static mappings can reduce the index footprint by restricting indexed fields; a universal query-latency improvement is not established. (high confidence) [source]
- The documented configurable dynamic syntax permits mappings.dynamic to reference a named typeSet, whose field-type configurations are defined in the top-level typeSets array. (high confidence) (verified as of 2026-10-14) [source]
- A static field definition can carry analyzer settings independently for each string field; Mongoose demonstrates lucene.standard, lucene.english, and lucene.keyword configurations inside mappings.fields. (low confidence) [source]
- Mongoose lets applications declare mapping JSON with schema.searchIndex() and create declared search indexes with Model.createSearchIndexes(); its examples include static typed fields and field-specific analyzers. (low confidence) [source]
- Omitting mappings.dynamic defaults to false in the mapping definition, even though MongoDB performance guidance describes the default index-creation configuration as dynamic. Set the value explicitly. (medium confidence) [source]
- Pureinsights describes MAPT experiments that supply mappings, representative data, and queries, then measure indexing and query performance under configurable concurrency. The tool was developed with MongoDB; this is methodology, not independent proof of a static-mapping speedup. (low confidence) [source]
- A Reddit author reported unchanged Artillery load-test results after replacing a smaller static mapping with a dynamic mapping on an M0 cluster. This uncontrolled observation does not establish a general latency relationship. (low confidence) [source]
- Percona Search documents dynamic mappings, including newly added supported fields, and explicit static mappings for its own MongoDB Search implementation. This corroborates mapping concepts across implementations, not a benchmark advantage. (low confidence) [source]
Children
- Configurable dynamic type sets (frontier)
- Multi-type field mappings (frontier)
- Nested document field mappings (frontier)
- Analyzer selection for Search mappings (frontier)
- Dynamic type sets (frontier)
- Static mapping overrides (frontier)
- Mapping explosions (frontier)
Frontier under this node: Analyzer selection for Search mappings, Configurable dynamic type sets, Dynamic type sets, Mapping explosions, Multi-type field mappings, Nested document field mappings, Static mapping overrides