Hello,
You can have a look into the following documentation [1] to have a high-level guidance on what storage option you can choose on Google Cloud Platform depending on your needs.
According to the Cloud SQL FAQ , using Cloud SQL or App Engine Datastore depends on the application requirements. Datastore provides NoSQL key-value > storage that is highly scalable, but does not support the complex queries offered by a SQL database. Cloud SQL supports complex queries and ACID transactions, but this means the database acts as a ‘fixed pipe’ and performance is less scalable.
Here is a comparison between both:
Cloud Datastore:
Description: A scalable, fully-managed NoSQL document database for your web and mobile applications.
- Good for:
* Semi-structured application data
* Hierarchical data
* Durable key-value
- Common Workloads:
* User profiles
* Product catalogs
* Game state
Cloud SQL:
Description: A fully-managed MySQL database service that is built on the strength and reliability of Google’s infrastructure.
- Good for:
* Web-frameworks
* Structured data
* OLTP workloads
- Common Workloads:
* Websites, blogs, and content management systems (CMS)
* Business Intelligence (BI) applications
* ERP, CRM, and eCommerce applications
In Datastore, you don’t need to think about what type of VM instance and memory size it should use but in Cloud SQL, there are instance sizes and the costs depend on the instance sizes [2]. Please have a look into the following examples mentioned in the Official Documentation [3].
Datastore is good to manage user profiles and the use cases mentioned above, it has free quota amounts and low costs however Cloud SQL price and storage depend on the machine type that you're using.
I hope this helps.
Best Regards,
Nibrass
[1] : https://cloud.google.com/storage-options/
[2]: https://cloud.google.com/sql/pricing#2nd-gen-instance-pricing
[3]: https://cloud.google.com/sql/pricing#2nd-gen-examples