I was using Microsoft Azure Cosmos DB to store unstructured data.
Associate Software Architect at a tech vendor with 51-200 employees
Offers efficient data management with room for simplified migration
Pros and Cons
- "Microsoft Azure Cosmos DB simplifies the process of saving and retrieving data."
- "Microsoft Azure Cosmos DB simplifies the process of saving and retrieving data."
- "There should be a simpler way for data migration."
What is our primary use case?
How has it helped my organization?
It is easy to learn how to use Azure Cosmos DB.
Azure Cosmos DB enhances search result quality by enabling rapid data retrieval within its collections. It can handle large amounts of data efficiently.
Azure Cosmos DB offers numerous advantages, including flexibility, cost-effectiveness relative to performance, and a pre-existing infrastructure on Azure. Its support for multiple data models, extensive document database capabilities, and fully managed maintenance provided by Azure make it a compelling choice with immediately apparent benefits.
What is most valuable?
Microsoft Azure Cosmos DB simplifies the process of saving and retrieving data. The only requirement is to create the collection and streamline data management.
What needs improvement?
There should be a simpler way for data migration. Currently, we need to write scripts to update data in bulk and ensure proper connectivity for migration with .NET, which seems hectic and risky.
Buyer's Guide
Microsoft Azure Cosmos DB
January 2026
Learn what your peers think about Microsoft Azure Cosmos DB. Get advice and tips from experienced pros sharing their opinions. Updated: January 2026.
881,114 professionals have used our research since 2012.
For how long have I used the solution?
I have used Cosmos DB in my previous project for around one year.
What do I think about the stability of the solution?
Azure Cosmos DB offers high availability, at approximately 99.9 percent, with good latency.
What do I think about the scalability of the solution?
Azure Cosmos DB handles scalability well. It is easy to scale up the workloads.
Dynamic scaling enhances cost-efficiency and usability by automatically adjusting resources to meet demand. This means the system scales up capacity when needed and scales down when not in use, preventing unnecessary expenses.
Which solution did I use previously and why did I switch?
I have used MongoDB, but not extensively. If working with Node, I would recommend Mongo, but in a Microsoft environment, I recommend Cosmos.
How was the initial setup?
The initial deployment was manageable. It took around five to seven hours to deploy Cosmos to a working condition fully.
What about the implementation team?
At that time, we had a team of four people managing the infrastructure and deployments.
What other advice do I have?
I would rate Microsoft Azure Cosmos DB a seven out of ten.
New users should be familiar with DocumentDB since most people are only aware of relational databases, but Cosmos is different.
Which deployment model are you using for this solution?
Public Cloud
If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?
Microsoft Azure
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Software Architect at a tech vendor with 10,001+ employees
Offers partitioning, performance, and optimization capabilities we need
Pros and Cons
- "One valuable feature of Microsoft Azure Cosmos DB is partitioning. Its performance is very nice."
- "For example, we have people spread across multiple locations; if they update data in Australia, we can access it in another location within a fraction of a second."
- "The query searching functionality has some complexities and could be more user-friendly. Improvements in this area would be very helpful."
- "The query searching functionality has some complexities and could be more user-friendly."
What is our primary use case?
I have been using Microsoft Azure Cosmos DB for the last five years for IoT-based data saving and other purposes. We use non-structural data for various reasons. For instance, we are using artificial intelligence to save multiple data sets coming from different sources.
How has it helped my organization?
It is a managed service, so we do not want to worry about other aspects.
What is most valuable?
One valuable feature of Microsoft Azure Cosmos DB is partitioning. Its performance is very nice. I use it mostly on the Microsoft backend, particularly .NET and .NET Core technology. From deployment and accessibility aspects, there is significant performance improvement.
Additionally, consistency is noteworthy. For example, we have people spread across multiple locations. If they update data in Australia, we can access it in another location within a fraction of a second. That is an impressive feature of Microsoft Azure Cosmos DB.
It is very good from the optimization and usage point of view. It is very user-friendly. Microsoft also provides support from the performance aspect. They support us from the optimization and scalability aspects.
What needs improvement?
The query searching functionality has some complexities and could be more user-friendly. Improvements in this area would be very helpful.
We have multiple applications. Our applications are running in different environments such as AWS and Azure. We are able to give flexibility to AWS to access this data from Microsoft Azure Cosmos DB. We have created an interface between them through APIs. Through the APIs, the AWS applications can consume the data from Microsoft Azure Cosmos DB, but we have seen some slowness or latency, whereas with Azure, we see better performance. Our AWS is in the Eastern zone, and people in the Western zone have some latency.
For how long have I used the solution?
I have used the solution for five years.
What do I think about the stability of the solution?
We are seeing some latency issues with AWS. It offers good availability.
What do I think about the scalability of the solution?
Being serverless, the scalability is very good.
How are customer service and support?
We pay for the support. We are happy with their support. If we face any challenges initially, they provide us with a resource to answer all our questions.
How would you rate customer service and support?
Positive
Which solution did I use previously and why did I switch?
Previously, we used MongoDB and DynamoDB, though not extensively. Because of client preferences and their use of Azure, we chose Microsoft Azure Cosmos DB. DynamoDB uses clusters, which affect costs.
How was the initial setup?
The initial setup can be somewhat tedious. We have to set up things, run them, see the results, and fine-tune them.
The initial setup took more than one month. After that, everything became automated. Now, if we want to deploy it in another location, the operational team typically takes one week. They verify whether everything is working properly or not. By using the automated scripts, we can deploy it at other locations.
What about the implementation team?
We have a separate team for configuration. We also get support from Microsoft.
What's my experience with pricing, setup cost, and licensing?
Its price is in the middle, neither too low nor too high.
What other advice do I have?
We are happy with the usage of Microsoft Azure Cosmos DB for our use case. In terms of learning, it is of medium complexity. It is neither very tough nor very easy.
Overall, I would rate Microsoft Azure Cosmos DB an eight out of ten.
Which deployment model are you using for this solution?
Hybrid Cloud
Disclosure: My company has a business relationship with this vendor other than being a customer. Partner
Buyer's Guide
Microsoft Azure Cosmos DB
January 2026
Learn what your peers think about Microsoft Azure Cosmos DB. Get advice and tips from experienced pros sharing their opinions. Updated: January 2026.
881,114 professionals have used our research since 2012.
Full Stack Developer at a tech services company with 5,001-10,000 employees
Enables efficient global data management with impressive low latency
Pros and Cons
- "It handles large-scale operations efficiently, such as tracking views, logs, or events."
- "I definitely recommend Microsoft Azure Cosmos DB."
- "There are some disadvantages as it is costly compared to other NoSQL databases."
- "There are some disadvantages as it is costly compared to other NoSQL databases. It has a complex pricing model and has a strict partitioning strategy."
What is our primary use case?
I find SQL API suitable. I used it in my last project. Previously, I worked for a client called EPS, which has a product called BOS (brokerage operation support system). There I have used the SQL API.
I have used it in a product called BOS, and we achieved many things with Microsoft Azure Cosmos DB, which helped improve our products efficiently.
How has it helped my organization?
It helps in many ways in my current projects such as brokerage operation, which shifts multiple data in different regions. It helps significantly in storing and retrieving data from different countries for shipping details, shipping ID, and all data records in different countries.
What is most valuable?
Microsoft Azure Cosmos DB is a fully managed globally distributed NoSQL database. It is highly available with low latency and scalability. It supports multiple data models and APIs, making it flexible for different applications. Its features include multi-model support, global distribution, automatic scaling, and support for multiple APIs such as SQL API, MongoDB API, Gremlin, and Cassandra.
We can use Microsoft Azure Cosmos DB for storing and managing all types of data manipulations including inserting, fetching, and updating records. These operations can be performed efficiently.
The storage in Microsoft Azure Cosmos DB is globally distributed and highly efficient. Storing and retrieving data is much faster and more efficient.
It is cloud-friendly and easy to use. We can easily insert data and retrieve information from this cloud platform. The UI is better, faster, and efficient.
It supports various types of APIs and is a fully managed, globally distributed database that helps in different regions. Microsoft Azure Cosmos DB is a distributed and multi-model NoSQL database that supports SQL, MongoDB, and other platforms. Its scaling is managed using the request per unit, and it has auto-scaling based on business requirements.
The features include support for multiple NoSQL data models such as documents in JSON format, key-value store, graph database, wide column store, and MongoDB compatibility. In the document model, we can use the SQL API, while in the key-value store, we can use the table API. The Graph database is used for Gremlin.
It has a large capacity of up to 12 GB per physical partition per container. I have used up to three to four GB.
Its latency is high and impressive. The support is very high, with read-write latency at 10 ms per second.
It handles large-scale operations efficiently, such as tracking views, logs, or events. It has high write throughput and handles partition issues and storage growth effectively.
What needs improvement?
There are some disadvantages as it is costly compared to other NoSQL databases. It has a complex pricing model and has a strict partitioning strategy. There are limited SQL query capabilities in Microsoft Azure Cosmos DB.
It is more expensive than other server cloud service providers with its request units pricing model.
For how long have I used the solution?
I have one year of working experience with Microsoft Azure Cosmos DB in my current organization.
What do I think about the scalability of the solution?
The solution scales very well.
How are customer service and support?
I'm not sure about technical support. I haven't worked with them.
Which solution did I use previously and why did I switch?
Before Microsoft Azure Cosmos DB, I used SSMS and MySQL server management. For cloud solutions, I have only used Microsoft Azure Cosmos DB.
How was the initial setup?
Initially, we logged into the Azure portal and create a new Microsoft Azure Cosmos DB account. Then we chose an API such as SQL API or MongoDB. We set up account details, subscription, region, and enable geographical replication and multi-write regions. After that, we created a database and specify the name and provisional throughput. Then we created a container inside, providing the container ID, partition key, and index policy.
It took around 15 to 20 days for full-fledged training.
Initially, it took approximately three months to get comfortable for learning purposes. I encountered some difficulties while learning, however, through the project, I learned many things.
It's fully cloud-based, so there is no maintenance.
What about the implementation team?
We have six developers for deployment and related tasks in Microsoft Azure Cosmos DB.
Which other solutions did I evaluate?
AWS is another choice available. I find Microsoft Azure Cosmos DB better suited for my needs.
Microsoft Azure Cosmos DB and AWS DynamoDB are basically the same, however, Microsoft Azure Cosmos DB supports multi-region support and can replicate and auto-replicate the data. It is highly manageable, which is why I chose Microsoft Azure Cosmos DB.
What other advice do I have?
I definitely recommend Microsoft Azure Cosmos DB. It handles large amounts of data, is highly reliable, and operates in a very fast and efficient way. Users can deploy their applications in the cloud, and it supports various APIs. On a scale of one to ten, I rate Microsoft Azure Cosmos DB a nine out of ten.
Which deployment model are you using for this solution?
Public Cloud
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Last updated: May 4, 2025
Flag as inappropriateLead Cloud Architect at a computer software company with 1-10 employees
Has the outstanding ability to handle concurrency and consistency
Pros and Cons
- "The most valuable feature of Microsoft Azure Cosmos DB is its ability to handle concurrency and consistency."
- "I would rate Microsoft Azure Cosmos DB a ten out of ten."
- "The first one is the ability to assign role-based access control through the Azure portal for accounts to have contributor rights."
- "In that scenario, two things can be improved."
What is our primary use case?
We use Microsoft Azure Cosmos DB for a lot of facets and various production-based products. In one case, we use it to store news articles and process information about them for AI processing. We also use Microsoft Azure Cosmos DB to store conversations with AI chatbots and for managing data pipelines and orchestration. These are just a few of our use cases.
How has it helped my organization?
We use the built-in vector database primarily for searching documents that live within Microsoft Azure Cosmos DB. For instance, if I have a lot of documents stored in Microsoft Azure Cosmos DB and I want to do vector-based searching on those documents, having the vector store in Microsoft Azure Cosmos DB makes a lot of sense because the vector store lives in line with the data. It is in the same workspace and the same region. We do not have to worry about ingress and egress charges because with it being co-located with our data, we are going to have better performance. In other cases, we use the vector database as a vector index for documents that do not even live in Microsoft Azure Cosmos DB. This could be documents that live in a storage account, for example. We find that the vector store within Microsoft Azure Cosmos DB is highly performant and a good place to store those indexes for fast searching.
We have primarily integrated it with web applications that live within Docker containers. They are Azure Container Apps and Azure Kubernetes Service (AKS). They are the primary ones. The nice thing about those services is that we have all of our custom code running within those containers. We use them in a couple of different scenarios. When we are using Azure Container Apps, those are within standard public endpoints, and the integration works quite well. In the case of AKS, we are doing that using private endpoints and virtual networks, so it is locked down a lot more, but the integration with Microsoft Azure Cosmos DB is still easy. That is because we are also using private endpoints for Microsoft Azure Cosmos DB. In both scenarios, it works quite well.
We use it quite a bit with Azure AI services. That goes hand in hand with using the vector store within Microsoft Azure Cosmos DB as well because we typically call out, for example, Azure OpenAI to do some embedding of the data that either lives in Microsoft Azure Cosmos DB or outside of Microsoft Azure Cosmos DB. We then store those results in the vector store. Also, sending the data content that lives in Microsoft Azure Cosmos DB as context to AI services works well too.
Microsoft Azure Cosmos DB has helped improve our organization’s search result quality in a couple of cases. In one case, it does that when we are using the vector store. We already talked about those unique capabilities, but in another case, we have used it alongside Azure AI search. Indexing the data that is in Microsoft Azure Cosmos DB in that search service works quite well. Using a combination of the vector stores and the content from Microsoft Azure Cosmos DB to do a semantic type of search or hybrid search options also works well.
We were able to see its benefits right away. That also comes down to our level of expertise. If you pay attention to how you model your data, how you set up the containers and configure them, and those things are optimized for performance, you will see immediate benefits. Those things are crucial to see immediate benefits. Some people might not know how to do those things as well at the beginning, so it might take a little bit longer. If you follow best practices and documentation, you can see benefits right away.
What is most valuable?
The most valuable feature of Microsoft Azure Cosmos DB is its ability to handle concurrency and consistency. In scenarios with heavy usage where multiple users or services are accessing Microsoft Azure Cosmos DB or updating and creating new documents, its ability to manage such interactions in a performant way is outstanding.
For me, it is easy because I have a lot of experience with it, but it is easy for most people to get started with Microsoft Azure Cosmos DB. The more challenging aspect is modeling your data for the best performance. That is one of those things where there is a little bit of a learning curve to do it correctly, but there is a lot of good information out there on how to do that.
What needs improvement?
One thing that we do as a best practice is lock down Microsoft Azure Cosmos DB to where you have to use an identity to connect to it. For instance, I have a service running in Azure Container Apps, which is using my Azure account or identity. You cannot connect with the connection stream. You cannot connect with an access key. In that scenario, two things can be improved. The first one is the ability to assign role-based access control through the Azure portal for accounts to have contributor rights. Currently, you can only do that by executing a script using the Azure CLI. Being able to do that in the user interface would be more convenient.
The other thing is that when you are in that type of configuration and you want to use the data explorer through the Azure portal, you have to separately click the button to authenticate with your Entra ID. That times out after an hour or so, and then in order to reauthenticate, you have to leave the data explorer and come back so that any queries or anything you have up and running go away. That is another area of improvement.
For how long have I used the solution?
I have been using it since before it was Cosmos DB. Back then it was called DocumentDB, so I started using DocumentDB in 2016.
What do I think about the stability of the solution?
Microsoft Azure Cosmos DB is highly stable and built for stability and scalability. Outages are rare and usually due to regional issues rather than the service itself. I have not experienced Microsoft Azure Cosmos DB as the only service being down in a region.
What do I think about the scalability of the solution?
The ability to scale workloads is one of its strongest points. About three years ago, they added the auto-scale feature which helped a lot. Before then, if we were going to do a big batch processing workload against Cosmos DB, we would manually scale it up. Manually scaling up usually takes seconds. It is immediate, depending on how high you are scaling it up. If you are scaling it up by a certain high factor, it can take a little bit longer, but, generally, it is fast. Now, auto-scale throughput is what we use in all of our deployments. In cases where it has to automatically scale up to your maximum, that happens very quickly.
How are customer service and support?
I contacted their technical support once a few years ago to restore a Cosmos DB backup point. The response was quick. It was all done electronically. I did not talk to anyone on the phone, and it was a quick resolution. Their support was good for that one case.
How would you rate customer service and support?
Positive
Which solution did I use previously and why did I switch?
I have used RavenDB, which is probably the closest to Microsoft Azure Cosmos DB. I have also used MongoDB through Atlas, which is very similar to the MongoDB API available on Microsoft Azure Cosmos DB.
How was the initial setup?
The initial setup is easy. You can quickly deploy it through the Azure portal. You do not need a whole lot of configuration to get started. If you want to programmatically deploy it, that is also a simple process. You can do it through ARM or Bicep templates or even through Azure CLI. It is quite simple.
In terms of the learning curve, back when it was DocumentDB, it did not take very long to get onboarded. It is a matter of getting used to the conceptual differences. If you are a traditional database administrator, you would not have to do your typical tasks that you would do with SQL database as an example. That is a little bit of a mind shift. If you are a developer and you are used to working with relational databases, that is also a very big mind shift, but it is not any different than using any competing NoSQL database.
We teach a lot of people how to use Microsoft Azure Cosmos DB. People generally get it quickly. A lot of the learning curve comes in the details. It is quick for people to get up and running and do something with Microsoft Azure Cosmos DB. There are a lot of quick-start examples and resources out there. The longer learning curve is how to properly optimize and take advantage of the features that I already talked about. You can get up and running and start using Microsoft Azure Cosmos DB in a day, but to fully understand how to properly optimize it and configure it requires a couple of weeks of experimentation and learning. Then you get very proficient at it.
Its maintenance is being taken care of by Microsoft. That is one of the benefits.
What's my experience with pricing, setup cost, and licensing?
The pricing for Microsoft Azure Cosmos DB is good. Initially, it seemed like an expensive way to manage a NoSQL data store, but so many improvements that have been made to the platform have made it cost-effective. With so many improvements to the platform and ways to optimize, in our big enterprise deployments, Microsoft Azure Cosmos DB tends to be one of the least expensive services even though it gets a lot of use. The pricing has improved a lot over the years.
What other advice do I have?
My biggest advice is to learn how to correctly model your data. Learn how to select the appropriate partition key. Learn how to use the change speed if you need to use more than one partition key. These are all performance-based things that have a higher learning curve. These are the most important things to get down so that you are not overspending and so that you do not have to scale it up higher than you otherwise would have to because things are not set up properly.
Microsoft Azure Cosmos DB can decrease the total cost of ownership if you are taking advantage of certain things such as being able to do some downstream processing of data using the change feed, which simplifies how you can process incoming data versus having multiple services set up. That is one example. Another example could be doing analytical queries against Microsoft Azure Cosmos DB. You can use something like Synapse Link so that the data gets stored in parquet files in the storage account automatically for you, and you can query over those using something like Spark. That saves you time and money because you are not hitting your operational store. You are not consuming RUs, so you are not worried about data movement, and you are removing having to set up a separate data pipeline to do that. That is a potentially big saving, and then you are not consuming your transactional resource units on your Microsoft Azure Cosmos DB containers doing those analytical queries. That is another way to save a lot of money. If done properly and using the available features, Microsoft Azure Cosmos DB can decrease the total cost of ownership.
I would rate Microsoft Azure Cosmos DB a ten out of ten.
Which deployment model are you using for this solution?
Public Cloud
If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?
Microsoft Azure
Disclosure: PeerSpot contacted the reviewer to collect the review and to validate authenticity. The reviewer was referred by the vendor, but the review is not subject to editing or approval by the vendor. The reviewer's company has a business relationship with this vendor other than being a customer: Partner
Software Applications Development Engineer at a tech vendor with 501-1,000 employees
Offers good scalability and support for cross-platform connections
Pros and Cons
- "Reading and inserting data into Microsoft Azure Cosmos DB is a very smooth process."
What is our primary use case?
It has not been a direct approach for me because all of my enterprise-level applications are deployed in MongoDB. At some point, we usually face issues where we need multi-directional and different contexts to connect with the database. Sometimes we use SQL and need to retrieve data from the database. If using a typical MongoDB, this is not possible. Microsoft Azure Cosmos DB has bidirectional support for cross-platform connections, so we don't need to recreate our entire database structure in our application. We can work with the MongoDB driver and interact with Microsoft Azure Cosmos DB. The applications under my portfolio currently rely on that, mostly indirectly. We created the models, deployed our data, migrated it, and are using it heavily in Microsoft Azure Cosmos DB.
Recently, we are building an AI-powered application where we heavily rely on Microsoft Azure Cosmos DB to bring data from ServiceNow, SAP, Salesforce, Cisco, and other customers we have at our organization. Reading and inserting data into Microsoft Azure Cosmos DB is a very smooth process.
What is most valuable?
Its scalability is great. Microsoft Azure Cosmos DB offers auto-scaling both horizontally and vertically. We haven't faced any issues.
What needs improvement?
For the third-party driver support they are currently providing, they need to ensure it stays up to date with the market throughout development. If MongoDB updates a particular feature in their drivers, we as developers expect that service and support to be available in Microsoft Azure Cosmos DB as quickly as possible in production.
What do I think about the scalability of the solution?
Its scalability is good and depends on the traffic, with auto-scaling functionality ensuring we don't need to worry about database crashes or data loss during insertion. These problems were common when deploying our data on-premises. With Microsoft Azure Cosmos DB, we have overcome those struggles and are now operating smoothly.
Which solution did I use previously and why did I switch?
It depends on the application. In some cases, we use Microsoft Azure Cosmos DB directly with Azure Functions to store customer details and manage the customer onboarding process through our enterprise applications. In several instances, operations happen directly with Microsoft Azure Cosmos DB.
For legacy applications built on MongoDB that need to transition to Microsoft Azure Cosmos DB, we take a different approach. If a company is migrating from on-premises systems to the cloud—whether it’s Microsoft Azure or AWS—sometimes it’s necessary to adopt different tools for the billing process and other infrastructural needs. In such cases, we may choose to use Microsoft Azure Cosmos DB to avoid having to restructure our entire legacy application. In these situations, we utilize MongoDB and its drivers as a mediator. These drivers interact with Microsoft Azure Cosmos DB to perform the necessary operations within the application.
On another note, when using Azure Functions, we typically handle cases such as creating, updating, or retrieving customer details. This process directly connects Azure Functions to Microsoft Azure Cosmos DB. Currently, we are managing these two different patterns effectively.
How was the initial setup?
If you are an engineer with good experience in microservices and the Azure platform services, it's a one-day setup process, based on requirements. If you are new to the entire Azure platform and services, it can be a bottleneck. It takes time to understand the configurations and related aspects. If you're new, there is a learning curve. You need to understand which version you're using, what features are supported fully or partially, and which features are not supported. For example, when using MongoDB drivers to interact with Microsoft Azure Cosmos DB, understanding which version (4.1, 4.2, or 4.3) you're using and what features are supported by Microsoft Azure Cosmos DB for that particular version is important. Understanding query performance improvements based on supported features is crucial. For newcomers, it might take several days to understand and review documentation. For mid-level engineers with two or three years of experience, it's a straightforward, one-day process.
What's my experience with pricing, setup cost, and licensing?
Pricing is a complex process at the enterprise level. While I'm not handling the pricing directly, through stakeholder meetings and conversations, we understood that having everything in a single platform with billing up and running for all required application services is beneficial. Microsoft Azure Cosmos DB comes into a single billing system for gold or silver partners, though I'm not familiar with specific company policies and terms and conditions as I'm not an infrastructure specialist.
What other advice do I have?
I would rate Microsoft Azure Cosmos DB an eight out of ten.
Which deployment model are you using for this solution?
Public Cloud
If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?
Microsoft Azure
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Last updated: Jun 30, 2025
Flag as inappropriateIntegration lead at a computer software company with 1,001-5,000 employees
Achieve reliable document management with dependable disaster recovery and georedundancy
Pros and Cons
- "I appreciate Microsoft Azure Cosmos DB's robust document management and consistent availability."
- "Microsoft Azure Cosmos DB offers exceptional stability, boasting a reliability rating of 99.95 percent."
- "Currently, it doesn't support cross-container joins, forcing developers to retrieve data from each container separately and combine it using methods like LINQ queries."
- "Microsoft's support services are inadequate, especially during critical incidents."
What is our primary use case?
We use Microsoft Azure Cosmos DB as a NoSQL database to store JSON documents for our clients in the Banking, Financial Services, and Insurance sectors, primarily insurance. They require storage for numerous documents, including policy, claims, and costing documents, making Cosmos DB the ideal solution.
Because the company is spread across multiple regions, maintaining consistency with traditional relational databases was a challenge. Cosmos DB solved this by offering various consistency options and geo-replication capabilities. Logical partitioning within Cosmos DB improved routing efficiency, and composite indexes, combined with the partition key, optimized query execution by directing requests to specific documents, minimizing resource consumption.
How has it helped my organization?
Cosmos DB can offer faster data retrieval than SQL for certain queries and workloads, particularly those involving large volumes of unstructured or semi-structured data.
Cosmos DB is highly capable of handling large workloads and offers exceptional reliability for document storage and similar needs. Its particular strength lies in-stream analytics, a functionality currently not supported by MongoDB. This makes Cosmos DB the ideal solution for customers requiring real-time data processing, and it is our consistent recommendation for those working with stream analytics.
What is most valuable?
I appreciate Microsoft Azure Cosmos DB's robust document management and consistent availability. The databases are always operational, ensuring continuous accessibility and simplifying disaster recovery procedures. The geo-redundancy feature is particularly valuable, especially for European operations.
What needs improvement?
Cosmos DB needs improvement in a few areas, primarily the ability to join data across containers. Currently, it doesn't support cross-container joins, forcing developers to retrieve data from each container separately and combine it using methods like LINQ queries. This workaround is inefficient and cumbersome. A built-in join functionality would be a significant improvement. Additionally, Cosmos DB's SQL queries are susceptible to injection attacks due to limited parameter support. Currently, only one parameter can be used, compelling developers to use string interpolation, which introduces security risks. The ability to pass multiple parameters would enhance both security and code quality.
Sometimes, clients may lack technical expertise and run queries without utilizing partition keys, leading to significantly increased request units and higher costs. While Microsoft Azure Cosmos DB currently leads the market, enhancements are needed, particularly regarding data statistics across different containers. Dealing with clients who have multiple containers often requires custom code to stitch data together, highlighting the need for functionality supporting joins across containers. Additionally, a more stable and predictable pricing plan would benefit both developers and clients.
For how long have I used the solution?
I have been using Microsoft Azure Cosmos DB for more than four years now.
What do I think about the stability of the solution?
Microsoft Azure Cosmos DB offers exceptional stability, boasting a reliability rating of 99.95 percent. This ensures continuous availability without downtime.
What do I think about the scalability of the solution?
I rate the scalability of Cosmos DB highly, with a score of nine point five out of ten.
How are customer service and support?
Microsoft's support services are inadequate, especially during critical incidents. The faster response times found in community-driven resources, such as Stack Overflow, underscore the shortcomings of Microsoft's customer support.
How would you rate customer service and support?
Negative
Which solution did I use previously and why did I switch?
While Amazon DynamoDB offers extensive configurability, this can be time-consuming. For projects with tight deadlines requiring a NoSQL database, Cosmos DB is a preferable choice due to its ease of setup and minimal configuration. Additionally, Cosmos DB provides superior support for the Jira application and offers better uptime than DynamoDB.
How was the initial setup?
The provided templates help us deploy Cosmos DB quickly.
What's my experience with pricing, setup cost, and licensing?
Cosmos DB's billing is based on request units, which isn't ideal for all clients. Pricing plans offering set benefits, similar to Azure's platform resources, could be beneficial. The current method lacks clarity for clients new to cloud-native architectures, hindering migration from on-premises systems.
Billing is based on request units, so it's crucial to optimize queries to minimize consumption. A standard estimate is one to one point five request units for read requests and four to five for insert, update, or delete operations.
I would rate Cosmos DB's cost at seven out of ten, with ten being the highest.
Which other solutions did I evaluate?
What other advice do I have?
Cosmos DB can provide improved search result quality, but we must understand the partition key of our container. Using the correct partition key in our queries ensures precise results. Without it, queries may consume excessive Request Units of over 5,000 and ultimately fail.
Microsoft Azure Cosmos DB is a strong product with the potential for improvement in supporting joins from different containers and providing more stable pricing plans. Despite these areas for growth, Cosmos effectively competes with services like AWS DynamoDB and currently leads the market. Overall, I rate the solution an eight out of ten.
Our Cosmos DB deployment spans across Europe, with the primary data center located in Italy to serve our European users. Additionally, we have another customer based in the eastern US, where their data is replicated across three data centers in the eastern US and three more in the western US for redundancy and high availability. We currently have 40 projects using Cosmos DB for clients in different industries ranging from oil and natural gas to sports and media.
We use Azure WebJobs to maintain our databases by removing expired policies and contracts. However, Microsoft should implement a similar system in Cosmos DB, utilizing its Hot and Cold Tier functionality for archival storage. This would allow us to efficiently move outdated data to archival storage, mirroring the functionality we have with Azure WebJobs.
Which deployment model are you using for this solution?
Public Cloud
If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?
Microsoft Azure
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Genai, Data Digital Products Strategy & Transactions Transformation Leader at a consultancy with 10,001+ employees
The interface is user-friendly and seamlessly connects with other cloud offerings, making integration with other services easy
Pros and Cons
- "Our team has found the vCore index to be one of the most valuable features. We have tokenized and vectorized our entire database and stored this data in MongoDB collections with a vCore index, which works like magic for keyword selection."
- "There aren't any specific areas that need improvement, but if there were a way to achieve the right cosine similarity score without extensive testing, that would be very beneficial."
- "There aren't any specific areas that need improvement, but if there were a way to achieve the right cosine similarity score without extensive testing, that would be very beneficial."
What is our primary use case?
Our primary use case is a product to generate insights from several terabytes of data. The main problem was accuracy, as we couldn't get accurate insights because the data was hallucinating. After some trial and error, we found a solution with Azure Cosmos DB and MongoDB and got an acceptable cosine similarity score. We use Azure Cosmos DB collections and Azure functions to get the results we were looking for.
How has it helped my organization?
Cosmos DB improved our search result quality. Our response's accuracy rate is higher than 85 percent, which is amazing for such a large volume of data. We are searching several terabytes of data, and our harmonized data layer is pretty big. We get data from multiple global data providers.
We use Databricks as well. The entire framework is built on Python. We have structured and unstructured data pipelines. There are multiple layers to our architecture, but Cosmos DB is the main one.
What is most valuable?
Our team has found the vCore index to be one of the most valuable features. We have tokenized and vectorized our entire database and stored this data in MongoDB collections with a vCore index, which works like magic for keyword selection.
Additionally, the interface is user-friendly and seamlessly connects with other Azure offerings, making integration with other services easy. The learning curve was short. Our experts understand data well, but they had to build knowledge of the AI stack. It took a little bit of learning. However, it was easy to understand. In a couple of weeks, they could do everything.
The vector database is the core feature we use. Our data was not accurate, and we wanted to create a ChatGPT-type functionality where the user could ask a question in plain English like, "Show me the top 10 vegan companies in the US." But the vegan is not tagged as "vegan." It could be "plant-based," so you add that keyword. Then, it's not the end of it. Things are tagged as soya
milk," "oat milk," etc.
There was no other way to solve our problem with hallucination and deal with a huge volume of structured and unstructured data. The only option is to vectorize. And we looked at several vector databases, but none came close. The vector database integrates seamlessly. When we use the cosine similarity search and retrieve the keywords. These keywords then eventually feed into our SQL query formation. After that, we use OpenAI to summarize everything. It seamlessly integrates with everything.
What needs improvement?
There aren't any specific areas that need improvement, but if there were a way to achieve the right cosine similarity score without extensive testing, that would be very beneficial.
For how long have I used the solution?
I have been using Azure Cosmos DB for close to a year.
What do I think about the stability of the solution?
Cosmos DB proves to be stable with its seamless integration, accuracy, and consistency, making it a reliable choice for our needs.
What do I think about the scalability of the solution?
We have not extensively tested the scalability, but it appears straightforward with the Microsoft stack. Scalability has never been an issue for us.
How are customer service and support?
Customer service and support have been great. We receive good cooperation not only from the Cosmos DB team but across the entire Azure stack.
How would you rate customer service and support?
Positive
Which solution did I use previously and why did I switch?
Before adopting Azure Cosmos DB, we tried different vector databases, but none were working. It was suggested by a Microsoft colleague, and it has been fundamental to our architecture since.
How was the initial setup?
The initial setup was seamless. During our proof of concepts (POCs), everything was within the Azure OpenAI stack. It worked for us and seamlessly integrated with the rest.
What was our ROI?
In the three months prior, our hosting run rate was approximately $550,000 per month, which has since decreased to $280,000 in October. Last year was more about building things. This year, we are trying to optimize things and getting the right support.
What's my experience with pricing, setup cost, and licensing?
The pricing aligns with our expectations, given our extensive use of the Azure stack. This year, we are focusing on optimization and cost reduction across the Azure stack.
Which other solutions did I evaluate?
We considered several vector databases. Being an enterprise customer with Microsoft, security and reliability were deciding factors. Open-source vector databases were also considered.
What other advice do I have?
I rate Azure Cosmos DB as nine out of 10. The product is fit for purpose and performs well,
If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?
Microsoft Azure
Disclosure: My company has a business relationship with this vendor other than being a customer. Partner
CTO at a consultancy with 1-10 employees
Offers horizontal scalability, making it easy and cost-effective without additional effort from a DBA or DevOps team
Pros and Cons
- "The fact that scalability can be achieved by simply configuring availability zones is very attractive."
- "An improvement could include increasing the document size or providing a method to manage larger sets efficiently. If they want to keep a 2 MB limit, they should provide a way to chain multiple documents in a systematic way so that developers do not have to figure out what to do when a document is larger than 2 MB."
- "A limitation in Azure Cosmos DB is the 2 MB document size. Developers need more systemic support in chaining multiple documents if more than 2 MB is required."
What is our primary use case?
I have three different products using Azure Cosmos DB. The most extensive use is in a survey platform we are developing as a SaaS product. Azure Cosmos DB serves as the primary OLTP database for this platform. We do not have any other RDBMS for this use case.
We also use it to store configuration information for campaigns for the other two products, but it is used extensively for the survey platform.
How has it helped my organization?
Azure Cosmos DB offers horizontal scalability, making it easy and cost-effective without additional effort from a DBA or DevOps team. Configuration for scaling is user-friendly through the UI.
It is easy to use and optimize once you understand the basics, partitions, and indexing. By default, it indexes every field and attribute, but you can customize it. The documentation is good. It makes logical sense. I have had some experience with other NoSQL solutions. It is easy to use. We do not find anything challenging. The way it indexes and does the filtering of data is easy.
What is most valuable?
The fact that scalability can be achieved by simply configuring availability zones is very attractive. We aimed to avoid managing a NoSQL database, especially when we did not have an upper limit on how much audio we would need while doing the initial development. The ability to easily scale with the increase in usage and adoption of our product is the most valued feature.
What needs improvement?
A limitation in Azure Cosmos DB is the 2 MB document size. Developers need more systemic support in chaining multiple documents if more than 2 MB is required. Compared to competitors like MongoDB, which allows for gigabyte-sized documents, Azure Cosmos DB's limit is small. An improvement could include increasing the document size or providing a method to manage larger sets efficiently. If they want to keep a 2 MB limit, they should provide a way to chain multiple documents in a systematic way so that developers do not have to figure out what to do when a document is larger than 2 MB. For some use cases, the 2 MB size is very small. If they improve this aspect, a lot of customers will benefit from it.
Another area for improvement is making it available on different cloud providers. Currently, Azure Cosmos DB is an Azure-only offering. Not supporting other cloud providers results in Microsoft losing some customers.
For how long have I used the solution?
I have been using Azure Cosmos DB extensively for the last four years. Before that, it was more of hobby research.
How are customer service and support?
We have an account manager. We reach out to that account manager wherever we need level 2 or level 3 support. We have also followed the normal process of raising a ticket, but sometimes, it helps to speed up the process.
Ordinary issues are resolved through standard processes, but for complex matters, we leverage our account manager to access senior engineers. We have received great support. Support has been responsive and effective. I am very happy with their support.
How would you rate customer service and support?
Positive
Which solution did I use previously and why did I switch?
We have not replaced any solution with Azure Cosmos DB for this use case, but we have used MongoDB, Elastic, and other NoSQL databases.
Almost anything that you can do in Azure Cosmos DB can also be done in MongoDB, but one of the things that I like about Azure Cosmos DB is called change detection. Changes in each document can be persisted in some other technologies. It could be in fabric or SQL Server. This feature gives Azure Cosmos DB an edge over others in use cases where you need to detect a change and then connect it with other things. I also like the functions and stored procedures that Microsoft has implemented in Azure Cosmos DB, but the change detection feature is probably one of the best features. It works natively within the platform and Azure.
How was the initial setup?
The initial setup is very easy and seamless. An instance can be deployed in minutes, and the UI allows for easy configuration and scaling without disrupting operations.
I recently needed to upgrade an Azure Cosmos DB instance. In the UI, I clicked the option to scale it higher. It said that it could take a couple of hours. I thought it would take four or five hours, but it finished in two or three hours and notified me when the upgrade was completed. All this while, things were working and operational, and behind the scenes, it was upgrading to a bigger instance. It finished the upgrade in half the time. It can spin up a small instance in just a few minutes.
It took us about two weeks to do the PoC to make sure that Azure Cosmos DB was the right one for our use case. After the PoC, we started leveraging Azure Cosmos DB within a month. Our use cases have become more and more sophisticated because we are still developing software, which requires us to create different documents and different structures of those documents in Azure Cosmos DB. The onboarding itself was simple and natural. We did not feel that using Azure Cosmos DB slowed us. In fact, it was seamless because the JSON that our APIs needed could directly be persisted in Azure Cosmos DB. No other transformation was needed.
Its learning curve is small. It is easy to learn. The documentation of Azure Cosmos DB is good.
It does not require any maintenance, but a couple of times, we had to change our partition scheme and write a separate utility to transition from one partition scheme to the other. It was more of a migration that we had to do of the Azure Cosmos DB document that we had created. Because we changed the partitioning scheme, we had to migrate the old data to the new partition design. Azure Cosmos DB does not require any maintenance work. That is the beauty of how NoSQL, and Azure Cosmos DB in particular, have been designed.
What about the implementation team?
All implementations were done in-house without any external consultants. It is a one-person job.
What was our ROI?
The horizontal scalability helps lower the overall cost of ownership as compared to managing MongoDB or any RDBMS solution. Because of its ease of use and the fact that the scaling, configuration, and backup are managed in Azure, we do not need a dedicated DBA. We do not even need the DevOps people to manage it.
The management of Azure Cosmos DB is easy because of the UI and the way it scales. We have availability zones and multi-region load balancing. When you take all that into consideration, the total cost of ownership is much lower than others.
Azure Cosmos DB is costly, especially if you have not optimized it. However, we are very satisfied with it. It provides the value for what we are paying.
What's my experience with pricing, setup cost, and licensing?
Its price is very good for the basic stuff. When you go to a more complicated use case, especially when you need replication and availability zones, it gets a little costly.
It represents the biggest cost item for us. However, the cost is aligned with the value provided. It has served our needs perfectly, aligning with our scaling and development requirements, so the cost of ownership seems justified.
Which other solutions did I evaluate?
We did a number of PoCs to decide which NoSQL database to use, and we settled on Azure Cosmos DB. We could see its benefits when we incorporated the partition key with indexing. The performance started improving when our engineers started exploring some of the complex concepts.
What other advice do I have?
Overall, I would rate Azure Cosmos DB an eight out of ten.
Which deployment model are you using for this solution?
Public Cloud
If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?
Microsoft Azure
Disclosure: PeerSpot contacted the reviewer to collect the review and to validate authenticity. The reviewer was referred by the vendor, but the review is not subject to editing or approval by the vendor. The reviewer's company has a business relationship with this vendor other than being a customer: Partner
Buyer's Guide
Download our free Microsoft Azure Cosmos DB Report and get advice and tips from experienced pros
sharing their opinions.
Updated: January 2026
Product Categories
Managed NoSQL Databases Database as a Service (DBaaS) NoSQL Databases Vector DatabasesPopular Comparisons
PostgreSQL
Elastic Search
MongoDB Enterprise Advanced
MongoDB Atlas
ClickHouse
OpenSearch
Amazon RDS
Buyer's Guide
Download our free Microsoft Azure Cosmos DB Report and get advice and tips from experienced pros
sharing their opinions.




















