Try our new research platform with insights from 80,000+ expert users
Christian Gomez Rua - PeerSpot reviewer
IT Data Architect & Manager at Ternium Mexico S.A. de C.V.
Real User
Top 10
It has improved efficiency and response times, but the interoperability with some solutions could be better
Pros and Cons
  • "Microsoft Azure Cosmos DB has helped to improve efficiency, providing good response times and allowing the storage of AI process results, which is crucial for feedback loops."
  • "Microsoft Azure Cosmos DB offers the response times needed for advanced analytics applications."
  • "The integration with other solutions needs to improve because Cosmos DB's interoperability is lacking in some scenarios. For example, I'm currently implementing Fabric. That involves migrating from environments without apps, processing data and users, and taking them to Fabric."
  • "Cosmos DB is expensive, and the RU-based pricing model is confusing."

What is our primary use case?

The primary use case is focused on advanced analytics. We use Microsoft Azure Cosmos DB for storing results from OpenAI models, acting as a temporary information repository for APIs, and for log systems. We also experiment with its Vector Search capability.

How has it helped my organization?

Microsoft Azure Cosmos DB has helped to improve efficiency, providing good response times and allowing the storage of AI process results, which is crucial for feedback loops. 

The tool makes it easier for us to store data in a database. Our company is a Microsoft shop using Azure, and our big data ecosystems are oriented to solve needs in the Azure architecture. We are looking at maintaining the tools within the same ecosystem without breaking the whole scenario of the solutions we have to set up. Cosmos DB helps us do those types of operations. 

The performance is so good it creates an ecosystem that allows data scientists to develop applications without clashing too much or losing the security and governance over the information.

What is most valuable?

Microsoft Azure Cosmos DB offers the response times needed for advanced analytics applications. It supports multiple use cases, including storage of AI model results and temporary information repositories. 

Performance and security are valuable features, particularly when using Cosmos DB for MongoDB emulation and NoSQL. The platform's ability to efficiently tokenize AI models for later consumption is also a benefit.

Within the layer, we're using it with OpenAI. That is the main one. If we use document intelligence from the entire database layer,  it is where we have our developments deployed on Kubernetes pods that connect and leave data.

What needs improvement?

The integration with other solutions needs to improve because Cosmos DB's interoperability is lacking in some scenarios. For example, I'm currently implementing Fabric. That involves migrating from environments without apps, processing data and users, and taking them to Fabric. 

When I have the pile of information that I need a data scientist to look at, I tell them to use Fabric as the development center. They can't connect to Cosmo DB, but I have data there. The documentation could be clearer, especially concerning infrastructure aspects.

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

For how long have I used the solution?

We have used Microsoft Azure Cosmos DB for about two years.

What do I think about the stability of the solution?

We haven't experienced significant stability issues with Cosmos DB. Occasionally, latency occurs between applications, but it has not caused major problems.

What do I think about the scalability of the solution?

While the scalability of Microsoft Azure Cosmos DB is theoretically simple and efficient, there is a degree of uncertainty. Dynamic scalability doesn't instill full confidence and can lead to increased costs if not managed correctly.

How was the initial setup?

The initial setup requires a steep learning curve due to the differences between the query language in MongoDB and NoSQL, making it a demanding task for developers.

It requires an educational process that can't be achieved quickly. It took us about four to six months. It's an adaptive process that's not difficult, but it is time-consuming. 

What about the implementation team?

The training for using Microsoft Azure Cosmos DB has been ongoing for four to six months, indicating a lengthy adaptation process for the development team.

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

Cosmos DB is expensive, and the RU-based pricing model is confusing. Although they have a serverless layer, there are deficiencies in what I can define and assign to a database. Estimating infrastructure needs is not straightforward, making it challenging to manage costs.

What other advice do I have?

I rate Microsoft Azure Cosmos DB seven out of 10. 

Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Flag as inappropriate
PeerSpot user
Aroosh Kumar - PeerSpot reviewer
Azure Consultant at Deloitte
Consultant
Top 10
Its performance and efficiency make it a brilliant choice for real-time data handling
Pros and Cons
  • "Microsoft Azure Cosmos DB is very fast. Data retrieval and data storage are very quick."
  • "Microsoft Azure Cosmos DB is very fast."
  • "One area for improvement is the ease of writing SQL queries and stored procedures in Microsoft Azure Cosmos DB."
  • "One area for improvement is the ease of writing SQL queries and stored procedures in Microsoft Azure Cosmos DB. Writing an SQL query and a stored procedure on top of that is a little challenging."

What is our primary use case?

In our project, I used Microsoft Azure Cosmos DB primarily for storing new or updated JSON documents.

How has it helped my organization?

With SQL Server, we have to use a lot of joins when a lot of tables are present in different databases. When we join tables present in different databases, we first load a table in memory and then apply join on them. With Microsoft Azure Cosmos DB, we do not have to do that. It solves the problem of joining different tables.

We did not have to convert JSON files to a relational database format. We did not have to separate the JSON file into a data model. We could directly use those files. We did not need any primary-foreign key relationships or any relationships between tables. We just needed a partition key. Based on that, we could simply save data into Microsoft Azure Cosmos DB.

Its performance is good. Integrations are very quick. In my project, Microsoft Azure Cosmos DB was at the center of the business. Everything was running around Microsoft Azure Cosmos DB. Performance-wise, it solved all the latency problems that they were facing before.

What is most valuable?

Microsoft Azure Cosmos DB is very fast. Data retrieval and data storage are very quick. It is known for its speed and efficiency, with quick data retrieval and storage operations without latency. You can do a lot of operations in real time.

What needs improvement?

One area for improvement is the ease of writing SQL queries and stored procedures in Microsoft Azure Cosmos DB. Writing an SQL query and a stored procedure on top of that is a little challenging. It is not so easy with Microsoft Azure Cosmos DB. It requires some understanding. It is a relatively new product, so the knowledge gap is there. There should either be better documentation or an easier way to implement. We should be able to write a stored procedure in a simple language like SQL.

Additionally, there should be support for maintaining large files. It does not support files that are more than 2 MB in size.

Other than that, I do not have any input. It is a good product. It solves all the problems I have seen.

For how long have I used the solution?

I have been using Microsoft Azure Cosmos DB for three years. I last used it about six months ago.

What do I think about the stability of the solution?

I have not encountered any stability issues with Microsoft Azure Cosmos DB. Its stability is commendable. I would rate it a ten out of ten in terms of availability and latency.

What do I think about the scalability of the solution?

There was a challenge concerning scaling related to RU limits, but Microsoft has introduced dynamic RUs to tackle this issue. I am not sure about its recent effectiveness, but earlier, I manually increased RU capacity to address concurrent access.

It is capable of quickly searching through large amounts of data, but our project was not very extensive. We did not have a lot of records. However, it can support a large amount of data. From this aspect, it is a brilliant product.

We had about 40 people on our team using Microsoft Azure Cosmos DB.

How are customer service and support?

I rarely needed to reach out to Microsoft for technical support regarding Microsoft Azure Cosmos DB. After it was up and running, we did not require much support.

How would you rate customer service and support?

Neutral

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

Other than Microsoft Azure Cosmos DB, I have used SQL databases. I have not used any NoSQL database.

How was the initial setup?

It was a PaaS solution. I was not involved in its initial setup, but it is simple and quick, taking about five to ten minutes. If you want concurrency, some documentation is available, but it would be helpful to have some hands-on examples.

We used the ARM templates available in the Azure portal for deployment. We had CI/CD pipelines, and we deployed them using ARM templates. That is the strategy we use for the deployment of Microsoft Azure Cosmos DB.

It does not require any maintenance from our side.

It takes about three months to train someone on it. They only need to learn how to query the database.

It took me around one and a half years to understand the real benefits of Microsoft Azure Cosmos DB. It is a nice product.

What was our ROI?

In terms of performance, Microsoft Azure Cosmos DB benefited us greatly by solving latency and data retrieval issues, but I cannot comment on cost savings as the financial aspects were managed by others.

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

The pricing is perceived as being on the higher side. However, if you have large data operations, it might reduce costs due to performance efficiencies.

Which other solutions did I evaluate?

I did not evaluate other NoSQL databases; the client chose Microsoft Azure Cosmos DB based on its performance.

What other advice do I have?

I would recommend Microsoft Azure Cosmos DB if you are looking for performance. I am not sure about the pricing, but if you have a large number of users, Microsoft Azure Cosmos DB is helpful.

If you are using proper indexes, data retrieval is fast and search is easy. Otherwise, it will take a lot of RUs to get the results.

If you are migrating from traditional or legacy workflows to Microsoft Azure Cosmos DB, it would require a lot of rework. For new implementations, Microsoft Azure Cosmos DB is advisable.

I would rate Microsoft Azure Cosmos DB a nine 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
Flag as inappropriate
PeerSpot user
Buyer's Guide
Microsoft Azure Cosmos DB
May 2025
Learn what your peers think about Microsoft Azure Cosmos DB. Get advice and tips from experienced pros sharing their opinions. Updated: May 2025.
856,873 professionals have used our research since 2012.
Tiago Duarte - PeerSpot reviewer
CTO at Stellium Consulting
Real User
Top 10
You can scale it to add more capacity while providing the level of performance that customers expect
Pros and Cons
  • "We value the replication and regional availability features that Cosmos DB provides. The replication includes read replicas and write replicas. The recent addition of vectorization and similarity comparisons add values for AI workloads. The performance and scaling capabilities of Cosmos DB are excellent, allowing it to handle large workloads compared to other services such as Azure AI Search."
  • "Cosmos DB performs exceptionally well and has not caused any issues that necessitate adjustments in nodes for improved performance."
  • "A minor improvement would be enabling batch operations through the UI. Currently, to delete all documents in a collection, we must use an API, which some of my team finds inconvenient for admin tasks."

What is our primary use case?

We have been using Cosmos DB for everything involving non-relational data. Recently, we’ve been utilizing it more for AI purposes, especially for conversation histories.

How has it helped my organization?

Cosmos DB performs well with production workloads that have many gigabytes of information. You can scale it to add more capacity while providing the level of performance that customers expect.

What is most valuable?

We value the replication and regional availability features that Cosmos DB provides. The replication includes read replicas and write replicas. The recent addition of vectorization and similarity comparisons add values for AI workloads. The performance and scaling capabilities of Cosmos DB are excellent, allowing it to handle large workloads compared to other services such as Azure AI Search.

The solution is straightforward in terms of the interface, API set, and automation capabilities. The learning curve is short if you're familiar with the world of non-relational data. It takes about three to six months to learn about the distribution capabilities of Cosmos as a service. It takes a bit more time to learn the networking settings that you can use for Cosmos in South Asia, including virtual networks, private networks, finance, etc.

The vector database is interesting. We haven't used it before. We were using Azure AI search for that, but we've had great conversations with the product team, and we realize that a couple of workloads are more appropriate for Cosmos. The search results quality is still determined by Azure AI search, and we haven't used vector databases in production workloads. However, from what we've seen from a hands-on demo, it can help.

What needs improvement?

A minor improvement would be enabling batch operations through the UI. Currently, to delete all documents in a collection, we must use an API, which some of my team finds inconvenient for admin tasks.

For how long have I used the solution?

We have been using Cosmos DB for six years.

What do I think about the stability of the solution?

Cosmos DB performs exceptionally well and has not caused any issues that necessitate adjustments in nodes for improved performance.

What do I think about the scalability of the solution?

The solution scales exceptionally well. Partitioning, indexation for collections, and the dynamic scaling feature allow us to manage performance and costs effectively. We like that it can auto-scale to demand, ensuring we only pay for what we use.

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

Before Cosmos DB, we used Python for non-relational data. However, choosing Cosmos was straightforward due to our focus on leveraging Microsoft services.

How was the initial setup?

For our migration, we had to integrate both products. The source had its own interface and APIs. In terms of syncing data, we had to incorporate it directly with Cosmos. Cosmos has excellent APIs and operation services. It was easy to orchestrate migration from one data center system to the other.

The challenges were more related to network performance than anything else. We had to build our migration very close to the Microsoft network. We were working with higher network latency by doing it inside a VM on Azure.

What about the implementation team?

Our team built a migration orchestration integrating both the source and Cosmos systems using APIs.

What was our ROI?

Since starting with Cosmos DB, we have seen an overall reduction in our total ownership cost of 5 to 10 percent.

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

Everything could always be cheaper. I like that Cosmos DB allows us to auto-scale instead of pre-provisioning a certain capacity. It automatically scales to the demand, so we only pay for what we consume.

What other advice do I have?

I rate Cosmos DB nine out of 10.

Which deployment model are you using for this solution?

Public Cloud
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
Flag as inappropriate
PeerSpot user
reviewer2595795 - PeerSpot reviewer
Lead Solutions Architect at a energy/utilities company with 10,001+ employees
Real User
Top 20
Dynamic scaling has reduced our overhead
Pros and Cons
  • "The ability to scale automatically is very valuable. Additionally, multi-region support automatically synchronizing to a different region for multi-region applications is a cool feature. It's more of a lift with other databases to configure that extra region and set up replication, even if it's on the cloud. With Azure, it's just a button click. It's that simple."
  • "The ability to scale automatically is very valuable."
  • "The auto-scaling feature adjusts hourly. We have many processes that write stuff in batches, so we must ensure that the load is spread evenly throughout the hour. It would be much easier if it were done by the minute. I'm looking forward to the vector database search that they are adding. It's a pretty cool new feature."

What is our primary use case?

Our primary use case for Cosmos is the storage of shell-fed signs and our pricing systems. We use it as a transactional database on the back end.

What is most valuable?

The ability to scale automatically is very valuable. Additionally, multi-region support automatically synchronizing to a different region for multi-region applications is a cool feature. It's more of a lift with other databases to configure that extra region and set up replication, even if it's on the cloud. With Azure, it's just a button click. It's that simple. 

The learning curve depends on your background. It takes time to learn if you're from a relational database background like us. However, it's fairly straightforward from a scalability perspective once you get the hang of it. You need to be aware of certain concepts like partitions and partition keys. Once you get those, I think it's fairly okay.

What needs improvement?

The auto-scaling feature adjusts hourly. We have many processes that write stuff in batches, so we must ensure that the load is spread evenly throughout the hour. It would be much easier if it were done by the minute. I'm looking forward to the vector database search that they are adding. It's a pretty cool new feature. 

For how long have I used the solution?

I have used Cosmos for about five years.

What do I think about the stability of the solution?

The latency and availability are good. I don't have any complaints there. It goes back to how you're retrieving data and whether it's structured correctly. 

What do I think about the scalability of the solution?

Cosmos can definitely scale well, but it comes with a cost. One of our databases is quite large and scaled up significantly due to our needs.

How was the initial setup?

We have two databases, so it was challenging to define the partition key and ensure the workloads are spread out. We have millions of records in our Cosmos database, so spreading that out was difficult. We had to spread out the load to avoid a 429 error for a request that was too large. Partition key is more of a learning experience to understand the right thing to do. The entire process took around six months. It wasn't too hard.

What was our ROI?

We have reduced our overhead through dynamic scaling. I can't say precisely how much we've reduced our total cost of ownership using Cosmos DB, but we have a similar on-prem workload running on SQL, and we only pay a fraction for Cosmos.

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

Cosmos is cheaper than other solutions, but you must be smart about how you use it to keep costs down. We've made mistakes where the cost has increased more than we expected. You have the opportunity for it to be cheap or costly.

Which other solutions did I evaluate?

We were looking for a multi-region document database, and the ease of configuring multi-region in Cosmos was a significant factor in our choosing the solution. We also wanted to bring costs down, which was the other reason.

What other advice do I have?

I would rate Cosmos an eight out of ten. Be cautious about spreading out the load evenly, especially when dealing with large volumes to prevent getting errors.

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.
Flag as inappropriate
PeerSpot user
Prabakaran SP - PeerSpot reviewer
Software Architect at a financial services firm with 1-10 employees
Real User
Top 20
Exceptional search capability and fast data retrievals
Pros and Cons
  • "The searching capability is exceptional. It is very simple and incomparable to competitors."
  • "The searching capability is exceptional. It is very simple and incomparable to competitors."
  • "The RUs still appear to be a black box for everyone. Even though they explain read and write RUs, it remains unclear for many users."
  • "I would give a low rating to Microsoft support, as whenever I talked to them, I never got a solution. I had to guide them."

What is our primary use case?

We have many use cases. We are using Microsoft Azure Cosmos DB for our event streaming framework. We are using Microsoft Azure Cosmos DB to store all the event data for AI activities.

We are also using it for a RAG-based solution, though it is not entirely RAG-based. We are using Microsoft Azure Cosmos DB as a staging solution, and then we are using the AI search to index it and continue to the RAG for the LLM.

We are just using it as a staging solution. We have use cases for extracting huge documents, which can be more than 500 pages or even 10,000 pages. We cannot directly use the LLM, so we have to use a RAG-based approach. For that, we have chosen Microsoft Azure Cosmos DB and we are using the vectors there. However, instead of directly querying the vectors in Microsoft Azure Cosmos DB, we are indexing that in AI search.

What is most valuable?

The searching capability is exceptional. It is very simple and incomparable to competitors. With SQL, we have to install everything, but this is pretty quick. We have a Bicep template. Using the Bicep template to create Microsoft Azure Cosmos DB containers and partition keys makes everything convenient. Scaling is also convenient.

What needs improvement?

The RUs still appear to be a black box for everyone. Even though they explain read and write RUs, it remains unclear for many users. With Microsoft Azure Cosmos DB, we are using event streaming in the entire organization. We are using a framework for event streaming, and we suddenly reached a huge amount - the capacity of 20 GB partition key. When it reaches 100% of RUs, we face issues. We have to work on rebuilding the partition key. 

Regarding billing, we need better control. Sometimes it exceeds the forecasted budget. More clarity on RUs would be beneficial, even though documentation exists.

There is a 2 MB limitation for a document, which is a hard limit. Additionally, modeling in Microsoft Azure Cosmos DB is more challenging compared to RDBMS and other NoSQL solutions because we cannot store everything in one place. Since it's NoSQL, we sometimes need to split one document into multiple containers due to the 2 MB limitation.

For how long have I used the solution?

I have been using it for more than two years.

What do I think about the stability of the solution?

Its stability is good. I would rate it an eight out of ten for stability.

What do I think about the scalability of the solution?

Scalability is pretty good. I would rate it an eight out of ten for scalability.

How are customer service and support?

I would give a low rating to Microsoft support, as whenever I talked to them, I never got a solution. I had to guide them.

If the support ticket lands in certain regions such as Sweden, they have more knowledge and the ticket gets resolved easily. At times, it moves between departments, requiring escalation to get the correct person involved.

The support team needs improvement in understanding who they are talking to. They should not ask basic questions when speaking with experienced users. I am deeply knowledgeable about Microsoft Azure Cosmos DB, which I have had to explain to the support team.

How would you rate customer service and support?

Neutral

How was the initial setup?

It is very simple. We can't compare it with any competitor. We just use the Bicep template.

Its implementation takes a maximum of one hour.

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

Because of the lack of understanding about RUs, the costs become unpredictable. It sometimes goes over the budget.

What other advice do I have?

Currently, they are implementing Fabric and OneLake solutions. Fabric appears faster. According to Microsoft representatives, querying in Fabric instead of Microsoft Azure Cosmos DB will be quicker. However, I remain confident in the querying capability of Microsoft Azure Cosmos DB.

It is pretty good, and currently, everyone wants to move from Microsoft Azure Cosmos DB to Databricks, but when I query data in Databricks, it takes considerable time with huge amounts of data. It stores in the BLOB in the backend, but when we use Microsoft Azure Cosmos DB, it retrieves the data much faster. The main consideration is being careful with fixing the partition key.

I would strongly recommend it for new projects. When you create a project from scratch, it is easy to implement Microsoft Azure Cosmos DB because the library is very pretty good. You can just use the library and create a container. I do not see any complexity at all in using Microsoft Azure Cosmos DB. 

I would 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.
Flag as inappropriate
PeerSpot user
Kunal Mukerjee - PeerSpot reviewer
Vice President, Technology, Strategy & Architecture at Docusign
Real User
Top 20
The solution has improved search result quality, throughput, and query latency
Pros and Cons
  • "It is integral to our business because it helps manage schema and metadata for all our documents and customers. The AI insights we glean based on Azure OpenAI also end up in Cosmos DB. We need a NoSQL store because the schema is dynamic and flexible, so Cosmos DB is a great fit. It has four nines or possibly five nines availability, excellent geo-distribution, and auto-scaling."
  • "Cosmos DB is effective at handling large queries."
  • "The challenge for us is always scale."

What is our primary use case?

I'm the primary systems architect at DocuSign. We just launched a product at called Intelligent Agreement Management, and a central pillar of that is schema understanding. We use Microsoft Azure Cosmos DB as our schema store. It's the brains of our entire system. 

How has it helped my organization?

It is integral to our business because it helps manage schema and metadata for all our documents and customers. The AI insights we glean based on Azure OpenAI also end up in Cosmos DB. We need a NoSQL store because the schema is dynamic and flexible, so Cosmos DB is a great fit. It has four nines or possibly five nines availability, excellent geo-distribution, and auto-scaling. 

Cosmos DB has improved search result quality, throughput, and query latency. There are trade-offs to finding the sweet spot among all of these. Having a NoSQL solution that can do that in a 100 percent Azure shop is the best fit we could want. 

What is most valuable?

The features that stand out as most valuable are the autoscaling and hierarchical partition keys. We use account IDs at a higher level and entity IDs at a lower level. That gives us optimal query performance for our workloads.

AI has been a game-changer for new people without expertise, making it easier to use and optimize. You can ask GPT or Copilot for optimization strategies. If you have queries that are not performing well, you can feed the same queries, execution plan, and other things to the AI. The AI returns reasonable recommendations for what to do. 

Cosmos DB is effective at handling large queries. At DocuSign, we're processing over a billion signers and massive agreements and contracts. These things are being used for business-critical workloads, so performance, scale handling, and latency are crucial. Without these, we wouldn't have a product that anyone would want to use. 

For how long have I used the solution?

I have worked with Cosmos DB at my company for the past 18 months, but I have used Cosmos at Microsoft for nearly a decade.

What do I think about the stability of the solution?

Cosmos DB provides impressive stability due to its high availability and ability to handle massive data volumes, which is essential for our business-critical workloads.

What do I think about the scalability of the solution?

We have found Cosmos DB’s scalability to be exceptional, enabling horizontal and vertical sharding and supporting massive scale with efficient auto-scaling.

How are customer service and support?

The team behind Cosmos DB has been highly responsive, providing excellent transparency and high-quality postmortem reviews during incidents, ensuring continuous support and improvement.

How would you rate customer service and support?

Positive

How was the initial setup?

The initial setup was straightforward. Cosmos DB's integration went quickly due to the team's prior experience with Azure services, allowing us to prototype within a couple of months.

The challenge for us is always scale. We needed to move all the tables in lockstep that are involved in join queries. In some cases, we came up with a structured pipeline where stage one would go to SQL, and some of the query hints for the Cosmos DB thing would come from that first stage and so on. That was a migration challenge in normalizing the data, bringing it into Cosmos, and then, again, denormalizing some of the data. 

What about the implementation team?

The critical mass of internal expertise, particularly from people previously working with Azure, enabled a smooth implementation with Cosmos DB.

What was our ROI?

Cosmos DB has always met our targets. However, we've always had our schema store on Cosmos DB, so it's not like we started with something expensive and brought our TCO down using Cosmos. Still, it's an excellent option for NoSQL or semi-structured data because our agreements start as a morass of raw data from PDF, OCR PDF, or paper OCR scans. 

After that, we match the structure with a known entity and for that known customer and run queries on Cosmos DB to bring out the rest of the structure and use AI to enhance it even further. In some cases, the customer will add custom fields to their entities. Cosmos gives us a low turnaround time from when the dynamic nature kicks into when the results return from that new schema information back to the same customer. It's a rich, complex scenario, but also a massive scale of data and customers.

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

The pricing model for Cosmos DB has aligned well with our budget expectations. We did not encounter pain points related to costs and found it cost-effective compared to high-end SQL solutions initially considered.

Which other solutions did I evaluate?

When I joined, the company was already invested in Azure, so there was never a bake-off between Cosmos DB and offerings from AWS. We implemented Cosmos initially because we have a massive transaction database on SQL. On things like the total cost of ownership, Cosmos DB shines. It seems to be the correct approach for our semi-structured data and our schema and entity store. A combination of Cosmos DB and SQL Azure was how we shaped our architecture on this journey, but we didn't evaluate Cosmos DB against non-Azure NoSQL databases.

What other advice do I have?

I would rate Cosmos DB as an eight out of 10 for its overall capabilities, responsiveness, and alignment with our needs.

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.
Flag as inappropriate
PeerSpot user
Co-Founder at arpa
Real User
Top 5Leaderboard
Caters to different types of applications and offers scalability and availability
Pros and Cons
  • "Microsoft Azure Cosmos DB is a good solution for distributed application requirements. We can perform multi-modeling."
  • "For modern applications, I would recommend Microsoft Azure Cosmos DB."
  • "Overall, it works very well and fits the purpose regardless of the target application. However, by default, there is a threshold to accommodate bulk or large requests. You have to monitor the Request Units. If you need more data for a particular query, you need to increase the Request Units."
  • "Overall, it works very well and fits the purpose regardless of the target application. However, by default, there is a threshold to accommodate bulk or large requests."

What is our primary use case?

For retail, all the backend data, such as merchandise items, is stored in Microsoft Azure Cosmos DB. This data is processed by backend APIs, and the UI can perform displays, printouts, edits, creations, etc.

How has it helped my organization?

Cost-wise, it is transparent. It supports traceability. Any activity happening in your Microsoft Azure Cosmos DB can be seen from the Azure portal via log events. If you have some sort of observability, you can centralize logging and create historical insights or virtualization based on the activity. By default, Microsoft Azure Cosmos DB provides all of that on their main portal.

It is responsive when you have a large dataset stored in your Microsoft Azure Cosmos DB. It is no problem. You can quickly scale it. Unlike traditional solutions, you do not have to deal with a separate team managing the database.

Search results have been good. It is a good experience because you can search results via the Azure portal, via a query, or via CLI. You have plenty of options. Aside from that, you can do quick scaling of your Microsoft Azure Cosmos DB whenever you have an issue with the workload, capacity, etc.

Traditional database solutions require back-and-forth coordination between teams which can lead to delays in implementing simple tasks. With Microsoft Azure Cosmos DB running on the cloud, the developer can do a quick query, and the operator can do technical analysis or troubleshooting. It is beneficial overall in terms of operational effectiveness.

Optimization is achieved through indexes. It is pretty similar to other SQL or database solutions. Microsoft Azure provides Data Studio, where you can explore your schema, tweak it, create a backup, and restore existing data within Microsoft Azure Cosmos DB. These tools make your life easier if you do not like working with the CLI.

What is most valuable?

Microsoft Azure Cosmos DB is a good solution for distributed application requirements. We can perform multi-modeling. For modern applications, I would recommend Microsoft Azure Cosmos DB. It caters to different types of applications and also provides an API base wherein you can perform automated updates for your Microsoft Azure Cosmos DB resources.

It provides all the common features that other database solutions offer. The difference is that Microsoft Azure Cosmos DB is cloud-hosted. You can host it on-prem, but running in the cloud simplifies everything in terms of support and availability.

What needs improvement?

Overall, it works very well and fits the purpose regardless of the target application. However, by default, there is a threshold to accommodate bulk or large requests. You have to monitor the Request Units. If you need more data for a particular query, you need to increase the Request Units.

For how long have I used the solution?

I have only used the technology for three to four months.

What do I think about the stability of the solution?

It depends on how you configure your Microsoft Azure Cosmos DB. If you are using it as a standalone service, you are unlikely to gain the full benefits of having Microsoft Azure Cosmos DB running on the cloud. However, if you consider scale sets and scalability, for example, you can achieve higher stability.

With Microsoft Azure Cosmos DB, we created an availability zone to ensure that there is a replica of the primary Microsoft Azure Cosmos DB instance. If the primary goes down, there is a secondary database that they can use for the application. The backend application gets repointed to the secondary instance.

I do not see any problem with the latency. Connecting from your local client like Azure Data Studio to your Microsoft Azure Cosmos DB can take time, but if you are going to connect an application to the database in the same region, there is no latency at all.

What do I think about the scalability of the solution?

It is highly scalable. I would rate it a nine out of ten for scalability.

We can quickly scale using Terraform. We can perform horizontal and vertical scaling with Terraform and apply it. It will automatically reflect in our Azure environment.

How are customer service and support?

Excellent support always comes from Microsoft. If you have a problem with different services, you just raise a ticket, and someone will reach out to you. I can elevate the severity depending on the criticality of your issues and the impact.

How would you rate customer service and support?

Positive

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

We did not use any other solution previously because this is a new project for modernizing the merchandising area.

How was the initial setup?

The setup is easy, especially in the cloud, so I would rate it a nine out of ten for the ease.

All our infrastructure layers are being controlled by Terraform. If we want to set up a new environment, it can be done within a day for not only Microsoft Azure Cosmos DB but also all resources required for an end-to-end application flow.

What about the implementation team?

You can do it yourself. They have good documentation, which is easy to follow.

What was our ROI?

You can get an ROI in a year, provided you deploy it properly with the right baseline forecasted plan in terms of resource sizing. There are many factors when it comes to ROI, such as how quickly you can onboard your application and consume the backend Microsoft Azure Cosmos DB. For those new to the cloud, it might be hard to get the ROI quickly, but those with existing resources in the cloud can achieve their ROI in the short term.

It can save a lot if you perform regular monitoring. If you have a monitoring team for checking the overall utilization of Microsoft Azure Cosmos DB resources, it will save a lot of cost. You can react quickly and trim down the specs, memory, RAM, storage size, etc. It can save about 20% of the costs.

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

Its cost is transparent. Pricing depends on the transaction and data size, but overall, it is cheaper compared to hosting it on your corporate network due to other factors like power consumption. 

Current pricing is fine, and you can scale it afterward. You can start with a small size and scale eventually. That is a benefit of having Microsoft Azure Cosmos DB on the cloud.

Which other solutions did I evaluate?

It was the primary platform choice of the client at the time.

What other advice do I have?

You can quickly learn Microsoft Azure Cosmos DB if you are familiar with how databases work.

Microsoft Azure Cosmos DB offers all you need for a particular database solution. It is better if you can host it in the cloud, applying security controls like data at rest and data in transit. You must ensure Microsoft Azure cloud is only accessible in a secure manner.

Scalability-wise, you can quickly scale your Microsoft Azure Cosmos DB, unlike on-premises, where you must request and procure additional resources. There is no such need; you can use infrastructure as code like Terraform and adjust the resource specs whenever you like. There are no capacity and workload concerns.

I would rate Microsoft Azure Cosmos DB a nine 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.
Flag as inappropriate
PeerSpot user
Noman Saeed - PeerSpot reviewer
Principal Consultant - D365 F & O Technical Solution Architect at Visionet Systems Inc.
Consultant
Top 20
It provides concrete and optimized data when searching for new products on the site
Pros and Cons
  • "Cosmos is preferred because of its speed, robustness, and utilization. We have all the merchandising information in Cosmos DB, which provides concrete and optimized data when searching for new products on the site. It is faster than other relational databases."
  • "Cosmos is preferred because of its speed, robustness, and utilization."
  • "The main area of improvement is the cost, as the expense is high. Also, when writing processes into Cosmos, sometimes the threshold is met, which can be a problem if developers have not written the code properly, limiting calls to five thousand. These aspects need addressing."
  • "The main area of improvement is the cost, as the expense is high. Also, when writing processes into Cosmos, sometimes the threshold is met, which can be a problem if developers have not written the code properly, limiting calls to five thousand."

What is our primary use case?

We use Cosmos DB as a database for the cache mechanism. We have a product integrating e-commerce platforms with backend ERPs, pulling merchandising data. We maintain millions of products in the ERP and store them in Cosmos DB in document format. When a query comes from the e-commerce platform, it goes directly to Cosmos.  

How has it helped my organization?

Cosmos is preferred because of its speed, robustness, and utilization. We have all the merchandising information in Cosmos DB, which provides concrete and optimized data when searching for new products on the site. It is faster than other relational databases.

It can query large amounts of data efficiently, depending on how you write the queries. This is a Document Database, and the system needs to read the whole document. If that is correctly clustered, then it will be faster, but if the developer makes some mistakes, it won't be optimized. 

What is most valuable?

The most valuable feature is the data writing process, where we write data into batch segments. The built-in vector database is helpful. There's one vector for the product and another for the price. I don't have much experience with vectors because we use Cosmos as a cache DB. You won't see any major challenges when you use it as a more significant enterprise application. I would rate the vector database's interoperability with other solutions an eight out of 10. 

What needs improvement?

The main area of improvement is the cost, as the expense is high. Also, when writing processes into Cosmos, sometimes the threshold is met, which can be a problem if developers have not written the code properly, limiting calls to five thousand. These aspects need addressing.

For how long have I used the solution?

I have been using Cosmos DB for three years.

What do I think about the scalability of the solution?

I would rate the interoperability of the vector database with other solutions as eight out of ten. It's good, but the performance depends on how well queries are written.

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

We compared MongoDB and Cosmos DB. Cosmos DB is easier to configure, and our team is already familiar with managing it, providing an advantage.

How was the initial setup?

The initial setup was straightforward, with no major challenges. We onboarded the team in no more than three days. 

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

The cost of using Cosmos DB is high, which sometimes raises concerns from clients regarding the increased solution cost. While it has helped decrease the overall cost of ownership, the specific figures are not readily available.

What other advice do I have?

I would rate Azure Cosmos DB eight out of 10. The solution is variously challenging but manageable once the team is familiar.

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?

Disclosure: My company has a business relationship with this vendor other than being a customer:
Flag as inappropriate
PeerSpot user