目前关系型数据库系统中有两种锁定模型:

一种是mvcc(Multi-Version Concurrency Control),方便并发控制的。

大多数rdbms都是使用这种方式实现。读不加锁,写加锁的机制。

另外一种是Lock-Based Concurrency Control

要多补充点数据库理论知识了

术语

ACID概念

原子性(Atomicity) A

一致性(Consistency) C

隔离性(Isolation)I

持久性(Durability)D

传统的关系型数据库必须会实现上面几个点的。而mongodb是不会的。发生crash(意外崩溃)数据容易出现问题。

mongodb采用的mmap机制,在断电和某些异常情况下有可能丢失数据或者crash,好消息是1.8以后可以打开journal日志来避免此类问题

schema less是一把双刃剑,因为什么数据都可以往里面存,不像mysql那样会有字段的概念可以对数据有效性把最后一道关,需要在编写程序的时候特别注意一下数据有效性

关系型数据库是怎么避免突然掉电、机器崩溃等意外事情数据仍然持久化?

通过写日志的形式。实际上关系型数据库在写入数据的时候,并不会马上写入到磁盘上去。而是在内存中,这样做的目的是,避免磁盘的i/0能力限制。所以它们一般是有个机制定期刷新数据到磁盘上。但是内存中的数据是不持久的,一旦掉电,内存中的数据都会没了,所以为了解决临时掉电等问题,保证数据持久化,所以每次操作都会写入一个日志文件。

下回启动,就根据这个日志文件来恢复数据。

欢迎指正!

数据库系统的并发控制的两种实现模型相关推荐

  1. 深度解析两种信用评估模型

    "大数据"概念的最早出现,是从2012年2月份纽约时报一篇文章开始的.到目前为止,在大数据领域当中的投资已经越来越热,该领域企业越来越多.大数据在美国金融当中最直接的场景,主要运用 ...

  2. DIV+CSS两种盒子模型(W3C盒子与IE盒子)

    在辨析两种盒子模型之前.先简单说明一下什么叫盒子模型. 原理: 先说说我们在网页设计中常听的属性名:内容(content).填充(padding).边框(border).边界(margin), CSS ...

  3. 以两种异步模型应用案例,深度解析Future接口

    摘要:本文以实际案例的形式分析了两种异步模型,并从源码角度深度解析Future接口和FutureTask类. 本文分享自华为云社区<[精通高并发系列]两种异步模型与深度解析Future接口(一) ...

  4. css盒模型(css的两种盒模型:标准盒模型、怪异盒模型)和 css3指定盒子模型种类的box-sizing属性

    所有HTML元素可以看作盒子,在CSS中,"box model"这一术语是用来设计和布局时使用. CSS盒模型本质上是一个盒子,封装周围的HTML元素,它包括:外边距(margin ...

  5. HTML的两种盒子模型

    一.引入 在网站的制作中,一个复杂的页面,被划分为一个一个的小块. 通过这种划分,把网站的开发过程化整为零.化繁为简,以达到减少开发工作,减轻维护压力的目的. 在网页中,把这种划分后的小块形象的看成一 ...

  6. C/S和BS两种开发模型

    C/S和BS两种开发模型 一.什么是C/S开发模式? 二.什么是B/S开发模式? 三.C/S和B/S的优缺点 一.什么是C/S开发模式? C/S⼜称Client/Server或客户/服务器模式.服务器 ...

  7. JMS的两种消息模型(Point-to-Point(P2P)和Publish/Subscribe(Pub/Sub))应用举例

    http://wuzhaohuixy-qq-com.iteye.com/blog/908395 1.P2P模型 在P2P模型中,有下列概念:消息队列(Queue).发送者(Sender).接收者(Re ...

  8. CSS的两种盒子模型

    前言 在CSS的学习过程中,经常会遇到由不同盒子模型带来的误解问题.这篇文章举例分析了两种不同的盒子模型:W3C盒模型和IE盒模型. 一.W3C盒模型(标准盒模型) 下图为W3C盒模型: CSS中设置 ...

  9. Hotspot虚拟机的两种架构模型

    市面上的java虚拟机有很多种,整体来说分两种架构特点:栈.寄存器 一.基于栈架构的特点(市面上常见的java虚拟机大多的架构方式) 设计实现更简单 不需要考虑寄存器分配问题(使用零地址指令方式分配) ...

  10. java model1和model2_Java项目(4)——探究两种开发模型的异同-Model1与Model2

    弱弱的说一句: jsp在web服务器上,这一点应该没有疑问吧? 首先很俗套地看下两个模型. Model1就是实现,实现就行,系统简单,谈不上架构,正如简单工厂并不算在23个常用设计模式之列一样.Mod ...

最新文章

  1. 经典相位法三维轮廓测量模型
  2. js端调用android端同步方法,JS怎样调用Android本地原生方法
  3. 0基础学python难吗-0基础学Python有多难?该怎么入门?
  4. ICC_lab总结——ICC_lab2:设计规划
  5. UltraGrid的Row,通过BindingSource,给ComboBox修改,修改后,内容无法即时反馈给UltraGrid的bug...
  6. webservice 原理
  7. Rectangle 属性
  8. 手机通讯录备份代码实现二
  9. 1.2 线性回归的keras实现
  10. CS61A自学者学习指南
  11. 微云Android2.2apk,微云安卓版V6.2.10
  12. HTML5小游戏源码收藏
  13. 8 岁小学生B站教编程惊动苹果,库克亲自送生日祝福!
  14. 换链接,群发和伪原创何时是尽头
  15. 【学习笔记】Splay
  16. 果然是WIFI引起局域网速度慢
  17. 《校园十大优秀青年评比》课程设计作品——顺利通过!!!
  18. 【前端基础】Vue学习笔记
  19. 17joys用户管理功能-模型
  20. Verilog学习手筏(一)

热门文章

  1. 多线程Socket传送文件的客户端和服务端源代码
  2. Wireshark实战分析之TCP协议(一)
  3. 对PAR DAR SAR的理解
  4. csdn中让图片居中
  5. cvtcolor函数_5 OpenCV几个函数操作实例
  6. ios 数组中的字典排序_iOS开发——根据数组中的字典中的某一元素排序
  7. 怎么用计算机输出手机的密码,手机连接wifi后怎么看密码?手机连接wifi后看密码的方法-太平洋IT百科...
  8. 计算机上可以插键盘吗,电脑键盘上这些按键竟然可以这样用?
  9. 软件页面安全性测试,软件Web安全性测试—SQL注入
  10. sqlserver 分组合并列_[雅思经验]?两个月备考,一战雅思7.5分经验分享!!!