Google App Engine:数据选项

时间:2012-08-09 15:42:52

标签: java google-app-engine nosql cloud bigdata

Google App Engine为您提供了三种持久性解决方案供您选择:

  • NoSQL数据存储区 - “提供NoSQL架构对象数据存储区,带有查询引擎和原子事务”
  • Cloud SQL - “根据熟悉的MySQL数据库为App Engine应用程序提供关系SQL数据库”
  • 云端存储 - “为最大容量为TB的对象和文件提供存储服务”

这些名字及其定义对我来说有点混乱。是 NoSQL数据存储区不是基于云的吗?

仅使用标准 NoSQL数据存储区与迁移到云相比,它们的性能是否会受益?如果是这样,他们是什么?

Cloud SQL 云存储之间的唯一区别是您可以存储的数据量?或者这两个完全不同的想法是什么?提前谢谢!

1 个答案:

答案 0 :(得分:2)

还有Blobstore serviceGoogle Big Query

对于第一个问题,所有解决方案都是基于云的。

  

数据存储是一种无模式对象数据存储,为您的Web应用程序提供强大,可扩展的存储,没有计划的停机时间,原子事务,读取和写入的高可用性,读取和祖先查询的高度一致性以及所有其他查询的最终一致性。

数据存储区和云端SQL产品具有相同的用途,但决定使用哪种产品取决于您的项目需求。数据存储区自动扩展,并且是No-SQL数据库,而Cloud SQL是SQL数据库。有关详细信息,请参阅GAE DataStore vs Google Cloud SQL for Enterprise Managment Systems

Cloud SQL和云存储是完全不同的产品。第一个可以看作是Google基础架构之上的MySql数据库。

  

Google Cloud SQL是一项网络服务,可让您创建,配置和使用位于Google云中的关系数据库。它是一个完全托管的服务,可以维护,管理和管理您的数据库,使您可以专注于您的应用程序和服务。

后者是用于存储和提供文件的解决方案,就像Blobstore一样,但具有额外的功能(例如ACL)。

  

Google云端存储API允许您的应用将数据存储和提供为不透明的blob,称为“对象”。

一些链接: https://developers.google.com/appengine/docs/java/datastore/overview https://developers.google.com/cloud-sql/ https://developers.google.com/appengine/docs/java/googlestorage/overview