数据库
文章平均质量分 63
HappySkaikai
CV/GIS小菜鸟
展开
-
MySQL 体系架构 Oracle体系架构 PostgreSQL体系架构
转自http://blog.csdn.net/tianlesoftware/article/details/7029112 一.逻辑模块组成 总的来说,MySQL 可以看成是二层架构,第一层我们通常叫做SQL Layer,在MySQL 数据库系统处理底层数据之前的所有工作都是在这一层完成的,包括权限判断,sql 解析,执行计划优化,querycache 的处理等等;第二层就是转载 2015-06-14 10:28:07 · 750 阅读 · 0 评论 -
H2 架构初探
H2 架构初探H2是一个纯Java编写的数据库,具体就是一个jar,支持嵌入式和Client/Server两种模式,使用起来非常方便。由于其使用纯java编写,并且只有1.4M左右大小,比起同样规模的C系列数据库(如sqlite)更适合作为学习数据库原理的入门级源码。 下面结合H2文档来分析H2的总体架构。H2总共有20多个包,按照其功能从上到下划分分别是: 1. JDBC驱动 2. 连接和会原创 2016-02-19 10:38:21 · 3763 阅读 · 0 评论 -
MVCC(H2、Inoodb,CopyOnWrite, Clojure)
之前,研究H2源码的时候,重点了解了一下MvStore。结合它的文档和Inoodb的实现,发现它叫MVCC(Multi-Version Concurrency Control),即多版本控制,同时它也叫乐观锁。后面发现它的理念在Java的CopyOnWriteList,Clojure的标识与状态分离,惊奇地发现它似乎无处不在,于是,试着对此进行总结。相对这些名词“乐观锁”比较合其神,所谓乐观,与“悲原创 2016-03-21 22:58:57 · 1440 阅读 · 0 评论 -
H2的存储子系统——MvStore
MvStore是多版本的,持久化的,以LSF为写入策略的的Key-Value存储系统,是作为H2的新一代存储子系统设计,在H2的架构之中处于第二层,即在文件抽象层之上。它的特点如下: 基于多版本页数据结构(包括B树和R树实现) 以 java.util.Map为基础Key-Value存取接口 多存储形式支持(内存、普通文件、加密文件、压缩文件) 事务与并发读写支持 下面以官方的例子来看看MvSto原创 2016-02-25 20:01:29 · 4344 阅读 · 0 评论