It is useful use-case by use-case. For our use case, it was the best and easiest option for the integration as well as development side. It is serverless so no need of deployment and maintenance hustle. It is easy to scale up due to the same functionality. Supports AWS Security features and just a click away for enabling it so security is good.
Does what it promises well, for instance, as a sidecar for the main enterprise data warehouse. However, I would not recommend using it as the main data warehouse, particularly due to the heavy business logic, as other dedicated tools are more suitable for ensuring scalable operations in terms of change management and multi-developer adjustments.
It's core to our business, we couldn't survive without it. We use it to drive everything from FTP logins to processing stories and delivering them to clients. It's reliable and easy to query from all of our pipeline services. Integration with things like AWS Lambda makes it easy to trigger events and run code whenever something changes in the database.
Functionally, DynamoDB has the features needed to use it. The interface is not as easy to use, which impacts its usability. Being familiar with AWS in general is helpful in understanding the interface, however it would be better if the interface more closely aligned with traditional tools for managing datastores.
As with other cloud tools, users must learn a new terminology to navigate the various tools and configurations, and understand Google Cloud's configuration structure to perform even the most basic operations. So the learning curve is quite steep, but after a few months, it gets easier to maintain.
While the actual performance of DynamoDB can vary based on workload and region, it is generally highly responsive and well-regarded for delivering low-latency access to data, making it a strong choice for applications with stringent performance requirements. Organizations often choose DynamoDB for its ability to provide a reliable and performant database service, particularly when combined with effective application design and optimization.
GCP support in general requires a support agreement. For small organizations like us, this is not affordable or reasonable. It would help if Google had a support mechanism for smaller organizations. It was a steep learning curve for us because this was our first entry into the cloud database world. Better documentation also would have helped.
For our use case, we needed a noSQL that would work with AWS Lambdas of specific parts of the internal web applications. We optimized billing and uses , diversified databases for various parts; so it’s not very expensive.
Unlike other products, Google Cloud SQL has very flexible features that allow it to be selected for a free trial account so that the product can be analyzed and tested before purchasing it. Integration capabilities with most of the web services tools are easier regarding Google Cloud SQL with its nature and support.
I have taken one point away due to its size limits. In case the application requires queries, it becomes really complicated to read and write data. When it comes to extremely large data sets such as the case in my company, a third-party logistics company, where huge amount of data is generated on a daily basis, even though the scalability is good, it becomes difficult to manage all the data due to limits.
Businesses may only pay for the services they actually use thanks to DynamoDB's usage-based pricing approach.
AWS handles hardware provisioning, data recovery, fault tolerance, patching, and database upgrades for DynamoDB since it is a fully managed database service.
DynamoDB differs from conventional relational databases in terms of its data model, which might be difficult for developers accustomed to dealing with SQL-based systems.