NoSQL数据库

时间:2011-01-20 10:24:16

标签: sql mongodb couchdb database nosql

在过去的几年里,我注意到对NoSQL DB的兴趣正在增加。 许多新的此类数据库已发布:

您认为替换关系模型的目标是什么?一般来说,您如何看待NoSQL的未来。

4 个答案:

答案 0 :(得分:11)

为什么NoSql (MongoDB)?

  1. 可扩展且灵活的数据存储:这是远离关系数据库的主要原因。

  2. Schema less:表示具有单个记录的复杂层次关系。

  3. 向外扩展:在更多计算机上对数据进行分区。

  4. 惊人的快速:MongoDB使用二进制线协议作为主要的交互模式 与服务器

    特点:

  5. 轻松索引

  6. 存储的Java脚本

  7. 简单管理(如果主从架构中的主机发生故障,则自动进行故障转移)

  8. MongoDB非常强大,它试图保持关系中的许多功能 系统,它不打算做关系数据库所做的一切。每当 可能,数据库服务器将处理和逻辑卸载到客户端。

答案 1 :(得分:3)

诸如MongoDB之类的NoSQL系统是专为数据密集型应用程序设计的系统 - 例如,Facebook创建了一个名为Cassandra的NoSQL解决方案来处理他们拥有的大量数据。 NoSQL对于那些正在构建高度可伸缩的应用程序并通过不强制执行数据库模式来减少对空表列的需求的人非常有用,因此,例如,如果您有一个表,其中存储了有关您的朋友的信息,那么您将不会包括你知道对方阅读兴趣的阅读兴趣。

关系型数据库确实占有一席之地,但是NoSQL并不是真正意义上的替代品,而是一种大规模接近数据存储理念的不同方式。我想说,未来越来越多的公司将开始使用NoSQL解决方案,但目前大多数拥有小型网站的人根本不需要一个旨在处理大量信息的系统。

希望有所帮助!

答案 2 :(得分:0)

我认为NoSQL意味着取代' SQL'。标题就是一种暗示。 NoSQL意味着以不同的方式解决问题。任何使用NoSQL和SQL的系统都没有完全接受成为Key值存储的意义。

这并不是说这种方法并不理想(因为许多NoSQL技术都没有SQL数据库几十年来已经拥有的高级功能,目前比NoSQL更好地解决了这个问题。)

随着NoSQL技术的成熟(数据一致性得到保证),公司会更加自如地将SQL从技术堆栈中删除;开源数据库的商业许可(由Oracle收购的MySql)将为这次迁移的速度设定步伐。

答案 3 :(得分:0)

像playORM这样的系统现在可以在分区内进行连接,因此noSQL越来越有可能在未来取代SQL系统。实际上,playORM使用S-SQL(可伸缩SQL),您可以像以前一样执行几乎相同的SQL,除非指定要查询的分区。首先,您可以使用没有分区的playORM将关系模型移动到noSQL,它将同样快速,并且您可以对关系模型进行分区以便进行扩展。