学习笔记20230315
创始人
2025-05-30 08:32:31

目录

一、mysql聚簇和非聚簇索引的区别(非叶子节点页,一页16KB)

二、Mysql MyIsam和InnoDB的区别

三、mysql的隔离级别

四、什么是MVCC

五、事务的基本特性和隔离级别

六、redis分布锁实现

七、redis zset底层数据结构

八、缓存雪崩、缓存穿透、缓存击穿

九、redis 数据结构 及用途

十、缓存和mysql 一致性方案

十一、redis 备份

十二、redis 过期删除策略

十三、mysql 底层索引结构

十四、mysql 优化策略

十五、Autowrited和Resource 的区别

十六 、Sentinel用什么限流算法与ngix算法区别

总结


一、mysql聚簇和非聚簇索引的区别(非叶子节点页,一页16KB)

  • 聚簇索引:数据存储与索引放在一起,叶子节点的data域存放的是数据。
  • 非聚簇索引:数据存储与索引不一起放在叶子节点,包含MyIsam主键或辅助索引。

优势:

1、查询速度快(队覆盖索引之外);

2、范围查询效率高;

3、适合用于排序;

劣势:

1、维护索引成本高,特别是插入新行和更新主键要分页(page split)(低峰期精神生活mize table优化表、独立表空间);

2、数据存储稀疏,可能会比全表扫描更慢;

3、如果聚集索引比较大时,辅助索引也会变得更大;

InnoDB中聚簇索引(主键、非空唯一索引、6个字节长整形自增row_id)。

MyIsam只是非聚簇索引。

二、Mysql MyIsam和InnoDB的区别

1、Mylsam 是支持全文索引、储存行记录、数据与索引是分别储存的、只有表级锁;

2、InnoDB 支持事务、外键、表级锁、行级锁(默认);

三、mysql的隔离级别

1、序列化:解决幻读(两次查询条数不一致,读取第一次不存在的数据 ,插入时已经存在)。

2、可重复读(默认RR):解决不可重复读(select ... for update解决幻读)select ... for update学习_难顶货的博客-CSDN博客。

3、读已提交:解决脏读(读取到事务未提交的数据)。

4、读未提交:

mysql隔离级别_songtaiwu的博客-CSDN博客

四、什么是MVCC

多版本并发控制:通过快照读保存数据,解决读写锁冲突,每个事务session能看到自己特定的版本数据 ,版本链。

mvcc作用隔离级别:

两个隐藏列:

比对过程:

两个隔离级别的区别:

总结:

五、事务的基本特性和隔离级别

1、原子性:要么全部成功,要么全部失败。

2、一致性:总是一致性状态到另外一个一致性的状态。

3、隔离性: 一个事务不会影响到另外一个事务。

4、持久性: 事务提交完后,保存到数据库。

六、redis分布锁实现

问题:

1、原子性:锁不释放,setnx 解决;

2、过期时间超时:任务执行时超出,看门狗机制 ,锁过时间的三分之一时间的定时器(默认30秒)

3、可重入:递归查询、类似AQS机制,计数;

4、误删:uuid + lua 

5、异步复制实现高可用性:多个master集群,红锁、redLock,n/2+1 , 总体比对时间不能超过过期时间

七、redis zset底层数据结构

ziplist: 元素数量超过128个,所有元素大小超过64字节。

skiplist:

设计理念:链表的基础上建立多层索引(最高32层),空间换时间。

底层数据结构: zskiplist: tail,head,length,level ,  zskiplistnode: 节点

每个节点有1~32层的层数, 前进指针+跨度

八、缓存雪崩、缓存穿透、缓存击穿

1、缓存雪崩:大量数据过期,访问数据库

加随机时间,互斥锁,数据预热

2、缓存穿透:缓存和数据库都没有数据

应用层校验,设置短期的空数值,布隆过滤器

3、缓存击穿:缓存没有数据 ,高并发下访问数据库 

热点数据,排队

九、redis 数据结构 及用途

1、String :字符串

2、List : 

3、set: 粉丝

4、zset: 排序

5、hash : 字典

用途:session共享、坐标、大数据基数统计、计数器。

十、缓存和mysql 一致性方案

1、先修改数据再删除缓存,存在读取历史缓存问题。

2、先删除缓存再修改数据,存在未修改前缓存数据。

3、在第二个方案基础上,过段时间删除缓存。

十一、redis 备份

1、rdb: save、bgsave  (fork子进程)、多组 save  m n (基于bgsave,二进制  dump.rdb,全量同步)

2、aof: log文件,定期覆盖压缩 ,操作系统缓存,定时去查找数据,每次修改,由操作系统决定。

3、rdb+aof 默认启用aof

十二、redis 过期删除策略

1、定时删除:定时器 、节省内存、浪费cpu资源。

2、惰性删除:查询再判断,内存浪费

3、定期删除:设置执行时间和扫描耗时,平衡执行效率和限时

分桶,随机20key

十三、mysql 底层索引结构

1、二叉树、二叉查找树、平衡二叉树,红黑树、b树、b+树

优点:

非叶子节点只需要存放索引不储存数据 ,数据页固定,存放更多数据;

插入、删除 ,冗余节点不会导致树变形;

叶子节点是双向链表,按顺序存放,有利于范围查询。

十四、mysql 优化策略

1、选择适当储存引擎;

2、建立适当索引,分布值多做为索引 ;

3、不必要查询字段 ;

4、建立字段属性;

5、使用join代替子查询;

6、适用联合union来代替手动创建的临时表

7、执行计划:

 id:

select_type: simple、subquery、derived、union

table: 表名或别名

parttion: 

type: all、 index(按索引次序)、range(有限制索引范围)、ref (单个值的行)、eq_ref(主键或唯一索引)、const (常量)、NULL(不用返回表)

possiable_key: 可能用到的索引。

key: 优化查询后,实际用到的索引。

key_len: 索引长度

ref: 表示key列记录中查找值所用的列或常量。

rows: 读取的行数,不是很精准。

filtered(5.1): 针对表里符合条件的记录数的百分比。

Extra: Using index

十五、Autowrited和Resource 的区别

spring 支持依赖注入

autowrite  启动就加载到IOC 容器(require=false)、type方式 ;

存在问题及解决方案:

存在多个bean ,执行

@Primay : 优先加载这个 bean

@Quifilter:  过滤数据

resource   获取才加载,name方式 也可以指定type

如果指定情况下会优先使用name => type

十六 、Sentinel用什么限流算法与ngix算法区别


总结

相关内容

热门资讯

比亚迪、小米超特斯拉成国人买车... 在中国汽车市场上,特斯拉一直都是非常特殊的存在,作为新能源汽车的龙头,特斯拉的号召力可谓是无与伦比,...
截至4月底首次突破33万亿元—... 公募基金总规模仍在持续上涨。截至今年4月底,我国境内公募基金规模首次突破33万亿元大关,这也是自20...
法网-高芙2-1逆转萨巴伦卡首... 北京时间6月8日凌晨,2025赛季网球大满贯法国公开赛继续进行,在女单决赛中,赛会2号种子高芙在先丢...
险资年内举牌15次,半年不到举... 如果要问最近几个月最火的资本力量是什么?各大保险公司的保险资本无疑是其中最亮眼的明星,险资不断大规模...
深度|券商托管私募这十年:从零... 编者按:十载春华秋实,鉴往知来;十年星河璀璨,与光同行。自破茧初啼至引领风潮,“金长江”评选始终以专...
美联储系统高管:特朗普关税政策... 新华社北京6月7日电 美国圣路易斯联邦储备银行行长阿尔韦托·穆萨莱姆日前接受英国《金融时报》采访时说...
中央汇金成为8家金融机构实控人... 6月6日,证监会发布公告称,长城国瑞证券、东兴证券、信达证券、东兴基金、信达澳亚基金、长城期货、东兴...
至信股份欲登陆上交所主板 打造... 重庆至信实业股份有限公司6月6日在上海证券交易所网站披露招股说明书(申报稿),拟在上交所主板首次公开...
无证电焊电动自行车支架,北京丰... 新京报讯(记者彭镜陶)近期,北京市丰台区消防救援支队开展了人员密集场所动火作业全链条整治行动,查处一...
知名连锁品牌济南一门店,运营一... 近两年,火遍全网的“谷子经济”正在经历一次行业洗牌。6月6日,新黄河记者走访市场发现,省内知名二次元...
币圈丽盈:6.8比特币反弹动能... 币圈丽盈:6.8比特币最新行情分析 文章发布时间2025.6.8----0点:10分 比特币现价10...
“并购六条”激发北京地区并购重... ● 本报记者 昝秀丽 华大九天拟收购芯和半导体,构建从芯片到系统级EDA解决方案;中国船舶收购中国重...
和讯投顾刘伟奇:指数窄幅震荡,... 6月6日,我们来做一个复盘。和讯投顾刘伟奇表示,今天窄幅震荡了一天,成交量小幅萎缩,涨跌个股各半,什...
含胖量上升!永辉超市胖东来模式... 6月13日,永辉超市第100家胖东来模式调改店南京江宁万达店即将开业!100家调改门店的完成标志着永...
中信证券股份有限公司 关于召开... 本公司董事会及全体董事保证本公告内容不存在任何虚假记载、误导性陈述或者重大遗漏,并对其内容的真实性、...
30亿元!深铁集团年内第五次借... 【大河财立方消息】6月6日,万科A发布公告称,第一大股东深圳市地铁集团有限公司(以下简称深铁集团)拟...
关注优质重资产化工企业,石化E... 2025年6月6日,化工板块走强,石化ETF(159731)盘中上涨超0.9%,盘中交投活跃且频现溢...
险企境外可转债启航!中国平安逾... 本报(chinatimes.net.cn)记者胡金华 上海报道 可转债通常为沪港两地资本市场保险巨头...
中国进出口银行前5个月投放对外... 记者6日从中国进出口银行获悉,今年前5个月,进出口银行投放对外贸易领域贷款4600亿元,全力支持外贸...
特朗普和埃隆都吵完了,万斯才出... 41岁的万斯,已经开始显现野心了。还记得2025年2月底,泽连斯基到白宫求援的时候,眼见泽连斯基和特...
金表品牌“西普尼”冲刺港交所 公司动态 6月3日,深圳西普尼精密科技股份有限公司(以下简称“西普尼”)正式向港交所递交了招股说明...
马斯克父亲劝儿子服软:过头了 ... 澎湃新闻记者 吴遇利特朗普与马斯克的“分手大战”走向扑朔迷离。从市场来看,情绪有所降温。当地时间6月...
原创 利... 根据河北省多家城市商业银行的2024年度业绩报告来看,河北银行在资产规模上仍旧是当之无愧的“河北一哥...
锦江酒店迈向港股市场,拟启动I... 近日,国内酒店业的领军企业锦江酒店(股票代码:600754.SH)发布了一则公告,宣布为深化公司的全...
精酿战局未歇 汽水烽烟又起 啤... 初夏傍晚,位于北京隆福寺的京A精酿餐吧人声鼎沸,冰凉的鲜啤是都市人缓解疲惫的热门选择。这并非孤例,记...
太平洋货轮仍在燃烧,3000辆... 太可怕了,一场大火,3000辆汽车灰飞烟灭,再一次引发了人们对电动汽车的讨论。当地时间6月3日,美国...
谢卫卸任交银施罗德基金总经理 ... 中经记者 顾梦轩 夏欣 广州 北京报道6月6日晚,交银施罗德基金发布公告称,公司原总经理谢卫转任资深...
孟羽童的野心,董明珠的困局,为... 本文来自微信公众号:考拉Clara,作者:考拉Clara,题图来自:视觉中国(董明珠与孟羽童,202...
拆商,如何解决你99%的难题 在当今这个充满不确定性和复杂性的时代,解决问题的能力成为了每个人都必须具备的核心竞争力。笛子(王奕迪...
【资本】最新IPO排队186家... 来源:最|投行 与您一路同行,做您最忠实的拥护者--PCB行业融合新媒体-2025年最有价值的电路板...