DocumentDB

Azure DocumentDB is the highly scalable NoSQL document database-as-a-service that offers rich query and transactional processing over schema-free data. It helps deliver configurable and reliable performance and enables rapid development. This is all through a self-managed platform and is backed by the power and reach of Azure. DocumentDB is the right solution for web and mobile applications when predictable throughput, low latency, and flexible query are key.

How can we improve Azure DocumentDB?

You've used all your votes and won't be able to post a new idea, but you can still search and comment on existing ideas.

There are two ways to get more votes:

  • When an admin closes an idea you've voted on, you'll get your votes back from that idea.
  • You can remove your votes from an open idea you support.
  • To see ideas you have already voted on, select the "My feedback" filter and select "My open ideas".
(thinking…)

Enter your idea and we'll search to see if someone has already suggested it.

If a similar idea already exists, you can support and comment on it.

If it doesn't exist, you can post your idea so others can support it.

Enter your idea and we'll search to see if someone has already suggested it.

  1. Aggregate queries fail on x64 builds but work ok on x86

    When the VALUE keyword is not specified an exception is thrown unless I explicitly target x86 builds.

    For full details see:

    http://stackoverflow.com/questions/42907875/document-db-exception-occurs-performing-aggregate-queries-on-x64-platform

    1 vote
    Vote
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)
      You have left! (?) (thinking…)
      0 comments  ·  Flag idea as inappropriate…  ·  Admin →
    • More granular RU, auto-scale RU, separate read-write RU

      This is marked as "completed" in some other posts, but it's still very much an issue.

      We could use DocumentDB in more scenarios if the collections could be smaller and/or assumed lower or highly variable query volume. AWS DynamoDB billing, for example, is more granular and feels more flexible in many scenarios.

      https://aws.amazon.com/dynamodb/pricing/

      One use case is pilot projects where we may want to use noSQL DBs for agility. We can't create small collections cost-efficiently on Azure, and partitions aren't viable for this purpose. So we would end up maintaining many small, potentially underutilized, 400RU collections.

      It would also be…

      1 vote
      Vote
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        I agree to the terms of service
        Signed in as (Sign out)
        You have left! (?) (thinking…)
        0 comments  ·  Flag idea as inappropriate…  ·  Admin →
      • bill

        Billing should be database level and not collection level

        1 vote
        Vote
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          I agree to the terms of service
          Signed in as (Sign out)
          You have left! (?) (thinking…)
          0 comments  ·  Flag idea as inappropriate…  ·  Admin →
        • javascript function as data source in SQL

          currently the UDF can be used in the WHERE clause

          if it was available in the FROM clause as well as a source of a document collection that would be nice.

          For eg

          select * from mydatasourceFunc( collection, parm1, parm2 ) where someField=1

          then the mydatasourceFunc could add filter() or map() or whatever to generate rows.

          this could help enforcing ACL like the accumulo iterators for eg
          it could help generating aggregates and/or nested aggregates

          it would also be nice for it to have access to the context/request/response objects for this function as documented here

          http://azure.github.io/azure-documentdb-js-server/

          and if internally docdb…

          1 vote
          Vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            I agree to the terms of service
            Signed in as (Sign out)
            You have left! (?) (thinking…)
            0 comments  ·  Flag idea as inappropriate…  ·  Admin →
          • Integrate with Azure Active Directory

            Really need to be able to set resource level access control integrated with Azure Active Directory. The current built-in user / resource access control is a pain to use and we end up with just using the master key and giving everyone access to everything.

            Azure SQL DB already has this, and is a pleasure to work with.

            Perhaps you should take a leaf from your sister team on this -

            https://docs.microsoft.com/en-us/azure/sql-database/sql-database-control-access-aad-authentication-get-started

            31 votes
            Vote
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              I agree to the terms of service
              Signed in as (Sign out)
              You have left! (?) (thinking…)
              0 comments  ·  Flag idea as inappropriate…  ·  Admin →
            • Local DocumentDB for Windows Server

              I suggest to have DocumentDB to work on local network on Windows Server and not only on Azure just like Microsoft SQL Server

              6 votes
              Vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                I agree to the terms of service
                Signed in as (Sign out)
                You have left! (?) (thinking…)
                0 comments  ·  Flag idea as inappropriate…  ·  Admin →
              • Support including docs that do not contain the property which is being sorted on

                When using the ORDER BY clause, if a document does not contain the property which is being sorted on, that document will not be included in the result set.

                Would it be possible to treat 'undefined' the same as 'null' when returning results sets that use an ORDER BY clause?

                9 votes
                Vote
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  I agree to the terms of service
                  Signed in as (Sign out)
                  You have left! (?) (thinking…)
                  0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                • Support ordering by multiple properties

                  As per the DocumentDB SQL Syntax docs:

                  "While the query grammar supports multiple order by properties, the DocumentDB query runtime supports sorting only against a single property..."

                  It would be great if this limitation was removed.

                  Thanks!

                  26 votes
                  Vote
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    I agree to the terms of service
                    Signed in as (Sign out)
                    You have left! (?) (thinking…)
                    1 comment  ·  Flag idea as inappropriate…  ·  Admin →
                  • Add Group By support for Aggregate Functions

                    We're really happy about the new aggregate functions that recently were announced. But without Group By support they fall short and will leave many disappointed. Please add Group By support as well.

                    213 votes
                    Vote
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      I agree to the terms of service
                      Signed in as (Sign out)
                      You have left! (?) (thinking…)
                      3 comments  ·  Flag idea as inappropriate…  ·  Admin →
                    • Add DocumentDB Emulator support for Mac OS X

                      The DocumentDB Emulator currently only supports Windows 10.

                      It would be great if support for Mac OS X could be added or documentation to run it on other platforms.

                      11 votes
                      Vote
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        I agree to the terms of service
                        Signed in as (Sign out)
                        You have left! (?) (thinking…)
                        0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                      • Facets

                        Support for some sort of faceting

                        SELECT COUNT(COLOR) AS colorCounts, COLOR(SHAPE) AS shapeCounts, COUNT(LENGTH, 0.1) lengthCountsInPointOneIncrements FROM ALLDOCS

                        1 vote
                        Vote
                        Sign in
                        Check!
                        (thinking…)
                        Reset
                        or sign in with
                        • facebook
                        • google
                          Password icon
                          I agree to the terms of service
                          Signed in as (Sign out)
                          You have left! (?) (thinking…)
                          0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                        • Make debugging expirience easier and exception messages valuable

                          Now error message for queries frequently useless
                          "{"code":500,"body":"{\"message\":\"An error occurred while sending the request.\"}"}"

                          And I have no ideas what exception happened and what I did wrong.

                          Please- add more valuable error messages

                          10 votes
                          Vote
                          Sign in
                          Check!
                          (thinking…)
                          Reset
                          or sign in with
                          • facebook
                          • google
                            Password icon
                            I agree to the terms of service
                            Signed in as (Sign out)
                            You have left! (?) (thinking…)
                            0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                          • Finer grain monitoring metrics

                            Currently the only grain of monitoring metrics available via the portal is at the database account level. If I have two collections in the account I have no means of monitoring a single collection. I'd also like to slice the data by some sort of custom token. If I have multiple services using the same store I'd like to analyse the metrics per service. As the security implementation is so immature the only way I imagine this can be achieved is by persisting a token in the calls made by the services, obviously not all metrics are applicable.

                            More operational…

                            1 vote
                            Vote
                            Sign in
                            Check!
                            (thinking…)
                            Reset
                            or sign in with
                            • facebook
                            • google
                              Password icon
                              I agree to the terms of service
                              Signed in as (Sign out)
                              You have left! (?) (thinking…)
                              0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                            • 3 votes
                              Vote
                              Sign in
                              Check!
                              (thinking…)
                              Reset
                              or sign in with
                              • facebook
                              • google
                                Password icon
                                I agree to the terms of service
                                Signed in as (Sign out)
                                You have left! (?) (thinking…)
                                0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                              • Execute read-only stored procedures on secondary replica

                                I have a many-to-many scenario close to the post below:
                                https://feedback.azure.com/forums/263030-documentdb/suggestions/6611247-support-cross-document-joins
                                I have multiple entities, and the relationships between them are saved as documents and can't be denormalized.
                                Instead of doing multiple queries against the DB, I'd like to wrap it in a stored procedure to save round-trip time.
                                However, current stored procedures can only execute on primary replica, so it would be slow if the users are from another region.
                                Is that possible to define some read-only stored procedures so that it can be executed in read regions?

                                16 votes
                                Vote
                                Sign in
                                Check!
                                (thinking…)
                                Reset
                                or sign in with
                                • facebook
                                • google
                                  Password icon
                                  I agree to the terms of service
                                  Signed in as (Sign out)
                                  You have left! (?) (thinking…)
                                  0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                                • Compress query results

                                  Compress query results if requested by the client. This could significantly improve network throughput for large queries.

                                  3 votes
                                  Vote
                                  Sign in
                                  Check!
                                  (thinking…)
                                  Reset
                                  or sign in with
                                  • facebook
                                  • google
                                    Password icon
                                    I agree to the terms of service
                                    Signed in as (Sign out)
                                    You have left! (?) (thinking…)
                                    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                                  • Support metrics per region in the Azure Portal

                                    Since I can use the connection policy to hit different regions, I'd like to be able to filter metrics per region to understand writes and reads traffic better.

                                    4 votes
                                    Vote
                                    Sign in
                                    Check!
                                    (thinking…)
                                    Reset
                                    or sign in with
                                    • facebook
                                    • google
                                      Password icon
                                      I agree to the terms of service
                                      Signed in as (Sign out)
                                      You have left! (?) (thinking…)
                                      0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Like upsert, add a get or add function

                                      like ConcurrentDictionary, there is a GetOrAdd function,

                                      I frequently find my self doing the following
                                      1. Check if Document exists
                                      2. If not, Add document

                                      Since this is a non-atomic action, today I have to write stored procedures to do this safely.

                                      possible prototypes

                                      GetOrAdd(string id, DOC doc)
                                      GetOrAdd(Expression<Func<DOC, bool>> where, DOC doc)

                                      2 votes
                                      Vote
                                      Sign in
                                      Check!
                                      (thinking…)
                                      Reset
                                      or sign in with
                                      • facebook
                                      • google
                                        Password icon
                                        I agree to the terms of service
                                        Signed in as (Sign out)
                                        You have left! (?) (thinking…)
                                        0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Allow Database Level Pricing

                                        I am looking to convert an application from MongoDB to DocumentDB as I would prefer a managed solution but the collection pricing is absurd. The current model has 1 or 2 collections with 10+ GB of data that will grow at high rates but there are another 30 collections or more with most of them having only 10-20 records. Paying a minimum of $25 per collection is out of the question especially for dev workloads. The pricing model would change your development behaviour to just stuff everything in the same collection but then you loose a lot of the ability…

                                        42 votes
                                        Vote
                                        Sign in
                                        Check!
                                        (thinking…)
                                        Reset
                                        or sign in with
                                        • facebook
                                        • google
                                          Password icon
                                          I agree to the terms of service
                                          Signed in as (Sign out)
                                          You have left! (?) (thinking…)
                                          1 comment  ·  Flag idea as inappropriate…  ·  Admin →
                                        • Reduce in JavaScript Language Integrated Query API

                                          Add Reduce function to JavaScript Language Integrated Query API

                                          Please add __.reduce() to the JavaScript Language Integrated Query API. I'm using the other chainable functions but really need reduce.

                                          11 votes
                                          Vote
                                          Sign in
                                          Check!
                                          (thinking…)
                                          Reset
                                          or sign in with
                                          • facebook
                                          • google
                                            Password icon
                                            I agree to the terms of service
                                            Signed in as (Sign out)
                                            You have left! (?) (thinking…)
                                            0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                                          ← Previous 1 3 4 5 10 11
                                          • Don't see your idea?

                                          DocumentDB

                                          Feedback and Knowledge Base