ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 关于NoSQL,你必须知道的九件事

关于NoSQL,你必须知道的九件事

原创 Linux操作系统 作者:renjixinchina 时间:2013-05-14 11:34:37 0 删除 编辑
本文提到的列表来源于一篇文章,文章标题是关系型数据库使用者必须知道的一些NoSQL知识。其中总结的九点NoSQL与RDBMS的区别联系非常不错。NoSQLFan为大家翻译在此。
  1. 理解ACID与BASE的区别(ACID是关系型数据库强一致性的四个要求,而BASE是NoSQL数据库通常对可用性及一致性的弱要求原则,它们的意思分别是,ACID:atomicity, consistency, isolation, durability;BASE:Basically Available, Soft-state, Eventually Consistent。同时有意思的是ACID在英语里意为酸,BASE意思为碱)
  2. 理解持久化与非持久化的区别。这么说是因为有的NoSQL系统是纯内存存储的。
  3. 你必须意识到传统有关系型数据库与NoSQL系统在数据结构上的本质区别。传统关系型数据库通常是基于行的表格型存储,而NoSQL系统包括了列式存储(Cassandra)、key/value存储(Memcached)、文档型存储(CouchDB)以及图结构存储(Neo4j)
  4. 与传统关系数据库有统一的SQL语言操作接口不同,NoSQL系统通常有自己特有的API接口。
  5. 在架构上,你必须搞清楚,NoSQL系统是被设计用于成百上千台机器的集群中的,而非共享型数据库系统的架构。
  6. 在NoSQL系统中,可能你得习惯一下不知道你的数据具体存在何处的情况。
  7. 在NoSQL系统中,你最好习惯它的弱一致性。”eventually consistent”(最终一致性)正是BASE原则中的重要一项。比如在Twitter,你在Followers列表中经常会感受到数据的延迟。
  8. 在NoSQL系统中,你要理解,很多时候数据并不总是可用的。
  9. 你得理解,有的方案是拥有分区容忍性的,有的方案不一定有。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/15747463/viewspace-761024/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2011-01-30

  • 博文量
    373
  • 访问量
    2161122