Azure Cosmos DB

Have feedback for Azure Cosmos DB product? Submit your idea here or upvote other ideas. All feedback is monitored and reviewed by the Azure Cosmos DB team. 

This site is for feature suggestions only. For technical questions or issues, please submit them to StackOverflow,where we and the community can better help you.

Please use the following categories when submitting your idea.

SQL API: Query language features, syntax using SQL API, indexing, any other core features in Azure Cosmos DB.

Gremlin API: Graph features and capabilities using Gremlin API.

Cassandra API: Features and capabilities using Cassandra API.

MongoDB API: Features and capabilities using MongoDB API.

Table API: Features and capabilities using Table API.

Etcd API: Features related to using etcd as a configuration store for Kubernetes.

Built-in Apache Spark: Features related to built-in Apache Spark in Azure Cosmos DB.

Built-in Notebooks: Features related to built-in Notebooks in Azure Cosmos DB.

SDK: Features related to Azure Cosmos DB SDKs for SQL API.

Change Feed: Features related to Change Feed.

Management: All management features, backup/restore,monitoring, ARM, PowerShell and CLI.

Portal: All features for Azure Portal and Cosmos DB Explorer.

Emulator: Features related to the Azure Cosmos Emulator.

Other: Features not related to any other category.

Security:
Authentication, authorization,permissions and encryption features.

Monitoring:
Metrics, monitoring, alerts,and diagnostics features.

Server-side: Stored procedures, Triggers,and User-Defined Functions.
  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. Autoscale Throughput (UR/s)

    Depending on the average amount of incomming requests/ required RU's, (or other parameters,)
    I would like to autoscale the througput(RU/s) of a collection.

    1,569 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    58 comments  ·  Management  ·  Flag idea as inappropriate…  ·  Admin →
  2. [CosmosDB] Be able to manage Backup and Restore with Portal and APIs

    Please provide the ability to manage backup and restore on our own.

    Restore through support is not clear and inconvenient.

    It turned out restore is only available through paid support plan.

    This document https://docs.microsoft.com/en-us/azure/cosmos-db/online-backup-and-restore#restoring-a-database-from-an-online-backup does not say it in any word.

    The situation made our customer extremely unhappy.

    393 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    7 comments  ·  Management  ·  Flag idea as inappropriate…  ·  Admin →
  3. Add ability to rename databases and collections

    It should be possible to rename databases and collections.

    This feature is universal in all if not the vast majority of database products.

    Lack of ability to rename anything makes it very hard for us to manage releases if we are adding new data. Currently, we have to create a copy of the existing database (which is a feat in itself, since this again is not core functionality), make the change there, and then re-point the website to the updated database. All this time, we are incurring extra costs and inconvenience.

    Renaming things also allows us to correct typos, which…

    387 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    4 comments  ·  Management  ·  Flag idea as inappropriate…  ·  Admin →

    The ability to rename databases and collections is not currently something that is in our road map.

    Currently the way to accomplish this task in Cosmos DB is to create a new collection with the changed name then use bulk exec or change feed to populate it.

    Thanks for your request and input on this. We may consider this for a future planning cycle.

    thanks.

  4. Support the CouchDB replication protocol

    Support the CouchDB replication protocol so that we can sync with PouchDB or Couchbase Lite NoSQL databases on mobile devices for superior online / offline capabilities.

    229 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    5 comments  ·  Management  ·  Flag idea as inappropriate…  ·  Admin →
  5. Improve scaling down experience: remove redundant physical partitions

    During initial import we increased RU to 200K. Cosmos Db SQL API created 20 physical partitions with 10K throughput each.
    During regular day we just need 30K Ru. That would mean each physical partition would have only 1,5K RU allocated and a lot of redundant partitions with possible expensive cross-partition calls (total data size is less than 30GB)

    Is there way to decrease amount of physical partitions to reasonable value?
    In a nutshell it is not fair pricing, when you are limited to 1,5K RU and a lot of cross-partition calls you have to pay extra

    96 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    4 comments  ·  Management  ·  Flag idea as inappropriate…  ·  Admin →
  6. Deploy Stored Procedures from Source Control

    It would be great if we could deploy sprocs from visualstudio.com as we can with Azure Functions or Azure Web Sites.

    70 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    4 comments  ·  Management  ·  Flag idea as inappropriate…  ·  Admin →
  7. Make Throttled Request metric (Cosmos DB) available for configuring a unified alert

    When looking to migrate our alerting (deployed in ARM templates) to the new alerting platform the throttled request metric is not available when configuring an alert for Cosmos DB resources, we currently have a classic alert using this metric. I have attempted to use an alert based on 'Total Requests' filtering for response code 429 but this doesn't seem to behave the same as the existing Classic alert (maybe due to the only available setting for 'timeAggregation' being 'Count'). Having logged a support request it was suggested I make a request here.

    24 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    4 comments  ·  Management  ·  Flag idea as inappropriate…  ·  Admin →
  8. PowerShell module for the management plane

    Hi

    It would be great if there was a supported PowerShell module for the CosmosDB management plane, in the same vein as the other Az modules. The Az PowerShell team have already done the vast majority of the work with their Autorest project so you'd just need to provide them with a Swagger/OpenAPI definition file and they can help you generate the majority of the code for it.

    24 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Management  ·  Flag idea as inappropriate…  ·  Admin →
  9. Add support for the common Get-AzureRmMetricDefinition and Get-AzureRmMetricDefinition cmdlets

    Our company is automating the monitoring of our Azure resources. We need CosmosDB to support retrieval of metrics via Get-AzureRmMetricDefinition and Get-AzureRmMetric. Right now these return nothing for CosmosDB

    11 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Management  ·  Flag idea as inappropriate…  ·  Admin →
  10. Faster resource deletion

    CosmosDB resources take a very long time to delete. Make this faster please!

    10 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    3 comments  ·  Management  ·  Flag idea as inappropriate…  ·  Admin →
  11. Enable Locks at Database and Collection Level as well to avoid deletion.

    We can enable locks at Resource level to make sure Cosmos DB is not deleted. Currently it will still allow the admin to delete the Database and delete the collection under the db. It will be nice to lock the DB and Collection as well. So in Production Environment we can enable these locks to make sure they are not deleted by anyone.

    6 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Management  ·  Flag idea as inappropriate…  ·  Admin →
  12. Prevent accidental deletion of Cosmos DB Databases and Containers in the portal by "Locking"

    Please extend the current "Resource Locks" to cover Databases and Containers within an Azure Cosmos DB account.

    As of now you are able to create a Resource Lock (https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-lock-resources), which prevents the entire Cosmos DB Account from being deleted. But you can still accidentally delete the Databases and Containers in the account.

    5 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Management  ·  Flag idea as inappropriate…  ·  Admin →
  13. Cosmos DB Resource Governor

    We need a way to implement something mimicking SQL resource governor on Cosmos DB. We wish to allow our service that pushes dats to cosmosDB and admin users full bandwith of the allocated RU\sec. But we wish to limit our customer queries to an RU/sec ceiling. Have we any offering of this type yet?

    4 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Management  ·  Flag idea as inappropriate…  ·  Admin →
  14. Add feature to only support TLS 1.2 for PCI

    When a PCI scan was run on our public cosmos end point it raised an exception since TLS 1.0 has not been decommissioned.

    Can there be a button on the portal to only support TLS 1.2?

    thanks

    4 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Management  ·  Flag idea as inappropriate…  ·  Admin →

    Hi Nate. Thanks for your suggestion. We are currently evaluating TLS 1.2 enforcement.

    In the interim if you are running a service within the Microsoft cloud all outbound connections are TLS 1.2. If you are running outside the Microsoft cloud the recommendation is to use .Net 4.6 which is TLS 1.2 by default. If you are running a VM the recommendation is to disable all transport protocols except TLS 1.2.

    Registry Example:
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\tls 1.0\client]
    “disabledbydefault”=dword:00000001
    “enabled”=dword:00000000

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\tls 1.0\server]
    “disabledbydefault”=dword:00000001
    “enabled”=dword:00000000

    As mentioned this is currently being reviewed for planning. We will update this item as this progresses.

    Thanks again.

  15. Take collection / container offline

    It would be useful to be able to take a collection / container 'offline'. For example, if we wish to delete a large collection, our policy is to make it inaccessible for 6 months prior to deletion.

    Whilst we can do this at the client level, it would bring greater assurance a given collection is unused at the point of deletion if it had been offline for a few months beforehand.

    3 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Management  ·  Flag idea as inappropriate…  ·  Admin →

    Hello Kris and thank you for your suggestion. This is not on our road map at this time.

    There are some alternatives you could explore.

    You could file a support ticket and ask the container be restored from the latest backup. This is done into a new Cosmos account which would have it’s own keys, essentially making this unavailable to users.

    You could also use the Cosmos Data Migration Tool to export the container into json files in blob storage.

    Both of these would fit your retention needs as well as make the data essentially offline for access. If this is a rather large set of data and there is a very low or zero chance of it being brought online again, blob storage may make more sense to use as the storage costs are lower.

    Will mark this as unplanned as we may offer this ability in the future…

  16. 2 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Management  ·  Flag idea as inappropriate…  ·  Admin →
  • Don't see your idea?

Feedback and Knowledge Base