2010-12-19 147 views
1
  1. 到底是什么非关系数据库?我听说网络网站如FB,谷歌使用非关系型数据库,那是什么非关系型数据库

  2. 在什么条件下,我们应该使用非 - 关系型数据库

  3. 非关系型数据库相对于关系型数据库有什么优势?

+3

你愿意阅读多少本书? – Oded 2010-12-19 19:10:35

+2

许多您感兴趣的事情已经在以下问题中讨论过:http://stackoverflow.com/tags/nosql/faq – 2010-12-19 19:12:03

+2

http://en.wikipedia.org/wiki/NoSQL – 2010-12-19 19:16:21

回答

3

客观性的,db4o(开源)等被称为我认为你问对象数据库?它们被称为ODBMS,而不是RDBMS。还有新的“云数据库”,但我对这些并不太熟悉,即使在遥远的将来,我也不确定它们对于每种类型的应用程序都是实用/有用的。在这两者之间(可能)是两种主要的非RDBMS数据库类型。 (请参阅http://en.wikipedia.org/wiki/NoSQL

对象dbs非常酷,觉得像Hibernate一样,只有更快,因为没有转换到SQL正在完成。如果您拥有复杂/深层的数据层次结构,则对象dbs应该快得多。 (它们可能总体上稍快一些,但有一些不足之处需要注意)。

对象数据库的一个缺点是,它使开发人员有时更多的工作需要处理类似DBA的任务。 (我猜这可能是好的不好。)如果你使用对象数据库,你的传统Oracle数据库管理员将会站不住脚,毫无用处。有些问题包括 - (至少在db4o中)没有真正强大的工具来帮助管理数据库(RDBMS包含大量的这些工具),一个不同的“模式升级”过程,通常它是一种不太成熟的数据库类型。如果你正在讨论一个大型系统,可扩展性可能会成为一个问题,db4o中没有集群或类似的东西(还没有)。另外,为了完整起见,像Adabas或VSAM这样的旧式旧数据库被视为非关系型数据库。

+0

Downvoted for what,being the only回答?我得罪RDBMS DBA了吗? (他他 - 不用担心,即使OO dbs起飞,RDBMS也不会消失) – Manius 2010-12-21 04:14:46