No more typing reviews! Try our Samantha, our new voice AI agent.
Maria Pallante - PeerSpot reviewer
EVP, Technology Solutions at Bond Brand Loyalty
Real User
Sep 16, 2024
Provides excellent search result quality but it requires full DR replication
Pros and Cons
  • "The most valuable aspect of Cosmos DB is its performance."
  • "We'd like to avoid full DR replication if possible, as this would result in significant cost savings."

What is our primary use case?

We use Microsoft Azure Cosmos DB in our loyalty platform, which is based on our proprietary technology, Synapse LX. In loyalty, we need to enroll, score, and deliver rewards communications in near real-time. There are significant volume spikes in those activities, so our use case is to support the writing of information into our database. Cosmos DB is a no-SQL database that allows us to scale quickly and handle large volume spikes. It allows us to auto or manually scale in many different ways. It gives us much flexibility to handle that requirement and ensure we deliver the right customer experiences.

How has it helped my organization?

Cosmos DB is not difficult to use, but like anything, it requires careful planning and consideration of use cases. This is especially important when planning to implement it. From an optimization perspective, Microsoft has made significant efforts in the past 12 to 18 months to facilitate changes after initial implementation and optimize cost.

Cosmos DB provides excellent search result quality. Since implementing it, we have not encountered any issues with our searches.

After deploying Cosmos DB, we initially experienced some performance gains, followed by additional benefits that required a learning curve regarding tuning and configuration. As our understanding deepened, we were able to optimize it further.

In the last three months, Cosmos DB has helped reduce our total cost of ownership. Microsoft recently implemented a feature that allows us to achieve savings of up to 50 percent.

What is most valuable?

The most valuable aspect of Cosmos DB is its performance. It serves as the foundation for OpenAI's infrastructure, providing us with similar functionality. This not only prepares us for AI use cases but also efficiently supports our loyalty use cases. We can share information with our customers and deliver experiences without concern about performance.

What needs improvement?

For our Disaster Recovery plan, we currently use geo-replication. We'd like to avoid full DR replication if possible, as this would result in significant cost savings.

Buyer's Guide
Microsoft Azure Cosmos DB
September 2026
Learn what your peers think about Microsoft Azure Cosmos DB. Get advice and tips from experienced pros sharing their opinions. Updated: September 2026.
913,683 professionals have used our research since 2012.

For how long have I used the solution?

I have been using Microsoft Azure Cosmos DB for five years.

What do I think about the stability of the solution?

We have not had any stability issues with Cosmos DB.

What do I think about the scalability of the solution?

Cosmos DB's scalability is excellent, which is the whole reason to use it for scalability and performance.

The dynamic scaling helps decrease our overhead costs.

How was the initial setup?

The initial deployment was straightforward and consisted of two to three people.

What's my experience with pricing, setup cost, and licensing?

Cosmos DB's pricing structure has significantly improved in recent months, both in terms of its pricing model and how charges are calculated. This has led to substantial cost savings for both us and our customers.

What other advice do I have?

I rate Microsoft Azure Cosmos DB seven out of ten because of the disaster recovery requirements.

Cosmos DB presents a steep learning curve. I would rate it a five out of ten. The challenge lies not so much in understanding its concepts as in utilizing them effectively and efficiently.

It took us 12 to 18 months of focused attention to fully onboard our team. At that point, we began to understand. However, it wasn't until we went live and observed actual user activity that we truly grasped the whole picture. Testing is one thing, but experiencing real-world interactions provides invaluable insights and a deeper understanding.

Cosmos DB requires minimal maintenance, but monitoring its performance and optimizing it as needed is crucial.

Potential users should plan accordingly, as Cosmos DB is a NoSQL database that uses similar design principles. Consider the design and apply those principles beforehand to optimize performance from the start. Understanding your read-and-write ratio is crucial due to cost implications, so ensure you understand the balance between reading and writing to the database. All these factors matter as they can impact your costs, so consider them carefully. 

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 has a business relationship with this vendor other than being a customer. Partner
PeerSpot user
Full Stack Developer at a tech services company with 5,001-10,000 employees
Consultant
Top 20
May 4, 2025
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. 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.
PeerSpot user
Buyer's Guide
Microsoft Azure Cosmos DB
September 2026
Learn what your peers think about Microsoft Azure Cosmos DB. Get advice and tips from experienced pros sharing their opinions. Updated: September 2026.
913,683 professionals have used our research since 2012.
Software Architect at a tech vendor with 10,001+ employees
Real User
Top 20
Mar 31, 2025
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."

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
PeerSpot user
Gabriel Mendonça - PeerSpot reviewer
Java Software Developer at a tech vendor with 10,001+ employees
Real User
Top 5
Nov 24, 2024
Excellent availability, latency, and capability to handle large data insertions
Pros and Cons
  • "The availability and latency of Azure Cosmos DB are excellent."
  • "Azure Cosmos DB helped improve the quality of our search results."
  • "The size of the continuation token in Azure Cosmos DB should be static rather than increasing with more data, as it can lead to application crashes. They should use a static key size."

What is our primary use case?

I develop applications. I developed an application where I had to search the Azure Cosmos DB database for values related to suspicious entities. It involved retrieving, sorting, and manually searching data through queries.

How has it helped my organization?

Azure Cosmos DB helped improve the quality of our search results. We could see its benefits immediately after the deployment.

What is most valuable?

The availability and latency of Azure Cosmos DB are excellent. It handles large data insertions efficiently without any problems related to scalability. It scales workloads very well.

What needs improvement?

The library of Azure Cosmos DB is like JPA, but it is not exactly JPA. We could not integrate that.

The size of the continuation token in Azure Cosmos DB should be static rather than increasing with more data, as it can lead to application crashes. They should use a static key size.

If we want to update some data, we cannot use the SQL command line. It is not like SQL Server or any other relational database. We have to send the JSON file or send the text to the Azure portal.  These are the only two options. We cannot use the normal SQL statement.

For how long have I used the solution?

I have been using it since December 2021.

What do I think about the scalability of the solution?

The scalability is very good. We performed performance tests, inserting objects with more than 10,000 records without any issues, although, on the application side, we started to see high memory consumption. That is because, with larger JSON files, you will have more objects in the Java application. These things consume memory, but there are no issues regarding scalability.

How are customer service and support?

I have not contacted their support.

How would you rate customer service and support?

Neutral

Which solution did I use previously and why did I switch?

I have experience with MongoDB but only for personal studies. I only learned the basic things.

How was the initial setup?

It was easy because we have Terraform embedded in the Jenkins pipeline. Once I deploy the application, it connects with Azure Cosmos DB. It is already configured, so I do not have to worry about this part.

It took us about one month to get onboarded and understand the basic functionalities. 

It does not require any maintenance at our end.

What about the implementation team?

We usually have a team of three to four people.

What's my experience with pricing, setup cost, and licensing?

I am not aware of the price, but a challenge that I have faced occasionally is that running longer queries requires more RUs, so I have to ask someone with permissions to execute the queries.

What other advice do I have?

I would advise learning more about queries and select statements. You can use that on the Java side and Cosmos SDK.

It is easier to learn if you already know relational databases. You can use some of that knowledge to work with Azure Cosmos DB. Also, if you know JPA, it would not be so difficult to work with the Cosmos SDK for Java application development. Inserting data is also simple.

It is at a medium level in terms of ease of use. There is documentation for gathering the information. Azure Cosmos DB does not have any constraints for the column names. If you want to create a specific query, you can find information related to that in Microsoft documentation. You can find queries to solve specific problems.

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: My company does not have a business relationship with this vendor other than being a customer.
PeerSpot user
Cornell Emile - PeerSpot reviewer
Founder and CEO at Amped Data Solutions
Real User
Top 20
Oct 14, 2024
Its ability to search through large amounts of data is excellent
Pros and Cons
  • "Specifically, we are using the MongoDB API, so we leverage it in that way. I like the flexibility that it offers. My team does not have to spend time building out database tables. We can get going fairly quickly with being able to read and write data into a MongoDB collection that is hosted inside Azure Cosmos DB."
  • "It is easy to use, but optimization has been a mixed experience. It has been more of trying to figure out how to do so. We have not found much support there, so we have to come up with our own way of optimizing it in different ways. That is one area of improvement."

What is our primary use case?

We use it as a data storage platform for several proprietary applications that we have designed and built and now support. We generally use it to be able to scale so that our customers can search a sizable amount of data. We have millions of records that include an extensive amount of text.

How has it helped my organization?

We implemented Azure Cosmos DB for our tokenization process. We had originally built a data dictionary to be able to tokenize different words within our MongoDB collection, but over a period of three years or so, we found that there were some limitations to doing that. The data dictionary needed to be updated, so we turned to the vector search feature because it essentially allows us to measure the similarity between words. Those sorts of comparisons could be done very easily. There is the ability to tokenize words, which we then use in the search functionality provided for the users of our applications. It has helped us improve the search functionality of our applications.

I landed on it as an architectural component of one of our first solutions. I went in expecting its benefits. It delivered the benefits of being able to quickly scale and being able to support semi-structured, unstructured, and structured data sets or data properties. All of these aspects are supported. We were able to realize its benefits early on.

We have used the vector database with Azure AI services. It works fine. They are embedded vectors. We are running some text through Azure AI. It then returns these embedded vectors, and we store those. We are able to use those vector values or vectors to determine the similarity between various words that are being searched in our applications.

The Azure Cosmos DB's ability to search through large amounts of data is excellent. It is fantastic. We have benefited from it. It is great.

What is most valuable?

There are a number of different APIs or data storage supported in Azure Cosmos DB. Specifically, we are using the MongoDB API, so we leverage it in that way. I like the flexibility that it offers. My team does not have to spend time building out database tables. We can get going fairly quickly with being able to read and write data into a MongoDB collection that is hosted inside Azure Cosmos DB.

I found it very easy to use. We have been using it for five years, so it is quite flexible for us. The ease of use is quite high for us.

What needs improvement?

It is easy to use, but optimization has been a mixed experience. It has been more of trying to figure out how to do so. We have not found much support there, so we have to come up with our own way of optimizing it in different ways. That is one area of improvement. We would like to have more tools that support the optimization of Azure Cosmos DB. There are not many tools out there. We have had to develop our own tools internally, such as a clean plan or query plan, and look at the index usage, throughput, and those sorts of things. The portal experience for optimizing and monitoring the service needs a few enhancements.

I am looking at it through the lens of MongoDB API. There are four or five other APIs that are supported in Azure Cosmos DB. The MongoDB API experience could be improved substantially by having a more user-friendly set of administrative tools so that I can go out there and query the documents that are part of the collection. Currently, I am working around that by using third-party tools like 3T. I also use MongoDB's Compass client tool. They can make this part of managing the database or the collection a lot easier by providing some built-in toolsets, similar to what is offered by Azure with Azure Data Studio. That is a big area for improvement. 

We should also be able to better manage the cost. There have been some improvements there, but there is still room for improvement in terms of how costs are managed through the Azure portal relative to Azure Cosmos DB. To me, it is one of the more expensive services out there depending on how it is being leveraged.

One of the key limitations is that only so many vectors can be supported. It does not work very well with the large amount of text that has to be embedded in the vectors. That is one limitation we have run into with the feature set.

For how long have I used the solution?

It has been five years. 

What do I think about the stability of the solution?

The SLA is pretty good. We have been able to at least get past 99.9%. We are probably closer to 99.99%. So, overall, it has done well over the five years. Just like with most things, there were a few instances where it crashed or was not available. Those instances are memorable, but they are few and very far apart.

Its latency is good. The availability is also good.

What do I think about the scalability of the solution?

Its scalability is good. However, redundancy does not work very well. Redundancy is having a set of backups. It is also a part of high availability. We have used some of the redundancy features in Azure Cosmos DB, and it created problems for us consistently. We recently had to move away from having a redundant copy of the data and just having a single copy. Of course, we have adequate backups.

Through the lens of MongoDB API, the scalability can be better. However, the limitations are core to the actual platform. MongoDB is not designed to scale horizontally, so that is how Azure offers it. It scales vertically which means that I can go and request more compute and more memory RUs for the instance that I am using. If I was supporting multiple workloads that had different read/ write patterns, it would work, but it is not designed to do that well at its core, as I understand it. It is less of a function of Azure Cosmos DB and more of a function of MongoDB itself.

The dynamic scaling has helped decrease our organization’s overhead costs. We are able to scale up during business hours, or when there is demand, we scale automatically. There are some tools that we have built and some processes that do that. We can also scale down during non-business hours or when the demand drops for the database or the data store. It has helped to manage scaling costs.

How are customer service and support?

I contacted their support this year when we had some issues. When it comes to customer service, it always comes down to the person you get on the phone or who picks up your ticket. 

Regarding Azure Cosmos DB, we felt frustrated when we needed that support from Microsoft. It has not been there because the things that we are dealing with are generally more complex than most customers would have to deal with. At times, the representatives or engineers we got or who picked up the tickets we submitted did not have the breadth of experience needed to support us or resolve the issues. So, we resolve the issues ourselves the best we can.

How would you rate customer service and support?

Negative

Which solution did I use previously and why did I switch?

We use some of the alternatives because it does not solve everything. There is no such thing as one perfect data store. We use Azure SQL instances. We use SQL and VM in Azure. We have started doing a lot more Postgres, which is the flavor of the time. Everybody seems to be moving to Postgres all of a sudden.

Synapse is another tool. It is another Azure service that we use. It just depends on what type of data we are using and what makes sense in terms of the implementation of the application. Those are some of the alternatives that we have used.

How was the initial setup?

Its deployment is easy. Setting up the service is easy. You make a decision around where you want to deploy and those sorts of things. There is a lot of pointing and clicking. That was very easy.

Taking it to production was a lot harder. It was a lift to get the data loaded into Azure Cosmos DB. At the time, there were about 750,000 resumes that we uploaded for a customer, so it took a lot of time. We had to build a custom app to load those documents on data records into Azure Cosmos DB. We had two people working on it for two weeks. We probably spent somewhere around 60 hours around the lift to get that all loaded up and going in Azure Cosmos DB.

It took us about 18 months to feel fully confident in working with this and reach a level where we can go and teach others. We feel that we have got a firm grasp of the service after about 18 months of production support.

Its maintenance has been taken care of by Microsoft. However, at the end of last year going into this year, there were a few disruptions with the service that hampered our customers or users. There have been times when the service went down, or the service was upgraded but the SDK or NuGet packages used to support or connect to Azure Cosmos DB were not in sync. Overall, Microsoft takes care of the maintenance.

What about the implementation team?

It was all done in-house. We had two people involved in it, myself and my lead developer. It was mainly about loading data into Azure Cosmos DB. That was a big lift.

What was our ROI?

Azure Cosmos DB helped decrease our organization’s total cost of ownership. It is hard to provide the numbers, but managing the data store is easier for us with Azure Cosmos DB with the MongoDB API because there is no need for a DBA. We do not have a DBA on the team who is just taking care of the indexes and making sure that the database is healthy. It pretty much just runs. If we had a DBA in the team specifically for MongoDB, we would be paying about 150,000 dollars a year. We have to somewhere in the neighborhood of 50,000 dollars for the service in Azure. In terms of the total cost of ownership, it saves us about 100,000 dollars.

What's my experience with pricing, setup cost, and licensing?

Pricing, at times, is not super clear because they use the request unit (RU) model. To manage not just Azure Cosmos DB but what you are receiving for the dollars paid is not easy. It is very abstract. They could do a better job of connecting Azure Cosmos DB with the value or some variation of that. 

What other advice do I have?

Overall, I would rate Azure Cosmos DB an eight out of ten.

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
PeerSpot user
Mohd Tanveer - PeerSpot reviewer
Project Associate at a consultancy with 10,001+ employees
Real User
Top 5
Jan 23, 2025
The high speed compared to other competitors is remarkable
Pros and Cons
  • "The high speed of Azure Cosmos DB compared to other competitors is remarkable."
  • "Overall, it is a good resource. I am not aware of the background, but it seems to currently support only JSON documents."
  • "Azure Cosmos DB is generally a costly resource compared to other Azure resources. It comes with a high cost."

What is our primary use case?

I am using it to store our data. We are using Azure Cosmos DB to store our JSON-based documents.

What is most valuable?

The high speed of Azure Cosmos DB compared to other competitors is remarkable. It is one of the most powerful features, offering high availability and high speed. Its benefits can be seen immediately after the deployment.

What needs improvement?

Overall, it is a good resource. I am not aware of the background, but it seems to currently support only JSON documents. They could expand their scope to support other types of data, such as XML or EDI formats. EDI is an old technology, but it is still in high use in supply chain and retail industries.

For how long have I used the solution?

I have more than two years of experience with Azure Cosmos DB, whereas with Azure, it has been more than four years.

What do I think about the stability of the solution?

Choosing the correct partition key is crucial, as it affects our database speed and related operations.

Latency and availability depend on the consistency level.

What do I think about the scalability of the solution?

It is a Platform as a Service, so we are concerned about the underlying interface. We can move to a higher tier as all Azure cloud resources are open to easy scaling.

Which solution did I use previously and why did I switch?

It offers an option alongside the Azure SQL database. Azure SQL database has its own capabilities, whereas Azure Cosmos DB supports all major big data requirements like Cassandra and Gremlin. Azure SQL database is more focused on transactional data instead of analytic data. Azure Cosmos DB covers a wider area.

How was the initial setup?

I have not personally deployed Azure Cosmos DB, but DevOps pipelines provide options for this. It should be easily deployable with the help of Microsoft's documentation.

It takes a couple of minutes to be up and running. It also depends on how we are deploying, whether it is via an ARM template, Azure pipeline, or directly via Azure release.

What's my experience with pricing, setup cost, and licensing?

Azure Cosmos DB is generally a costly resource compared to other Azure resources. It comes with a high cost. We have reserved one thousand RUs. Free usage is also limited.

What other advice do I have?

It is not like a traditional database. Choosing the partition key needs an understanding because it will affect the database speed. By making your partitions in a logical and efficient way, you can improve the speed of search analysis.

I would rate Azure Cosmos DB an eight out of ten.

Disclosure: My company has a business relationship with this vendor other than being a customer. Partner
PeerSpot user
Lead Data Engineer at ASOS.com Limited
Real User
Top 10
Oct 30, 2024
Requires minimal maintenance and is relatively easy to use with a small learning curve.
Pros and Cons
  • "The autoscale feature is the most useful for us."
  • "While Microsoft Azure Cosmos DB is generally easy to use, it has some limitations."

What is our primary use case?

In my role, I use Microsoft Azure Cosmos DB fairly extensively across various platforms. At ASOS, we utilize it for order processing to record incoming orders and for commercial integration platforms. Overall, we have numerous use cases.

How has it helped my organization?

Overall, Microsoft Azure Cosmos DB is easy to use.

Microsoft Azure Cosmos DB has provided benefits compared to SQL databases, particularly in terms of availability.

Microsoft Azure Cosmos DB has helped to improve our total cost of ownership.

Microsoft Azure Cosmos DB offers a relatively easy learning curve due to its limited programming service area compared to SQL Server. This streamlined functionality allows users to quickly grasp the SQL query language.

What is most valuable?

The autoscale feature is the most useful for us.

What needs improvement?

There should be parity between the various APIs. I often work with the Mongo API, and features for it sometimes lag substantially behind the core API, such as the Analytical Store feature. Additionally, I am waiting for the full fidelity change feed that would surface all changes, including deletes to documents.

While Microsoft Azure Cosmos DB is generally easy to use, it has some limitations. Certain areas are more restrictive, and we are awaiting features that will simplify development. For example, currently under development, the full fidelity change feed will expose all document changes, enabling tasks like synchronizing collections while accounting for deletions. This is challenging because the existing change feed doesn't provide information about deleted documents.

For how long have I used the solution?

I have been using Microsoft Azure Cosmos DB for around seven years.

What do I think about the stability of the solution?

Cosmos DB demonstrates good stability and great reliability, with technical issues arising approximately once per year.

While Cosmos DB offers good latency and availability, careful consideration must be given to selecting appropriate consistency levels.

What do I think about the scalability of the solution?

The scalability is excellent, and as long as the data can be partitioned, the scalability is nearly infinite.

Cosmos DB's ability to scale workloads is a significant advantage, as evidenced by our successful management of multiple terabytes of data without encountering any issues.

How are customer service and support?

The quality of customer service and support varies. We always get an answer eventually, but the speed of resolution depends on the reason for the support ticket. If there is a bug in the product, we have to wait for it to be fixed.

How would you rate customer service and support?

Positive

Which solution did I use previously and why did I switch?


How was the initial setup?

The initial setup of Microsoft Azure Cosmos DB is straightforward. Even someone with no experience can easily deploy the solution.

The deployment can be completed by one person on the same day.

What about the implementation team?

The deployment can be done entirely in-house. Whether we are doing it manually in the portal or deploying it through Terraform, it is straightforward. We do not require help from an integrator or consultant, although there are considerations about partitioning collections when creating resources.

What's my experience with pricing, setup cost, and licensing?

The pricing for Cosmos DB has improved, particularly with the new pricing for Autoscale. Previously, we were charged according to the busiest partition across all regions, but now, each partition is only charged for what it uses. This change has substantially reduced our costs.

Which other solutions did I evaluate?

When evaluating new projects, we determine whether data storage is best suited for a relational database, such as Azure SQL Database, or a non-relational database like Cosmos DB.

What other advice do I have?

I would rate Microsoft Azure Cosmos DB eight out of ten.

Understanding some of the subtleties of Microsoft Azure Cosmos DB can take time, and some individuals at ASOS still find concepts like partitioning unclear. However, getting started with Cosmos DB and developing functional applications is quick and can be achieved in a short timeframe.

We require minimal maintenance to validate that we've configured, for example, the correct indexing policies as required by our queries.

New users should make sure they understand partitioning because once it's selected, it is difficult to change it. Otherwise, you would need to migrate everything over to another collection.

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.
PeerSpot user
Michael Calvin - PeerSpot reviewer
CTO at Kinectify
Real User
Sep 11, 2024
Easy to integrate, has a shallow learning curve, and scales dynamically
Pros and Cons
  • "The querying language and the SDKs they've provided over the years have been phenomenal, giving us a significant advantage."
  • "Azure Cosmos DB could be better for business intelligence and analytical queries."

What is our primary use case?

My company developed an anti-money laundering compliance platform specifically for the gaming industry. This multitenant platform utilizes Microsoft Azure Cosmos DB as its core operational database.

We have a high-throughput, large-volume data ingestion process, with substantial data flowing into our environment. We needed to solve two problems: ultra-high volume, requiring speedy reads and writes of hundreds of gigabytes of data per day, and the ability to distribute our platform geographically. Azure Cosmos DB's geo-replication features and the ability to host and scale our database across multiple regions, keeping data close to our customers, were primary deciding factors.

How has it helped my organization?

Azure Cosmos DB is quick to adopt with a shallow learning curve. The average user can be operational within hours or days, handling small to medium data volumes. However, optimizing for ultra-high throughput scenarios involves a steeper learning curve, requiring substantial knowledge to master Azure Cosmos DB. Nonetheless, most users can leverage it as their operational data store with minimal effort.

Our platform boasts several extensive language model features, particularly around summarization capabilities. We use vector searching in Azure Cosmos DB to facilitate the retrieval of an augmented generation model with our LLM implementation. It's a standard RAG implementation using Azure Cosmos DB. Compared to other options, a key advantage of vector indexing in Azure Cosmos DB is the ability to query documents alongside vectors. This pinpoints the precise information required for RAG in our LLM solution, granting us greater flexibility than vector searching in other Azure services.

We integrated the vector database with the Azure OpenAI service for our LLM solution.

The Azure AI services were simple to integrate with the vector database. There was a slight learning curve, especially as we were on the private preview of vector searching. This led to some hiccups with our existing database configurations, specifically regarding continuous backup. We couldn't enable continuous backup and vector searching simultaneously. However, this was solely due to our participation in the preview, and I'm confident this issue won't persist in the general availability release.

Azure Cosmos DB is fantastic for searching large amounts of data when the data is within a single partition. Over the last two weekends, we ingested over 400 gigabytes of data into our Azure Cosmos DB database and saw no change in querying performance compared to when our database was only 20 gigabytes in size. This is impressive and powerful, but the scope is limited to those partition queries.

The first benefit we've seen is increased developer productivity. Azure Cosmos DB is an easy database to work with. Its schema-less nature allows us to iterate quickly on our platform, develop new features, and store the associated data in Azure. Developers find it easy to use, eliminating the need for object-relational mapping tools and other overhead. Geographic replication and the ability to scale geographically is another advantage. This is challenging with other databases, even other NoSQL databases, but Azure Cosmos DB makes it easy. Cost optimization is a major benefit as well. We've been able to run our platform at a fraction of the infrastructure cost our customers incur when integrating with us. This allows us to focus resources on feature development and platform building rather than infrastructure maintenance.

Azure Cosmos DB helped reduce the total cost of ownership. We don't need DBAs, system administrators, or typical IT staff to run the infrastructure because we can use Azure Cosmos DB as a platform or a software-as-a-service data storage solution. This makes the total cost of ownership significantly lower than any comparable solution using relational databases or other NoSQL solutions like MongoDB.

We enable auto-scaling on all of our Azure Cosmos DB resources, which helps us achieve cost optimizations.

What is most valuable?

The querying language and the SDKs they've provided over the years have been phenomenal, giving us a significant advantage. Being a NoSQL database with a schema-less design allows us to optimize costs and reduce the infrastructure we need to manage. While we don't utilize every feature, auto-scaling has been invaluable for optimizing both cost and performance on our platform daily.

What needs improvement?

Azure Cosmos DB could be better for business intelligence and analytical queries. While it excels at high-throughput data ingestion and point reads with low latency, querying within partitions is smooth. Complex cross-partition querying, and BI/analytical tasks often necessitate moving data to other solutions like Fabric and Azure AI Search.

For how long have I used the solution?

I have been using Microsoft Azure Cosmos DB for nine years.

What do I think about the stability of the solution?

Over the four years we have been building, Azure Cosmos DB has not caused us one second of downtime.

The latency and availability of the Azure Cosmos DB is excellent. We have single millisecond latency point reads, which is the majority of the queries that we run on our platform. So, it's an ultra-high performance, ultra-high throughput platform for managing data.

What do I think about the scalability of the solution?

We are confident in Azure Cosmos DB's ability to scale and meet our needs even with massive data volumes. We ingest hundreds of gigabytes of data into Azure Cosmos DB daily, reinforcing our confidence in its scaling capabilities.

How are customer service and support?

Our experience with technical support has always been great. We've been lucky enough to connect with the product team resources at Microsoft around Azure Cosmos DB, and we've received fantastic support from the Azure Cosmos DB team.

How would you rate customer service and support?

Positive

Which solution did I use previously and why did I switch?

I've used MongoDB extensively, both self-hosted and through their SaaS solution, Mongo Atlas. I've also worked with relational databases like PostgreSQL, SQL Server, and MySQL. Additionally, I've experimented with non-document data stores like Cassandra, but not in a production environment. All the other databases have been used in deployed production applications.

Azure Cosmos DB offers a minimal total cost of ownership. No database administration or dedicated teams are needed to manage it, which increases developer productivity compared to relational database solutions. Azure Cosmos DB also provides higher levels of data consistency without the traditional data migration problems of relational databases, and its schema-less nature makes versioning easier. However, there is a steep learning curve for building large-scale applications and optimizing throughput with Azure Cosmos DB. Additionally, its analytical capabilities are not as strong as other solutions.

How was the initial setup?

The deployment was straightforward to initiate. While numerous configuration items are needed for production workloads, particularly key management, getting started remains simple and accessible.

We deployed our infrastructure as code, initially using Azure CLI scripts to deploy AzureCosmos DB alongside other infrastructure components. We have since transitioned to Terraform for this purpose. From an implementation strategy perspective, we are a multi-tenant platform using logical tenancy, meaning a single Azure Cosmos DB database accommodates multiple tenants. We have a relatively large number of collections, approximately 40, within our Azure Cosmos DB database. To optimize cost, we share throughput where feasible and provide dedicated throughput for containers with high read or write volumes.

One person is enough for the deployment.

What's my experience with pricing, setup cost, and licensing?

For the first three years of our company, we were able to run a production environment while spending less than $10,000 a month on our database. In contrast, our customers pay tens of thousands of dollars for the systems we integrate. Therefore, Azure Cosmos DB is a highly cost-optimized solution when used correctly.

What other advice do I have?

I rate Microsoft Azure Cosmos DB ten out of ten.

We use Azure Cosmos DB extensively for searching alongside Azure AI Search, which offers full-text Lucene syntax-compatible querying. While a significant portion of our searches leverage these dedicated search indexes, we still conduct a fair amount directly in Azure Cosmos DB. Although it might not be entirely fair to say that searching isn't Azure Cosmos DB's strong suit, it's worth noting that its capabilities are constrained by partitioning requirements. This limitation places a ceiling on its overall effectiveness for specific scenarios. While Azure Cosmos DB can be extremely valuable for querying within partitions, alternative solutions are often better suited for queries spanning multiple partitions.

I've built tools around the Azure Cosmos DB SDKs to make them incredibly easy to use. My team had no learning curve and could leverage our shared libraries. It took me less than a week to achieve a production-quality implementation for accessing and saving data within a platform.

We have 20 people in the organization who interact with Azure Cosmos DB, consisting of 15 engineers and five others.

Azure Cosmos DB typically requires minimal maintenance, but if data partitioning is not done correctly, some overhead may be incurred due to the need to replicate containers and move data. Thus, while generally low maintenance, some maintenance can be required in certain situations.

For anyone thinking about implementing Azure Cosmos DB, first, understand your data and invest time in understanding the partitioning in Azure Cosmos DB. If you get your head wrapped around the partitioning, everything else will be straightforward.

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.
PeerSpot user
reviewer2596239 - PeerSpot reviewer
Hands on user at a manufacturing company with 10,001+ employees
Real User
Top 10
Dec 16, 2024
Switching to the cloud significantly improved scalability, flexibility, and uptime
Pros and Cons
  • "The connectors, such as the MongoDB connector and the integration with SQL, are incredibly valuable."
  • "Switching to the cloud significantly improved scalability, flexibility, and uptime."
  • "There's a little bit of a learning curve because I was new to Azure. But once you learn the tool, it's pretty straightforward."

What is our primary use case?

Our primary use case for Cosmos DB is unstructured data. We utilize it to spin up databases quickly.

How has it helped my organization?

We previously used on-premises databases. Switching to the cloud significantly improved scalability, flexibility, and uptime. It also addressed our uptime issues and greatly benefited our organization. We've never had issues searching through any amount of data; it's more than capable of searching large amounts of data. 

What is most valuable?

The connectors, such as the MongoDB connector and the integration with SQL, are incredibly valuable.

What needs improvement?

There's a little bit of a learning curve because I was new to Azure. But once you learn the tool, it's pretty straightforward.

For how long have I used the solution?

I have been using the solution for about three years now.

What do I think about the stability of the solution?

We haven't noticed any significant issues with latency, but we don't have many applications. The availability is excellent, and we have multiple availability zones, so nothing goes down. 

What do I think about the scalability of the solution?

The solution can scale very well both up and down, although we predominantly work with smaller databases. We haven't needed extensive scalability yet, but it seems very capable.

Which solution did I use previously and why did I switch?

We previously used MongoDB. The shift to Cosmos made sense as we wanted to move to the cloud and benefit from its MongoDB API connection.

How was the initial setup?

The setup was straightforward. Team members could start using the tool within a few hours, although not at an expert level.

What was our ROI?

As far as I know, it's cheaper compared to running on-prem, although comparing costs exactly can be challenging.

What's my experience with pricing, setup cost, and licensing?

I personally don't deal much with budgets, but our financial analyst hasn't raised any complaints. The pricing aligns well with budget expectations.

What other advice do I have?

I would rate the product an eight or nine out of ten. We are very happy with it as it runs smoothly right out of the box.

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.
PeerSpot user
reviewer2595849 - PeerSpot reviewer
Partner Solution Architect (Microsoft Power Platform) at a tech vendor with 1,001-5,000 employees
Real User
Top 10
Dec 16, 2024
Seamless record creation with JSON for efficient data handling
Pros and Cons
  • "I like the way you can create and delete records. You pass a JSON, and then it creates a record."
  • "It is easy to use because you don't need to know much about Cosmos DB or have prior experience."
  • "Once you create a database, it calls the container, and then items show up. A better description and more guidance would help because the first time I created it, I didn't understand that a container is similar to a table in SQL."

What is our primary use case?

I am building an extension app for DocuSign. One of the ways for me to demonstrate this is by using a third-party database. I read and write data from Cosmos DB using DocuSign tools.

How has it helped my organization?

We wanted to use Azure function apps and Cosmos DB because Cosmos is serverless and non-relational, so it's easy to set up and simple to scale up and down. Overall, it was a good fit. 

What is most valuable?

I like the way you can create and delete records. You pass a JSON, and then it creates a record. It is easy to use because you don't need to know much about Cosmos DB or have prior experience. 

Cosmos DB does a pretty good job of searching. I've never had trouble as long as I search for a unique key or value I'm looking for. If my query is right, it returns the value.

What needs improvement?

Once you create a database, it calls the container, and then items show up. A better description and more guidance would help because the first time I created it, I didn't understand that a container is similar to a table in SQL. 

For how long have I used the solution?

I have been using it for six months.

What do I think about the scalability of the solution?

My use case is like a proof of concept, so the data set is not extremely large, but I know from reading about it that it can scale up well. It should do a good job on large amounts of data. 

How was the initial setup?

The initial setup was simple the first time I used Cosmos DB. It took just a few hours for my small technical team to get used to how Cosmos DB works.

What's my experience with pricing, setup cost, and licensing?

The pricing model has aligned with our expectations. In Azure, setting it as consumption-based or serverless keeps the cost low, but we had instances where automation increased the cost significantly. It was more of a configuration problem, where options to keep it minimal are still present.

Which other solutions did I evaluate?

We wanted to go with Azure function apps and Cosmos DB to keep it serverless and non-relational, making it easy to set up, scale up, and down.

What other advice do I have?

I rate the product as 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.
PeerSpot user
Buyer's Guide
Download our free Microsoft Azure Cosmos DB Report and get advice and tips from experienced pros sharing their opinions.
Updated: September 2026
Buyer's Guide
Download our free Microsoft Azure Cosmos DB Report and get advice and tips from experienced pros sharing their opinions.