![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
文章平均质量分 94
Owl丶
这个作者很懒,什么都没留下…
展开
-
RocksDB的Compaction : Leveled Compaction 和 Universal Compaction
文章目录Compaction算法LeveledTieredRocksDB的CompactionLeveled Compactionwhich level to compactsubcompactionUniversal CompactionCompaction Picking Algorithm前置条件1、由Space Amplification触发的压缩2、由Individual Size Ratio触发的压缩3、由 number of sorted runs 触发的压缩4、由 age of data 触原创 2021-06-14 23:43:34 · 2855 阅读 · 0 评论 -
多版本并发MVCC
事务隔离级别SQL标准的事务隔离级别包括:读未提交 (read uncommitted) :一个事务还没提交时,它做的变更就能被别的事务看到。读提交 (read committed) :一个事务提交之后,它做的变更才会被其他事务看到。可重复读 (repeatable read) :一个事务执行过程中看到的数据,总是跟这个事务在启动时看到的数据时一致的。当然可重复读隔离级别下,未提交变更对其他事务也是不可见的。可串行化(serializable): 对同一行记录,当出现不同事物的读写冲突时,是通过转载 2021-06-06 23:18:18 · 116 阅读 · 0 评论 -
数据库 杂记
1、悲观锁、乐观锁悲观锁:这种借助数据库锁机制,在修改数据之前先锁定数据,再修改的方式被称之为悲观并发控制。悲观锁有共享锁和排他锁。乐观锁:乐观锁假设数据一般情况下不会造成冲突,所以在数据进行提交更新的时候,才会正式对数据的冲突与否进行检测,如果发现冲突了,则返回给用户错误的信息,让用户决定如何去做。乐观锁适用于读操作多的场景,这样可以提高程序的吞吐量。比如CAS。2、布隆过滤器(Bloom Filter)直观的说,bloom算法类似一个hash set,用来判断某个元素(key)是否在某个集合中。原创 2021-06-05 23:41:05 · 331 阅读 · 3 评论 -
《高性能MySQL》读书笔记(1~6章)
第1章 MySQL架构与历史MySQL最重要、最与众不同的特性是它的存储引擎架构,这种架构的设计将查询处理(Query Processing)及其他系统任务(Server Task)和数据的存储/提取相分离。这种处理和存储分离的设计可以在使用时根据性能、特性,以及其他需求来选择数据存储的方式。1.1 MySQL逻辑架构顶层服务层并非MySQL独有,大多数基于网络对外提供服务的中间件都有这一层,主要是连接处理、授权认证、安全等。第二层是MySQL的服务器层,大多数核心服务功能都在这一层,包括解析、原创 2021-05-08 15:21:36 · 1017 阅读 · 1 评论