Atlas Search: Configurable Dynamic Indexing

XMLWordPrintableJSON

    • Type: New Feature
    • Resolution: Unresolved
    • Priority: Critical - P2
    • None
    • Component/s: Index Management
    • None
    • Needed

      Summary

      What is the problem or use case, what are we trying to achieve?

      Atlas Search 

      Required changes: Builder Support and Type Support

      Motivation

      Who is the affected end user?

      Atlas Search Developers

      How does this affect the end user?

      Developers won't be able to use the new Atlas Search features to programmatically manage their search indexes for their dynamic schema use case (e.g. multi-tenant).

      How likely is it that this problem or use case will occur?

      Main case for target use case.

      If the problem does occur, what are the consequences and how severe are they?

      Blocked to adopt Atlas Search / churn risk. Alternatively, they can use Admin API or JSON editor to configure their indexes, which is acceptable in the short term for testing but not for integrated testing.

      Is this issue urgent?

      Does this ticket have a required timeline? What is it?

      This feature is expected to complete rollout by Oct 6, 2025. We are targeting General Availability by Dec 6, where full Drivers support will be required.

      Is this ticket required by a downstream team?

      Compass

      Is this ticket only for tests?

      Functional impact

      Acceptance Criteria

      Support for new index configuration, highlighted below:

       

       

      {

        "mappings": {

      // dynamic can now be a boolean (existing behavior) OR an object. Note that `dynamic` may be nested within a field mapping definition, e.g. mappings.fields[x].dynamic

          "dynamic": boolean | {

            "typeSet": "firstConfiguration"

          }

        },

      // new top-level array of objects

        "typeSets": [

          {

            "name": "firstConfiguration",

            "types": [

              <data type configuration one>,

              <data type configuration two>

            ]

          },

          {

            "name": "secondConfiguration",

            "types": [

              <data type configuration one>,

              <data type configuration two>

            ]

          }

          ...

        ]

      }

            Assignee:
            Unassigned
            Reporter:
            Amy Jian
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: