关键词搜索

源码搜索 ×
×
数据库

MySQL技术内幕 InnoDB存储引擎:B+树索引

B+树索引并不能找到一个给定键值的具体行。B+树索引能找到的只是被查找数据所在的页。然后数据库通过把页读入到内存,再在内存中进行查找,最后得到要查找的数据。平衡二叉树平衡二叉树的定义如下:首先符合二叉查找树的定义,其次必须满足任何节点的两个字数的高度最大差为1。最好的想能需要建立一颗最优二叉树,但是最优二叉树的建立和维护需要大量的操作,因此,用户一般只需要建立一颗平衡二叉树即可。平衡二叉树的查询速
数据库

MySQL技术内幕 InnoDB存储引擎:分区表

一、MySQL分区表介绍分区是一种表的设计模式,正确的分区可以极大地提升数据库的查询效率,完成更高质量的SQL编程。但是如果错误地使用分区,那么分区可能带来毁灭性的的结果。分区功能并不是在存储引擎层完成的,因此不只有InnoDB存储引擎支持分区,常见的存储引擎MyISAM、NDB等都支持分区。但是并不是所有的存储引擎都支持,如CSV、FEDORATED、MERGE等就不支持分区。在使用此分区功能前
数据库

MySQL技术内幕 InnoDB存储引擎:一致性锁定读

在前一小节中讲到,在默认配置下,即事务的隔离级别为REPEATABLEREAD模式下,InnoDB存储引擎的SELECT操作使用一致性非锁定读。但是在某些情况下,用户需要显式地对数据库读取操作进行加锁以保证数据逻辑的一致性。而这要求数据库支持加锁语句,即使是对于SELECT的只读操作。InnoDB存储引擎对于SELECT语句支持两种一致性的锁定读(lockingread)操作:SELECT....
数据库

MySQL技术内幕 InnoDB存储引擎:一致性非锁定读

一致性的非锁定行读(consistentnonlockingread)是指InnoDB存储引擎通过行多版本控制(multiversioning)的方式来读取当前执行时间数据库中行的数据。如果读取的行正在执行DELETE、UPDATE操作,这是读取操作不会因此而会等待行上锁的释放,相反,InnoDB会去读取行的一个快照数据。下图直观展示了一致性的非锁定行读:之所以称其为非锁定读,因为不需要等待访问的
JAVA

内存模型是怎么解决缓存一致性问题的?

在再有人问你Java内存模型是什么,就把这篇文章发给他这篇文章中,我们介绍过关于Java内存模型的来龙去脉。我们在文章中提到过,由于CPU和主存的处理速度上存在一定差别,为了匹配这种差距,提升计算机能力,人们在CPU和主存之间增加了多层高速缓存。每个CPU会有L1、L2甚至L3缓存,在多核计算机中会有多个CPU,那么就会存在多套缓存,那么这多套缓存之间的数据就可能出现不一致的现象。为了解决这个问题
JAVA

再有人问你volatile是什么,把这篇文章也发给他。

在上一篇文章中,我们围绕volatile关键字做了很多阐述,主要介绍了volatile的用法、原理以及特性。在上一篇文章中,我提到过:volatile只能保证可见性和有序性,无法保证原子性。关于这部分内容,有读者阅读之后表示还是不是很理解,所以我再单独写一篇文章深入分析一下。volatile与有序性在上一篇文章中我们提到过:volatile一个强大的功能,那就是他可以禁止指令重排优化。通过禁止指令
其它方面

Chrome浏览器扩展程序的本地备份

由于众所周知的原因,有些朋友可能很难在线下载Chrome扩展程序。一种选择是可以让朋友把他成功安装的Chrome扩展程序导出成本地文件,然后让朋友发送给自己,在自己本地电脑上报这些本地文件直接拖到Chrome扩展程序设置页面上,这样无需网络,也能实现扩展程序的离线安装。本文介绍如何在一台已经安装了某个Chrome扩展程序的电脑上,将Chrome扩展程序导出成本地文件。大家在自己Chrome浏览器扩
点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载