我希望选择一个后端的web服务来为我的应用提供支持。阅读这些服务(Parse、Proxomo、Cocoafish和StackMob等)的文档,发现其中一些服务提供无结构数据存储,而其他服务则要求事先规定结构。我了解什么是数据架构,并且希望无结构数据存储会更容易使用,但想了解每种方式的优缺点。非常感谢您的任何解释。
我希望选择一个后端的web服务来为我的应用提供支持。阅读这些服务(Parse、Proxomo、Cocoafish和StackMob等)的文档,发现其中一些服务提供无结构数据存储,而其他服务则要求事先规定结构。我了解什么是数据架构,并且希望无结构数据存储会更容易使用,但想了解每种方式的优缺点。非常感谢您的任何解释。
我不是一个真正的专家,但从我所读到的来看,这是我的看法:
大多数情况下,无模式数据库使您能够轻松存储键/值、JSON对象。因此,很容易将您在应用程序中操作的对象与DB存储桥接起来。 您不必使用ORM(对象关系映射器),因为您的对象直接以DB接受的格式存在(大多数情况下,很容易从应用程序中的对象生成JSON)。
如果您没有任何模式,您可以轻松调整(添加/删除)要存储在DB中的对象的属性,而无需经过模式更新和数据从旧模式迁移到新模式的迁移。
在无模式的缺点方面,我的感觉是您不能像标准SQL那样表达许多约束条件来检索数据(您不进行任何连接等),因此您可能必须仔细检查您想要从db数据中检索什么,并查看无模式引擎提供了什么。