前言

在网上有关Redis相关文章满天飞的时候,它是什么,用于解决什么问题,有哪些相类似的技术,与传统的关系型数据库有哪些差别,什么时候使用?这个时候我决定重温一下《NoSQL精粹》。

也正如书中所说的,篇幅短小,内容却很丰富。新技术的诞生,我们应该以既稳健又前瞻的心态看待它。


它是什么,用于解决什么问题?

其实NoSQL的定义并不准确,初意Not Only SQL,不是表达 No,SQL !

它就泛指现在描述的非关系型数据库,帮助主张无模式(schemaless)的数据,可以运行在集群环境,能够牺牲传统数据库所具备的一致性,换取一些新特性。能构建出稳定性更高,扩展性更好的编程系统。主要解决以下两个问题:

  1. 应用程序的开发效率。更符合应用程序的数据模型,简化交互,减少代码量。
  2. 大规模数据。快速获取并处理数据。

也正如脑图中所列出的点,它的一致性、分布式、持久化和映射化简是重点内容。

 
 
 

它的“友邦”

 
 
 
分布式模型

催生NoSQL的主要原因是:需要一种能勾运行在大集群上的数据库。随着数据量越来越多,购买服务器的纵向扩展scale up会变得愈发困难和昂贵,所以催生横向扩展的面向聚合数据库。

选择合适的数据库

宽泛的说,选用NoSQL数据库就前面提到的,效率,性能两个问题。两种因素可能互补也可能相互冲突,因为很难将数据存储模型的决策过程抽象出来,稍后再要修改,也颇为不易。

在决定适用某个NoSQL技术前,一定要测试其是否如预期般改进了程序员工作效率及数据访问性能。用服务封装数据库,能在需求变更或技术成熟后改换其他数据库技术。

重温《NoSQL精粹》的更多相关文章

  1. NoSQL精粹(NoSQL Distilled)——序言

    之前说到博客长草的问题,想了想除了很忙特别忙非常忙各种瞎忙忙你妹啊外,主要还是不知道写什么好--到这家公司的两年中从JS到领域驱动到缓存服务器从前端到后端各种折腾,有些东西虽然有所心得,不过既然前人已 ...

  2. 《NoSQL精粹》思维导图读书笔记

    <NoSQL精粹>思维导图读书笔记 各主题笔记 这本书短小精悍,虽不能解答所有NoSQL疑问,但在读书过程中会抛给你不少未曾想过的问题,给人以更深入的思考: 这里对每一个主题分别做了笔记: ...

  3. 《NoSQL精粹》读后感

    <NoSQL精粹>作者Pramod J. Sadalaga.Martin Flower著,译者爱飞翔. 本书以关系型数据库开头,讲解了关系型数据库的优缺点,然后引入了NoSQL数据库,并且 ...

  4. 读《NoSQL精粹》前三章有感

    现在NoSQL很流行,所以买了一本这方面的书,这本书虽然很薄 156页,但是感觉的确是大师的经验之谈,对于自己经验还是很少.无法能完全能心领神会,大师所说的,就像一个人说药苦,你没吃过.再听别人描述也 ...

  5. NoSQL 精粹

    1.2 阻抗失谐:关系型数据库过于简单和标准的表达方式(表+行或者说关系relation+元组tuple)不能很好的映射到应用(如表达嵌套:和其它表达方式如XML).解决办法:对象-关系映射框架,但查 ...

  6. 《NoSQL精粹》读书笔记

    NoSQL数据库数据模型的一般分类: 1. 键值数据模型 2. 文档数据模型 3. 列族数据模型 4. 图数据模型 常见NoSQL数据库: Redis, Cassandra, MongoDB, Neo ...

  7. NoSql 精粹导读图

  8. 《Nosql精粹》—— 读后总结

  9. NoSql数据库初探-mongoDB环境搭建

    NoSQL数据库一改关系型数据库的缺点,更容易的集成.分布式.无模式.故障恢复等特点,正在一步步餐食关系型数据库的市场,作为一个与时俱进的码农了解一下新技术是必须的,尤其是在读了<NoSql精粹 ...

随机推荐

  1. SAP 销售订单交货对成本中心记账

    销售订单发货不计入主营业务成本,而是直接接入费用科目,与成本中心挂钩的业务经常发生.不少公司只是简单地处理交货,计入主营业务成本,然后财务再手工将成本归结到相关的成本中心.其实SAP系统是支持销售订单 ...

  2. 安装上传下载插件,jdk及redis

    安装rz sz (1)编译安装root 账号登陆后,依次执行以下命令:cd /tmpwget http://www.ohse.de/uwe/releases/lrzsz-0.12.20.tar.gzt ...

  3. iotop使用方法

    iotop 是一个用来监视磁盘 I/O 使用状况的 top 类工具.iotop 具有与 top 相似的 UI,其中包括 PID.用户.I/O.进程等相关信息.   安装 yum install iot ...

  4. platform平台device和driver如何匹配【转】

    转自:https://www.cnblogs.com/sky-heaven/p/6869591.html 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接 ...

  5. 8.jenkins 远程管理

    远程原理 在我们之前的操作中,是直接将指令写在jenkins 里面的 .因为是做实验.所以指令比较简单. 如果是正式环境的话,可能指令就比较多了. 我们可以将他写成脚本. 我们可以再 jenkins的 ...

  6. ccf再卖菜

    https://blog.csdn.net/imotolove/article/details/82777819 记忆化搜索,还不太理解..

  7. 《Java面试全解析》505道面试题详解

    <Java面试全解析>是我在 GitChat 发布的一门电子书,全书总共有 15 万字和 505 道 Java 面试题解析,目前来说应该是最实用和最全的 Java 面试题解析了. 我本人是 ...

  8. Socket抽象层

    目录 一.Socket抽象层 一.Socket抽象层 我们知道两个进程如果需要进行通讯最基本的一个前提是能够唯一标示一个进程,在本地进程通讯中我们可以使用PID来唯一标示一个进程,但PID只在本地唯一 ...

  9. Linux 部署vue项目(使用nginx)

    1.部署Nginx 请参考Linux下部署nginx,此处不再重复 2.Vue项目打包 # 打包正式环境 npm run build:prod # 打包预发布环境 npm run build:stag ...

  10. SqlServer ----- 拷贝数据表

    两种方式,第一种方式只是把表中的字段进行拷贝,第二种把表中的关联关系,主键自增长全部拷贝. 1.把表中的关联关系,主键自增长全部拷贝. 选择需要拷贝的表,点击编辑器窗口,会看到这个表的sql 语句,主 ...