Appengine数据存储区的优点

时间:2011-01-18 22:48:43

标签: google-app-engine google-cloud-datastore

我已经使用了sql数据库,并且可以在规范化数据库中看到很多好处,这些数据库可以加入和搜索,并在其中构建关系。

Google在Appengine的数据存储区中使用的“对象数据库”有什么优势?

4 个答案:

答案 0 :(得分:5)

GAE的BigTable数据存储区不是面向对象的,甚至不是对象关系的。它与Hashmap的共同点多于MySQL或Oracle等标准关系数据库。主要优点是可扩展性和对查询将花费的时间(类似于CPU时间)的更严格保证。可扩展性来自记录分发的方式,如果正确设置密钥,那么与这些密钥相关联的数据将在物理上更紧密地联系在一起(数据是分布式的,因此没有单点故障)。

答案 1 :(得分:3)

尽可能多的NoSQL数据库数据存储的主要优点是灵活性但程序员必须忘记传统SQL数据库的所有内容。 see this article in techrepublic.com about NoSQl databases

  1. 数据模型的灵活性。程序员不必担心将对象模型映射到关系模型,只需将您的实体放在数据存储区中即可。
  2. 对象关系灵活性。数据存储区支持单个属性的多个值,这使您可以像在面向对象的编程中一样建立1-N关系;即:将List作为一个属性的值插入。
  3. 其他优点/缺点来自PaaS(平台即服务)模型,这意味着您只需担心编写井代码并且谷歌关心基础架构和可扩展性。 see PaaS in wikipedia

答案 2 :(得分:1)

从技术上讲,编程要容易得多,因为数据存储区与SDK捆绑在一起,并且更容易共享源代码和协作,因为您从同一供应商那里获得所有组件,而不是将RDMS,脚本引擎和托管拼凑在一起。

经济上,GAE ha的成本效益是一个巨大的优势,因为你只需支付你使用的费用。使用其他服务和其他托管服务,您可以像订阅者一样付费,而模型GAE则按您的配额付费。

答案 3 :(得分:0)

编程方面,一切都更难。

优势在于可扩展性,价格和管理。考虑到许多网络应用程序,编程比管理/扩展/支付更容易,GAE /数据存储非常值得。

相关问题