小介绍:
我尝试用sql数据库,实体框架,linq开发我的项目。 我有表'用户',例如我有用户教育列表。我问自己:'用户可以有多少教育? 1,2,10 ......'?并且似乎99%的情况不超过10.因此对于sql中的这样的示例我需要创建引用的表'Educations'。对?如果我需要显示用户教育和用户我需要加入上面提到的表...但是如果用户有10个甚至更多的集合,每个集合不超过10个项目呢?我需要在sql中创建10个引用表?当我需要显示时加入所有这些?为了获得更好的性能,我创建了具有我需要在ui上显示的数据形状的denormized表。每次用户更新时,我都需要更新已批准的结构。
现在我重新开发了我的项目以使用文档数据库(MongoDB)。我已经为User创建了一个文档,其中包含了所有10个集合。
可能是我丢了什么东西?但似乎文档数据库在这里获胜。它非常快速且非常容易支持。 +1来记录数据库。
那么,您对什么更好地使用文档数据库或sql数据库有什么看法?
什么时候我应该使用文档数据库和sql?