0

我想知道通过利用动态更改数据库的表结构并在进行查询之前查询数据库引擎以获取当前结构(或仅使用肯定会的字段)是否可以获得任何好处表中)。有没有使用这种方法的系统示例?

4

1 回答 1

2

查看http://blog.mongodb.org/post/119945109/why-schemaless

根据我的个人经验,我发现了以下好处:

更容易改变

一些概念结构在规范化的一组表中使用起来实在是太痛苦了。例如,在我的工作中,我们有一个自定义的内部 CMS 系统。为了代表一篇“文章”,我们有大约 35 个表格。当我们必须运行查询来生成一篇完整的文章时,这是非常痛苦的。

当同一篇文章表示为文档时,所有信息仍然存在,只是在代码中更改对象然后序列化和反序列化比编写具有 20 个连接的查询要容易得多。

版本控制

它使版本控制变得更加容易。您可能从系统的一个模式开始,然后决定需要添加/删除字段。在传统的 RDBMS 中,部署这可能会很痛苦。使用文档数据库,您只需插入具有不同架构的新文档,一切都很好。(请记住,文档数据存储为您提供了处理此问题的工具!)

更快的发展

这源于事物更容易改变。从我所看到的情况来看,收益是显着的。无需再花时间制作表格并确保数据类型完美且一切都非常规范化。

于 2013-01-19T23:13:51.183 回答