Try our new research platform with insights from 80,000+ expert users
Joel Nation - PeerSpot reviewer
CTO at Imminently
Real User
Significantly reduced our total cost of ownership but the indexing capabilities have room for improvement
Pros and Cons
  • "Cosmos DB's greatest strengths are its easy setup and affordability, especially for those who understand its usage."
  • "The current data analytics of Cosmos DB is inefficient for large-scale queries due to its transactional design."

What is our primary use case?

We develop SaaS applications for our products and external clients, utilizing Cosmos DB as the data storage layer for all semi-structured data.

We chose Cosmos DB because it addressed our need to store and query data with varying structures. While object storage is cost-effective for large datasets, it lacks querying capabilities. Traditional relational databases like SQL Server or Oracle are expensive and inflexible, posing challenges for our dynamic data models and frequent changes. Cosmos DB provided a solution with its dynamic data model and efficient querying capabilities, allowing us to accommodate diverse customer needs and evolving data structures.

How has it helped my organization?

Our focus is primarily on data filtering and querying rather than extensive text-based searches. While we previously utilized alternative products, we now predominantly rely on Cosmos DB for these tasks due to its ease of use and management. This allows us to quickly onboard customers, especially startups and smaller businesses with evolving needs, as Cosmos DB's flexibility enables rapid data model modifications without significant data management concerns.

For basic queries, Cosmos DB is a very fast and efficient option.

The main benefit of Cosmos DB is its flexibility. It's easier for our developers to work with than previous solutions, and it's better for our customers because we can quickly change and optimize the data structure as needed, eliminating the need to explain limitations. We've also observed that Cosmos DB has improved over time.

Leveraging our prior experience with similar systems, we immediately recognized the advantages of Cosmos DB. Its quick setup streamlined our implementation process, and after addressing a few minor challenges, we could utilize it effectively and efficiently.

Cosmos DB has significantly reduced our total cost of ownership compared to the more expensive alternative we previously used. It's a much cheaper and more efficient solution for our use cases. However, as some of our customers grow, we need to be more strategic with our implementation, requiring additional engineering and planning to keep costs down. While Cosmos DB is initially inexpensive, managing costs at scale requires proactive measures.

Cosmos DB is easy to learn if you're familiar with NoSQL databases, as the concepts are essentially the same. You'll quickly grasp it if you understand NoSQL principles. However, if you're unfamiliar with NoSQL, it might take longer, as Cosmos DB differs from traditional databases. This learning curve applies to all NoSQL products, as understanding the fundamental differences between NoSQL and traditional databases is crucial.

What is most valuable?

Cosmos DB's greatest strengths are its easy setup and affordability, especially for those who understand its usage. Compared to products like Oracle's Autonomous JSON, Cosmos DB offers greater driver and code support, making it significantly easier to learn and use.

What needs improvement?

Cosmos DB is quick at searching through basic datasets, though its indexing capabilities may not be as robust as some competitive solutions. This can make it challenging to perform complex queries on large datasets.

The current data analytics of Cosmos DB is inefficient for large-scale queries due to its transactional design. While tools like Synapse can transfer data to an analytical store, there's no effective way to utilize that data. Cosmos, in particular, is not optimized for analytical queries, especially with large datasets, and lacks the cost-effectiveness of solutions like Oracle Autonomous JSON, which seamlessly integrates analytical capabilities. Although Microsoft offers various tools, a comprehensive solution for efficient analytical queries within this system remains elusive, short of implementing a full-blown SQL Server.

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

For how long have I used the solution?

I have been using Microsoft Azure Cosmos DB for two to three years.

What do I think about the stability of the solution?

The latency and availability of Cosmos DB have been excellent. I haven't had to worry about it; the latency has been consistently low, and I can't recall the last time we experienced an outage or performance issue.

Cosmos DB has only been down once the entire time we've used it, and the outage lasted only two hours.

I would rate the stability of Cosmos DB nine out of ten.

What do I think about the scalability of the solution?

Cosmos DB offers scalability when implemented correctly, often in conjunction with other tools to achieve specific scaling requirements.

Cosmos DB's scalability has reduced our overhead by allowing us to efficiently manage costs across different environments, from minimally used development settings to high-demand production environments. Its robust architecture supports diverse applications, including medical and government settings, with sensitive data, ensuring reliable performance and scalability. While proactively addressing potential scaling challenges, we maintain a strategic approach by selectively utilizing Cosmos DB for optimal data management.

How are customer service and support?

We have a good relationship with Microsoft engineers in our region, and some Cosmos leads in Australia. They have responded to any problems we have had with the system.

How would you rate customer service and support?

Positive

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

We previously used Oracle Autonomous JSON Database, a NoSQL version of Oracle database, and MySQLX, a variation of MySQL supporting unstructured data. Choosing between MySQLX and Cosmos DB is a tough decision. While MySQLX offers powerful SQL querying and analytics that Cosmos DB lacks, Cosmos's distributed nature eliminates concerns about backups and disaster recovery, unlike MySQLX.

How was the initial setup?

Deploying Cosmos DB was remarkably easy. It's the one Azure product I install without worries, as it consistently performs reliably.

What was our ROI?

Cosmos DB is a valuable resource for our customers because it eliminates the need to set up and manage complex database systems. Its ease of use and global distribution capabilities make it a cost-effective solution for our SaaS product. Unlike alternatives such as SQL Server, which require dedicated database administrators, Cosmos DB allows us to achieve the same results without extensive engineering resources.

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

Cosmos DB is cost-effective when starting but requires careful management. In my experience with customers, I emphasize that improper use can lead to significant expenses, while correct implementation ensures cost-effectiveness.

What other advice do I have?

I would rate Cosmos DB seven out of ten. If they can fix the analytics issues, Cosmos DB would be a great product.

Cosmos DB presents a trade-off: it's easy to start using and deploying systems, but optimization can be challenging and expensive without proper indexing and data modeling. Efficient querying, especially with large datasets, requires careful planning due to the platform's architecture.

Our organization has a few engineers who directly use Cosmos DB. We have a diverse client base, ranging from small to large enterprise organizations, who utilize our products built on various technologies, including Cosmos DB.

Our comprehensive suite of DevOps tools enables seamless transitions between databases as needed. This streamlined process allows most of our engineers to quickly onboard to Cosmos DB within a week.

If you're using Azure and need a simple, easy-to-start database, and NoSQL makes sense for your needs, Cosmos DB is a good choice. It's a solid product with excellent Microsoft SDKs and enterprise-focused support. While Mongo might offer more developer-focused features, Cosmos DB prioritizes security and scalability, making it easier for enterprises to get started quickly.

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.
Flag as inappropriate
PeerSpot user
Aasif Bagdadi - PeerSpot reviewer
CTO at MarketOnce
Real User
Offers horizontal scalability, making it easy and cost-effective without additional effort from a DBA or DevOps team
Pros and Cons
  • "The fact that scalability can be achieved by simply configuring availability zones is very attractive."
  • "An improvement could include increasing the document size or providing a method to manage larger sets efficiently. If they want to keep a 2 MB limit, they should provide a way to chain multiple documents in a systematic way so that developers do not have to figure out what to do when a document is larger than 2 MB."
  • "A limitation in Azure Cosmos DB is the 2 MB document size. Developers need more systemic support in chaining multiple documents if more than 2 MB is required."

What is our primary use case?

I have three different products using Azure Cosmos DB. The most extensive use is in a survey platform we are developing as a SaaS product. Azure Cosmos DB serves as the primary OLTP database for this platform. We do not have any other RDBMS for this use case.

We also use it to store configuration information for campaigns for the other two products, but it is used extensively for the survey platform.

How has it helped my organization?

Azure Cosmos DB offers horizontal scalability, making it easy and cost-effective without additional effort from a DBA or DevOps team. Configuration for scaling is user-friendly through the UI.

It is easy to use and optimize once you understand the basics, partitions, and indexing. By default, it indexes every field and attribute, but you can customize it. The documentation is good. It makes logical sense. I have had some experience with other NoSQL solutions. It is easy to use. We do not find anything challenging. The way it indexes and does the filtering of data is easy.

What is most valuable?

The fact that scalability can be achieved by simply configuring availability zones is very attractive. We aimed to avoid managing a NoSQL database, especially when we did not have an upper limit on how much audio we would need while doing the initial development. The ability to easily scale with the increase in usage and adoption of our product is the most valued feature.

What needs improvement?

A limitation in Azure Cosmos DB is the 2 MB document size. Developers need more systemic support in chaining multiple documents if more than 2 MB is required. Compared to competitors like MongoDB, which allows for gigabyte-sized documents, Azure Cosmos DB's limit is small. An improvement could include increasing the document size or providing a method to manage larger sets efficiently. If they want to keep a 2 MB limit, they should provide a way to chain multiple documents in a systematic way so that developers do not have to figure out what to do when a document is larger than 2 MB. For some use cases, the 2 MB size is very small. If they improve this aspect, a lot of customers will benefit from it. 

Another area for improvement is making it available on different cloud providers. Currently, Azure Cosmos DB is an Azure-only offering. Not supporting other cloud providers results in Microsoft losing some customers.

For how long have I used the solution?

I have been using Azure Cosmos DB extensively for the last four years. Before that, it was more of hobby research.

How are customer service and support?

We have an account manager. We reach out to that account manager wherever we need level 2 or level 3 support. We have also followed the normal process of raising a ticket, but sometimes, it helps to speed up the process.

Ordinary issues are resolved through standard processes, but for complex matters, we leverage our account manager to access senior engineers. We have received great support. Support has been responsive and effective. I am very happy with their support.

How would you rate customer service and support?

Positive

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

We have not replaced any solution with Azure Cosmos DB for this use case, but we have used MongoDB, Elastic, and other NoSQL databases.

Almost anything that you can do in Azure Cosmos DB can also be done in MongoDB, but one of the things that I like about Azure Cosmos DB is called change detection. Changes in each document can be persisted in some other technologies. It could be in fabric or SQL Server. This feature gives Azure Cosmos DB an edge over others in use cases where you need to detect a change and then connect it with other things. I also like the functions and stored procedures that Microsoft has implemented in Azure Cosmos DB, but the change detection feature is probably one of the best features. It works natively within the platform and Azure.

How was the initial setup?

The initial setup is very easy and seamless. An instance can be deployed in minutes, and the UI allows for easy configuration and scaling without disrupting operations.

I recently needed to upgrade an Azure Cosmos DB instance. In the UI, I clicked the option to scale it higher. It said that it could take a couple of hours. I thought it would take four or five hours, but it finished in two or three hours and notified me when the upgrade was completed. All this while, things were working and operational, and behind the scenes, it was upgrading to a bigger instance. It finished the upgrade in half the time. It can spin up a small instance in just a few minutes.

It took us about two weeks to do the PoC to make sure that Azure Cosmos DB was the right one for our use case. After the PoC, we started leveraging Azure Cosmos DB within a month. Our use cases have become more and more sophisticated because we are still developing software, which requires us to create different documents and different structures of those documents in Azure Cosmos DB. The onboarding itself was simple and natural. We did not feel that using Azure Cosmos DB slowed us. In fact, it was seamless because the JSON that our APIs needed could directly be persisted in Azure Cosmos DB. No other transformation was needed.

Its learning curve is small. It is easy to learn. The documentation of Azure Cosmos DB is good.

It does not require any maintenance, but a couple of times, we had to change our partition scheme and write a separate utility to transition from one partition scheme to the other. It was more of a migration that we had to do of the Azure Cosmos DB document that we had created. Because we changed the partitioning scheme, we had to migrate the old data to the new partition design. Azure Cosmos DB does not require any maintenance work. That is the beauty of how NoSQL, and Azure Cosmos DB in particular, have been designed.

What about the implementation team?

All implementations were done in-house without any external consultants. It is a one-person job.

What was our ROI?

The horizontal scalability helps lower the overall cost of ownership as compared to managing MongoDB or any RDBMS solution. Because of its ease of use and the fact that the scaling, configuration, and backup are managed in Azure, we do not need a dedicated DBA. We do not even need the DevOps people to manage it.

The management of Azure Cosmos DB is easy because of the UI and the way it scales. We have availability zones and multi-region load balancing. When you take all that into consideration, the total cost of ownership is much lower than others.

Azure Cosmos DB is costly, especially if you have not optimized it. However, we are very satisfied with it. It provides the value for what we are paying.

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

Its price is very good for the basic stuff. When you go to a more complicated use case, especially when you need replication and availability zones, it gets a little costly.

It represents the biggest cost item for us. However, the cost is aligned with the value provided. It has served our needs perfectly, aligning with our scaling and development requirements, so the cost of ownership seems justified.

Which other solutions did I evaluate?

We did a number of PoCs to decide which NoSQL database to use, and we settled on Azure Cosmos DB. We could see its benefits when we incorporated the partition key with indexing. The performance started improving when our engineers started exploring some of the complex concepts.

What other advice do I have?

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

Which deployment model are you using for this solution?

Public Cloud

If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?

Microsoft Azure
Disclosure: PeerSpot contacted the reviewer to collect the review and to validate authenticity. The reviewer was referred by the vendor, but the review is not subject to editing or approval by the vendor. The reviewer's company has a business relationship with this vendor other than being a customer: Partner
Flag as inappropriate
PeerSpot user
Buyer's Guide
Microsoft Azure Cosmos DB
December 2024
Learn what your peers think about Microsoft Azure Cosmos DB. Get advice and tips from experienced pros sharing their opinions. Updated: December 2024.
824,168 professionals have used our research since 2012.
Jordan Berry - PeerSpot reviewer
CEO at Interloop Data
Real User
Enables us to handle transactional and analytical workloads in the same database
Pros and Cons
  • "We love the ability to land data with Cosmos DB easily. Cosmos is native to Azure, so everything works seamlessly with it. You need good data to have good AI, and Cosmos makes it easy to land the data."
  • "We have both our SaaS app and the analytical side running without throttling issues."
  • "We would like to see advancements in AI with the ability to benchmark vector search capabilities, ensuring it answers questions accurately. During our initial implementation, we faced challenges with indexing and sorting, which are natively available in other offerings but required specific configurations in Cosmos."
  • "We would like to see advancements in AI with the ability to benchmark vector search capabilities, ensuring it answers questions accurately. During our initial implementation, we faced challenges with indexing and sorting, which are natively available in other offerings but required specific configurations in Cosmos."

What is our primary use case?

Our corporate mission is to help companies achieve more with their data, which often means unifying your data. We have a SaaS solution and have built a Copilot with Copilot Studio on top, as well as some of the Azure AI services, which is now Foundry. We are starting to use it to allow people to use natural language to ask questions of their data. We are early in our journey, but I suspect it will work well for us.

How has it helped my organization?

By incorporating Cosmos DB into our Azure ecosystem, we have streamlined costs and improved efficiency. The integration has allowed us to manage Cosmos alongside our other services, providing a comprehensive view of resources. The inclusion of advanced capabilities has been beneficial, positively impacting our internal operations and the services we offer to clients.

We're early in our journey, but I believe it will improve the quality of our search results. We're having a lot of success with Copilot and are excited to see how it'll work in a traditional sense as well. We're in analytics, so we work with a lot of massive data and look at tens of millions of rows. We haven't had any capacity challenges or thresholds. We started with small data, so having a tool that will grow with you is great. 

What is most valuable?

We love the ability to land data with Cosmos DB easily. Cosmos is native to Azure, so everything works seamlessly with it. You need good data to have good AI, and Cosmos makes it easy to land the data.

The recently added ability to mirror to Fabric has been beneficial. Cosmos DB enables us to handle transactional and analytical workloads in the same database. 

Cosmos DB is easy to use. You can set up a database with a couple of clicks, and it's simple to scale it up and down based on your needs. Within Azure, the Explorer UX has been great for us, too. You don't have to install another tool to run a quick query or explore some data. Additionally, the ability to estimate your Cosmos costs through the portal and manage features has been useful.

Like most database tools, it takes some time to understand. If you come from SQL or even from the Mongo world, many concepts will be familiar to you. While it takes some learning and expertise, it's not a large hill to climb. You must learn the advanced capabilities, but they make your solutions more powerful.

The vector database requires an additional engineering step to move the data from a transactional database to a vector store so that you can query it and use it in AI. However, because the vector capabilities are built in, it saved us engineering time and allowed us to get our solution out faster. 

What needs improvement?

We would like to see advancements in AI with the ability to benchmark vector search capabilities, ensuring it answers questions accurately. During our initial implementation, we faced challenges with indexing and sorting, which are natively available in other offerings but required specific configurations in Cosmos.

For how long have I used the solution?

We have used Cosmos SQL for more than five years.

What do I think about the stability of the solution?

There have been no challenges with Cosmos DB's stability. We have both our SaaS app and the analytical side running without throttling issues.

What do I think about the scalability of the solution?

The scalability is great, both horizontally and vertically.

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

In the past, we've worked with traditional SQL Server and MongoDB. However, Cosmos being native to Azure and the seamless integration prompted our switch.

How was the initial setup?

The onboarding process was relatively quick for us. We were up and running within two weeks, including a pilot test.

What was our ROI?

The dynamic scaling during peak times has been crucial in cost management.

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

The integration of Cosmos with our other Azure services allows us to manage costs proactively. The built-in capabilities help control costs in line with our growth expectations through the portal. 

What other advice do I have?

I rate Cosmos DB eight out of 10.

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: Reseller
Flag as inappropriate
PeerSpot user
Noman Saeed - PeerSpot reviewer
Principal Consultant - D365 F & O Technical Solution Architect at Visionet Systems Inc.
Consultant
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
Tiago Duarte - PeerSpot reviewer
CTO at Stellium Consulting
Real User
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
reviewer2227599 - PeerSpot reviewer
Vice President, Machine Learning at a healthcare company with 10,001+ employees
Real User
Top 20
The real-time analytics capabilities allow for turnaround times in milliseconds
Pros and Cons
  • "The most valuable feature of Microsoft Azure Cosmos DB is its real-time analytics capabilities, which allow for turnaround times in milliseconds. This is crucial for applications like fraud detection."
  • "The most valuable feature of Microsoft Azure Cosmos DB is its real-time analytics capabilities, which allow for turnaround times in milliseconds."
  • "It would be beneficial if Cosmos supported batch and real-time use cases to make the system more seamless."
  • "If you want to bring the data from AWS, you must pay data egress costs. That's a pain point."

What is our primary use case?

We have numerous healthcare AI use cases, including utilization management, documentation, letter generation, and voice call creation. These are both real-time and non-real-time use cases. My team is the platform team that enables the services. The ML teams are the practitioners who work on these products. 

How has it helped my organization?

The vector database has had a significant impact by making everything searchable, and the number of potential use cases exploded when GenAI was added. We've transformed many tasks into AI machine-learning problems. We have a ton of institutional expertise across the enterprise. It's crucial to be able to bring all of that into one place, ask questions, and get answers.

What is most valuable?

The most valuable feature of Microsoft Azure Cosmos DB is its real-time analytics capabilities, which allow for turnaround times in milliseconds. This is crucial for applications like fraud detection. 

Using and optimizing Cosmos DB is relatively straightforward. We talk regularly with the Microsoft team, and hands-on help is available when needed, so the experience was seamless. 

We have migrated to Cosmos' vector database search from Azure AI Search.  We don't face too many challenges with interoperability because everything is built on Azure, and we don't have any multi-cloud applications.

Azure AI services integrate and perform well with the vector database. Sometimes, we struggle to customize the RAG pipeline instead of using the embedded settings. Those are rare use cases, but they are useful for most use cases. 

The search capabilities work well once you have your data set up. It's more of a challenge in the knowledge-based integration than the modeling side. Our data is scattered. SharePoint, Confluence, and meeting minutes data are separate. We are working actively to make all the data flow. 

What needs improvement?

It would be beneficial if Cosmos supported batch and real-time use cases to make the system more seamless. Our biggest challenge migrating data is the fact that we're a multi-cloud organization with data stored in multiple platforms like AWS and Snowflake. It's all over the place, so we are using solutions like Fabric to migrate the data. If you want to bring the data from AWS, you must pay data egress costs. That's a pain point.

For how long have I used the solution?

I have been using Microsoft Azure Cosmos DB for about two and a half years.

What do I think about the stability of the solution?

The latency numbers of Cosmos DB are satisfactory and align with expectations for clinical decision support engines.

What do I think about the scalability of the solution?

While I have not personally tested it, the information I have suggests that Cosmos DB has robust scalability capabilities.

How are customer service and support?

We have regular connections with the Microsoft team, which provides hands-on support and makes the use of Cosmos DB straightforward.

How would you rate customer service and support?

Positive

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

We previously used Azure AI Search, but we are transitioning to utilize built-in capabilities in Cosmos DB.

What about the implementation team?

The platform team is responsible for enabling the services, while the ML teams use these products.

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

The pricing model aligns with our budget expectations, and we get a significant corporate discount from Microsoft because we're a partner.

What other advice do I have?

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

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:
Flag as inappropriate
PeerSpot user
Alexander Amante - PeerSpot reviewer
Chapter Lead - IoT Full Stack Development & DevOps at Spark New Zealand
Real User
Has the standout ability to do data compression easily and scale horizontally
Pros and Cons
  • "The standout features are its ability to do data compression easily and the ability to scale horizontally."
  • "Azure Cosmos DB for NoSQL has a less developed interface and fewer SQL commands than MongoDB, and its community support is also smaller."

What is our primary use case?

We mainly use it as the database for our platform, which is an application that users use as an interface for their IoT products. I work in the IoT chapter, and we developed an application where customers can manage their IoT devices and have a holistic view of their deployment. All data is aggregated in our database, cleaned up with ETLs, and stored in Cosmos DB.

When dealing with IoT products, we encounter massive amounts of data, unlike in commerce, where traffic and data fluctuate. IoT devices, especially ours, generate constant data streams every five minutes, necessitating robust handling. We chose Azure Cosmos DB, specifically the PostgreSQL version, for its ability to store massive amounts of data without performance degradation, thanks to its columnar storage feature. This allows us to compress older data, such as telemetry data older than two years, which is crucial for managing the ever-growing volume of information. Even with compression, we maintain fast access to the data, ensuring optimal application performance.

How has it helped my organization?

I had prior experience with MongoDB on Azure, a platform developed by Microsoft. Since we already used Azure, integration with Cosmos DB, Azure's native NoSQL database, was significantly faster than a standalone MongoDB instance. While Azure offers integration with MongoDB, utilizing Cosmos DB simplified the process due to the readily available APIs. Similarly, Azure PostgreSQL also streamlined integration because it is a Microsoft product, eliminating the need to work with a third-party vendor.

As the only database I've used extensively, particularly with Spark, I recently re-architected our application to identify performance bottlenecks. Surprisingly, Azure Cosmos DB consistently demonstrated exceptional speed, executing complex queries in under 100-200 milliseconds. This contradicted our initial hypothesis that the database was the primary cause of slowdowns. It proved to be one of the most efficient components, requiring minimal optimization. Therefore, Cosmos DB has proven optimal for searching through our organization's large datasets.

We have only used Azure Cosmos DB, so there isn't much reference to compare. However, within our chapter, when dealing with other chapters, there is a noticeable difference in performance in our application. The biggest differentiator in performance and speed for applications is typically the database, and having a speedy database solves a lot of performance issues.

Cosmos DB has provided excellent latency and availability. We have not experienced any database inaccessibility, downtime, crashes, or unexpected bills due to data spikes, even with the massive amounts of data we handle.

A single PostgreSQL node can handle a massive workload of telemetry data, eliminating the need for horizontal scaling in our case. Its impressive capacity and resilience ensure smooth operation even during spikes or large influxes of data.

What is most valuable?

The standout features are its ability to do data compression easily and the ability to scale horizontally. We initially used Azure Cosmos DB NoSQL, a document-based database, but as our application grew, we realized the relationships between entities were becoming more complex and NoSQL was no longer suitable. To address this, we migrated most of our data to Azure Cosmos DB for PostgreSQL, a relational database, while retaining the original NoSQL database for telemetry data. This approach offers two key benefits: simplified data compression, thanks to seamless integration with our ORM, Prisma, and horizontal scalability, providing the flexibility to expand our database capacity as needed quickly.

What needs improvement?

Azure Cosmos DB for NoSQL has a less developed interface and fewer SQL commands than MongoDB, and its community support is also smaller. Additionally, Azure Cosmos DB for PostgreSQL users face the challenge of not having a portal for running queries.

Microsoft could improve its pricing, and the way request units are purchased. The current system requires users to pre-purchase an estimated amount of requested units, often leading to unused units and unnecessary costs. This pre-purchase model is inefficient and inconvenient for users. Overall, the pricing structure must be more flexible and transparent to align with actual usage.

For how long have I used the solution?

I've used Cosmos DB for three years now at Spark New Zealand, and even before that, I worked on Cosmos DB inconsistently until my current company exclusively used it.

What do I think about the stability of the solution?

I would rate Cosmos DB's stability eight out of ten. We haven't experienced any significant stability issues or downtime.

What do I think about the scalability of the solution?

Scalability for Cosmos DB PostgreSQL is rated around eight point five out of ten. The single node is capable of handling massive loads, and we haven't needed to scale horizontally yet.

How are customer service and support?

In the three years of using Azure Cosmos DB, we never needed to contact support, indicating its reliability.

How would you rate customer service and support?

Positive

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

I have used MongoDB previously. The integration with Microsoft Azure and its products is faster and easier compared to MongoDB.

How was the initial setup?

Deploying the NoSQL database was simple, but the PostgreSQL deployment proved more complex. Initially, it was particularly challenging due to limited resources; it was around when Microsoft acquired Citus, and comprehensive materials were scarce. The lack of a dedicated portal further complicated the process, making tasks like running queries more difficult than the user-friendly Azure portal available for NoSQL.

The Cosmos DB PostgreSQL deployment, including investigation and testing, took one week, while the deployment itself only required two days.

What about the implementation team?

There were around ten to twelve people involved in building the application using Cosmos DB. Other teams within our organization might also use it.

What was our ROI?


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

Pricing is mid- to high-end. The way request units are purchased is atypical, as they must be bought ahead of time based on expected usage, which can be inefficient.

Which other solutions did I evaluate?


What other advice do I have?

I would rate Cosmos DB eight out of ten.

Cosmos DB, particularly the PostgreSQL setup, can be relatively maintenance-free. While the service itself requires no active maintenance, optimizing for cost-efficiency may involve implementing scripts to compress older data, as demonstrated in the PostgreSQL example. This proactive approach minimizes the need for ongoing maintenance, ensuring the application remains hassle-free.

Our Cosmos DB, deployed in a single region, primarily serves businesses and establishments rather than individual users. Each customer typically has only a few users on the app. Our primary concern isn't the number of users but the volume of telemetry data generated by devices at each establishment. These devices transmit data every five minutes, resulting in a constant influx of information 24/7, 365 days a year.

Within my chapter, around 15 people are using Cosmos DB.

For NoSQL, I would recommend it if you are already using Azure. For PostgreSQL, the lack of a query portal is a downside, but the features it offers can justify its slightly higher price.

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.
Flag as inappropriate
PeerSpot user
Jeff Yeh - PeerSpot reviewer
Senior Manager at eCloudvalley
Real User
Top 10
Stands out with global sync, cost-effectiveness, and fast performance
Pros and Cons
  • "The global synchronization feature of Azure Cosmos DB stands out as the most valuable for me."
  • "The global synchronization feature of Azure Cosmos DB stands out as the most valuable for me."
  • "I do not have any specific suggestions for improvements at the moment. However, having more AI capabilities in the future would be beneficial."

What is our primary use case?

Our primary use case for Azure Cosmos DB is mainly as a Document DB and vector DB.

How has it helped my organization?

Azure Cosmos DB is very easy to use. We do not have to spend a lot of time on its optimization.

There is a lot of reference code we can use. It is very easy. We could grab some code to interact with the database.

We have integrated the vector database with some of the IoT applications and recently, some AI-related topics because it is a cloud-native service. Our company offers professional services to help customers bring their own applications to the cloud. The cost and performance are some of the main benefits of the vector database. 

The integration of the vector database with Azure AI services is great. In most applications right now, we use the logic of vector search and the traditional way of using full-text search. It is easier for the applications to get those search results.

I am more on the presales side. Most of the time, we do a quick demo for our customers. We only spend about fifteen minutes building a simple application with the RAG functionality with the customer's own data. That is very impressive.

It provides good SLAs and requires less effort in maintenance.

What is most valuable?

The global synchronization feature of Azure Cosmos DB stands out as the most valuable for me. It is a reliable and consistent storage solution, suitable for various data types. It is always available. Additionally, it is cost-effective.

What needs improvement?

I do not have any specific suggestions for improvements at the moment. However, having more AI capabilities in the future would be beneficial.

For how long have I used the solution?

I have been using Azure Cosmos DB for three or four years.

What do I think about the stability of the solution?

The stability of Azure Cosmos DB is very nice, with features like cross-region synchronization that allows fast and reliable performance.

The latency and availability of Azure Cosmos DB are very nice. There are cross-region synchronization features. The speed is very fast.

What do I think about the scalability of the solution?

Azure Cosmos DB scales well, both in terms of capacity and performance. You can adjust the Request Units (RUs) as needed, and the cross-region synchronization allows easy scaling across different locations.

As compared to a traditional RDBMS, Azure Cosmos DB’s dynamic scaling decreases an organization’s overhead costs by half.

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

We previously used Redis and Postgres for vector databases before they were supported in Azure Cosmos DB. In the beginning, the vector database was not supported with Azure Cosmos DB, so we had to use the Redis or Postgres database, which was expensive. Azure Cosmos DB is cheaper.

Our company offers consulting services for Microsoft-related products. This is one of the reasons for recommending Azure Cosmos DB, but sometimes our customers use MongoDB and other solutions.

How was the initial setup?

The initial setup of Azure Cosmos DB was easy. During the migration or implementation of Azure Cosmos DB, there are sometimes some incompatibility issues, but they are minor issues.

It was easy for our team to use. It took them one week to know the system and work with it. It takes our team members about four weeks to earn their certification for Azure Cosmos DB. There is a special certification for Azure Cosmos DB.

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

It is cost-effective. They offer two pricing models. One is the serverless model and the other one is the vCore model that allows provisioning the resources as necessary. For our pilot projects, we can utilize the serverless model, monitor the usage, and adjust resources as needed.

What other advice do I have?

I would rate Azure Cosmos DB an eight out of ten. There is room for growth, but Microsoft is constantly releasing new features and moving very fast.

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
Flag as inappropriate
PeerSpot user