- 博客(3)
- 收藏
- 关注
原创 MySQL数据库中,单表数据存储
页的空间是 16K, 并不是所有的空间都是用来存放数据的,会有一些固定的信息,如,页头,页尾,页码,校验码等等。针对每一个索引,都会单独建立一个B+树。但只有主键索引的B+树叶子节点中保存的数据量,才对应整张单表的数据量。一旦B+树 非叶子节点索引长度固定(数据量固定) ,其叶子节点的数量也就是固定的。,也就对应B+树的数据存储格式(索引页:非叶子节点 数据页:叶子节点)MySQL 的表数据是以页的形式存放的,页在磁盘中不一定是连续的。如果要具体到 InnoBD存储引擎。
2024-06-04 15:07:12 289
原创 MySQL加锁
索引(唯一 + 非唯一)上的等值查询,会将距离最近的左边界和右边界作为锁定范围,如果索引不是唯一索引还会继续向右匹配,直到遇见第一个不满足条件的值,如果最后一个值不等于查询条件,Next-Key Lock 退化为间隙锁。加锁的对象是索引,加锁的基本单位是 next-key lock,它是由记录锁和间隙锁组合而成的。唯一索引等值查询,并且记录存在,Next-Key Lock 退化为行锁。非唯一索查询,结果存在,会对唯一索引和非唯一索引同时加锁。唯一索引上的范围查询会上锁到不满足条件的第一个值为止。
2024-05-30 16:34:18 319
原创 HashMap和ConcurrentHashMap扩容机制
针对JDK1.7和JDK1.8中,HashMap和ConcurrentHashMap扩容时候的一些点。
2024-05-29 11:03:51 386
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人