Database
321 results found
-
$sort should allow 0 as argument meaning "no sort"
The $sort operator and aggregation stage should allow 0 (possibly also null) as an argument for the field sort order, meaning, "Don't sort."
This allows a variable to be passed in that can conditionally skip the sort operation, in addition to the present specification, in which a variable can only choose ascending or descending sort.1 vote -
Easier way to troubleshoot storage use size discrepancy across nodes in the same replica set
While initial sync may potentially help on this topic, it would be great if the product has any easier way to identify the cause of significantly different storage use size (so to give a better confidence if initial sync is going to help).
1 vote -
Query comment or metadata in change stream event
Our application is using change stream events to publish changes as kafka events for our customers. Sometimes we are in need to decide if an event should be send by kafka or not. Right at the moment the only way would be to decide based on additional fields on our document.
It would be nice if there is an opportunity to include query comments to change stream events or some kind of meta data to get some info about the origin of the operation. This would be useful, to decide without any need to add additional fields to our data…
2 votes -
Feature to perform Machine Learning predictive analysis and classification in MongoDB
I want to bring the machine learning compute and predictive analysis into MongoDB atlas. Instead of ETL my data out of Atlas to achieve this, I will reduce my architectural complexity by having an aggregation operator that does this on my documents stored in Atlas.
1 vote -
Export Backup Snapshots to GCP Bucket
As Atlas user, i want to Export Backup Snapshots to a GCP bucket because i don't have an AWS subscription.
2 votes -
Parallelize unionWith
Today $unionWith aggregation command is executed sequentially. EG first we query collection A and then collection B and then the union occurs.
The process should be parallelized so the query part will run in parallel while the union will be done as best effort tree merge try to speed up the overall Elapsed Time of the query1 vote -
Scheduled stepdown for smoother primary election
Stepdown is a great tool that allows us to keep clusters operating smoothly. We use it for example when we want to perform some maintenance work on the host where the primary is currently running, to perform a rolling upgrade, and in many other cases we need to switch the primary to another node.
While usually electing a new primary is fast enough, for clusters with very high write traffic, it sometimes unfortunately leads to write errors on the application side. The reason is that drivers need to disconnect from the previous primary and connect to the new one, and…
1 vote -
Introduce a new field BucketLifeSpan Optional along with Granularity
An enhancement to MongoDB's management of time series collections could involve the introduction of a BucketLifeSpan attribute, in addition to the existing Granularity setting. This new, optional attribute would automate the duration a bucket can remain open, with the condition that Granularity should be less than or equal to BucketLifeSpan.
Consider a use case involving a time series collection for tracking data from 70,000 socket devices daily, with DeviceId as the metafield. Assuming data is organized into daily collections and granularity is set to minutes to optimally fill the buckets unless they reach their size limit.
For a collection named…
3 votes -
ARM support
Can we support ARM packages for Debian 11. They are required for bitnami to add ARM support to their mongo charts
32 votes -
Add timestamps to user documents
Most database technologies store this metadata by default.
Because the expected data volume and change rate of this attribute will most probably be low, there should be no reason of not storing this information.
Of course this information might already be available in audit files, but first: auditing isn't enabled by default.
Second: most database users won't have access to this file/info and third: most users won't expect this info in a separate file (reminder, MongoDB recommends to store the data where it belongs when it comes to "data/schema modelling", so the metadata of a user document should also be…14 votes -
Lock on session start level with provided keys
Scenario:
Parallel DB updates with transactions on multiple collections that use same documents.
Example: Calculate some common stuff to embed it in extra collections to avoid lookups.Problem:
Lock and timeout on documents uses up valuable time and performance.
Also lock conflicts produce a huge amount of exceptions that need to be handled.Idea:
Key-based sessionsExample:
Session A with Keys 1 and 2 is started.
Session B tries to start with Key 1. Key 1 is locked with Session A. Session B waits till Session A is finished.In this case transaction doesn't start with updating and failing. Waiting…
8 votes -
Make $merge support DELETE operation
Currently, the
$merge
only supports insert/update/upsert/merge behaviour. It would be great to support delete behaviour. A common use case would be in-place document deduplication/clean-up in a collection.2 votes -
Should be possible to configure profiling output destination
When enabling database profiling the output is sent to both the system.profile collection and system logs. Logging to a capped collection is fine but spamming the logs on disk is not good.
We have a need to be able to react to changing query patterns quickly, so we have profiling enabled in production on a busy system and we do real-time analysis on the the system.profile collection. This works fine and the performance hit is acceptable but our system logs on disk grows a lot.
Please make it possible to configure if profile logging should go to disk, collection or…
9 votes -
Add Relaxed mode support for the $out operator
Add Relaxed mode support for the $out operator.
*and include as option in the existing drivers1 vote -
Write parts of database engine in ZIG
Zig is a zero-dependency, drop-in C/C++ compiler that supports cross-compilation out-of-the-box. Implementing some parts of MongoDB database engine core in ZIG might brings some performance improvements.
1 vote -
Aggregations should allow an empty sort stage instead of returning an error
When you run an aggregation pipeline that contains an empty sort stage (like
{"$sort": {}}
) MongoDB returns the error message "$sort stage must have at least one sort key". It would be really helpful if such a stage would work and simply not apply any sorting at all.For one this would be more consistent with a find operation (e.g.
db.runCommand({"find": "test", "sort": {}})
ordb.test.find({}, {}, {"sort": {}})
) which does not return an error but simply does not sort the results. More importantly it would also make it easier for developers and frameworks to dynamically generate the…1 vote -
Raise maximum BSON document size bigger than 16 MB
Per https://www.mongodb.com/docs/manual/reference/limits/#:~:text=The%20maximum%20BSON%20document%20size,MongoDB%20provides%20the%20GridFS%20API, maximum BSON document size is 16 MB. I would like to request this to support bigger sizes like 32 MB, 64 MB or even bigger.
119 votes -
allow mongosync to migrate few field from source to destination for collection in database
right now mongosync will migrate all the fields from source to destination based on filter or non filter setting but there is no way to move few field out of all field for all document
to migrate few field from source to destination for collection in database with default primary key field (_ID )
requesting the feature in new mongosync version
1 vote -
Include or flag nodes seen more than once / duplicates when traversing with $graphLookup
When traversing a graph with $graphLookup, we suppress duplicates (in cases of cycles). It would be useful to have an option to include a flag indicating a node that caused the traversal to stop due to duplication.
2 votes -
Change Timeseries Bucket Memory Limit
Currently, there's no way to set a memory threshold for bucket allocation in MongoDB's time series collections. As the bucket size increases and more collections are opened day after day, a limiting mechanism triggers for open buckets, leading to cache pressure and the premature closing of buckets under high load. It would be beneficial for users to have the ability to set a memory threshold for the timeseries bucket memory limit ( I guess limit is around 3GB). It enabling us to prevent early bucket closure in production environments. Alternatively, providing the option to manually close buckets could help manage…
2 votes
- Don't see your idea?