返回介绍

3 NoSQL 非关系数据库

发布于 2024-09-26 01:06:59 字数 1009 浏览 0 评论 0 收藏 0

NoSQL: Not only SQL 不仅仅是 SQL。

​ 其产生背景是在数据量和访问量逐渐增大的情况下下,人为地去添加机器或者切分数据到不同的机器,变得越来越困难,人力成本越来越高,于是便开始有了这样的 项目,它们的本意是提高数据存储的自动化程度,减少人为干预的时间,让负载更加均匀等。

​ NoSQL 数据库在以下的这几种情况下比较适用:1、数据模型比较简单;2、需要灵活性更强的 IT 系统;3、对数据库性能要求较高;4、不需要高度的数据一致性;5、对于给定 key,比较容易映射复杂值的环境。

现在 NoSQL 运动丰富了拓展了 BASE 思想,可按照具体情况定制特别方案,比如忽视一致性,获得高可用性等等,NoSQL 应该有下面两个流派:

  1. Key-Value 存储,如 Amaze Dynamo 等,可根据 CAP 三原则灵活选择不同倾向的数据库产品。
  2. 领域模型 + 分布式 缓存 + 存储 ( Qi4j 和 NoSQL 运 动),可根据 CAP 三原则结合自己项目定制灵活的分布式方案,难度高。

共同点 :都是关系数据库 SQL 以外的可选方案,逻辑随着数据分布,任何模型都可以自己持久化,将数据处理和数据存储分离,将读和写分离,存储可以是异步或同步,取决于对一致性的要求程度。
不同点 :NOSQL 之类的 Key-Value 存储产品是和关系数据库头碰头的产品 BOX,可以适合非 Java 如 PHP RUBY 等领域,是一种可以拿来就用的产品,而领域模型 + 分布式缓存 + 存储是一种复杂的架构解决方案,不是产品,但这种方式更灵活,更应该是架构师必须掌握的。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文