Atlas Search
156 results found
-
Allow indexing of only part of a collection
Would be great to be able to create an Atlas Search index that only indexes part of a collection (like partialFilterExpression for a regular index). This would be valuable in situations where a collection is quite large (which would create a lot of unnecessary overhead) but only a small fraction of it needs to be searchable.
2 votes -
Mutli-select faceting / facets should not affect their own filter field
I want to build multi-select facet without having to run separate queries to calculate bucket counts for each active filter. Described in detail here: https://yonik.com/multi-select-faceting/
9 votes -
wildcard paths in index specifications
It would make index specification easier in some cases if wildcards were possible in the paths. Yes we have dynamic indexing, but to keep the index size minimal and to be more flexible I want to index only the fields I really need. Consider the following example:
Example document:
{
foo: {
de: {
field1: 'bar',
field2: 'bar'
},
en: {
field1: 'bar',
field2: 'bar'
},
fr: {
field1: 'bar',
field2: 'bar'
},
}
}Index specification:
{
"mappings": {
"dynamic": false,
"fields": {
"foo": {
"type": "document",
"dynamic": false,
"fields": {
"$**": {
"type": "document",
"dynamic": false,
"fields": {…1 vote -
Ability to randomize score
I would like to be able to add randomness to the search results' score.
1 vote -
Ability to return all documents in a collection
I need to return all documents in a collection while boosting certain results which match my search criteria.
1 vote -
Ability to exclude documents matching a certain criteria from index
We don't do physical deletion of documents, but a logical one, flagging them by setting a value for a
deleted_at
field.We would like an option to exclude documents where that field exists and is not null from the index, because they will never be returned and are only consuming space of the index.
Currently we use a
mustNot
condition to exclude them, but of course they are still being indexed.The ideal would be to be able to define the exclusion criteria in the index definition.
1 vote -
Multiple Capture Groups in RegEx Tokenizer
Currently the RegEx tokenizer only supports to either create a token from each match or for one capture group per match. This makes it impossible to reuse parts of the text for multiple tokens, for example when you want to tokenize "13.3" into "13" as well as "13.3" (our use case is searching products where we want to find a 13.3" device by searching for 13" as well as 13.3").
1 vote -
Allow faceting on boolean fields
Right now you can only facet on string, number, date fields.
https://www.mongodb.com/docs/atlas/atlas-search/facet/#facet-definitionI would like to also be able to facet on boolean fields.
11 votes -
Duplicate search index
I want to be able to easily duplicate a search index in the Atlas UI.
1 vote -
Allow retrieval of individual score from embedded document search
When using the emeddedDocuments operator to search you get a score per document, but not per embedded document. The aggregated score is either min/max/sum/mean but what I really need is the individual score from the embedded documents in order to further filter out the best matches.
2 votes -
search
Allow scoring of individual embeddedDocument searches or allow $unwind phase before $search to enable fuzzy searching for specific embeddedDocument in array of embedded documents
1 vote -
add a setting to ignore the corpus term frequency for score calculation
indexOption:docs omits per document frequencies, but it still uses the corpus frequency.
it would be good to have a setting to ignore the corpus frequency as well
3 votes -
Atlas full text search should support searching all field types
Atlas full text search should support searching all fields types including text, dates, numbers and booleans.
Atlas full text search at present supports searching in text values only. e.g. Searching for "2022" will not pick up documents that contain 2022 in the number fields.
The functionality in it's current form does not have any way of searching for a given string value (which can be numeric, boolean or part of a date).
3 votes -
.NET Driver
It would be great if the .NET driver would support $search along with all the associated operators.
1 vote -
Support for OR Conditions
We need support for matching for one condition out of several. This is an important usecase for my requirements.
e.g. $or: [{ "airlines": "United" }, { "ticket_price": { $lte: 600.00 } }]
Thanks!
1 vote -
Grouping in $search
Add grouping capability to search so that it can be as performant as the search itself.
A separate group stage is not performant at all and is unusable.
3 votes -
Provide features for array comparisons
It would be very helpful if we can lookup documents that have certain array fields that match the provided array in the query. Exact match, Any match etc should be supported. All data types should be supported.
e.g { text: { path: "city", query: ["New York", "Los Angeles", "Kansas"] } } should return all documents that have the city as ["New York", "Los Angeles", "Kansas"].
1 vote -
Filtered Indexes
Provide capability to create filtered indexes. This would allow creating tenant-specific indexes in a multi-tenant database.
While the current implementation does support this feature in a way, it requires manual maintenance of such indexes as there is an implicit assumption that each tenant would have the same fields.
Our core requirement is that each tenant can have their own set of fields. Filtered indexes would help reduce the size, hence requiring fewer system resources and possibly helping the database perform better.
1 vote -
Atlas Search vs find/match
Atlas Search is currently quite rigid and is not as awesome as find/match.
find/match supports a variety of operators that allow looking up documents in numerous ways and is meeting our requirements to be able to query using filters such as:
in, nin, eq, neq, gte, lte, all, any, gt, lt, size
These operators work with find/match for any and all data types including arrays. With arrays, find/match even does an exact match comparison which is one of our requirements.It would be great if we can combine the speed of Atlas Search with find/match features
2 votes -
Support ObjectID as a datatype for search facets
I'm really interested in using search facets to boost search performance, but one of the fields that I want to filter by is an ObjectId.
I believe the only supported facet types are [date, numberFacet, stringFacet].
19 votes
- Don't see your idea?