面经学习笔记

1.关于分布式存储

分布式存储需要对数据进行切片,然后要确定数据所处的节点,比如使用一致性哈希,一致性哈希能够相比于直接哈希更均匀的把数据分配到不同节点而且移动量比较少,只移动一部分。

分布式存储也需要做冗余备份,然后结构包括主从结构的,无主结构,多主库结构的。

2.关于视频都存储,以及带宽的优化

视频是分成数据块存储在不同的节点,使用元数据记录数据块所处的位置可以根据元数据去获取数据。

采用主从结构,主库写从库读,也就是内容分发到边缘的服务器可以减少直接对中心数据库的访问,降低了 90%以上的访问。

3.RDB 和 AOF 的全称

Redisdatabase

append only file

4.MySQL 日志相关的内容

MySQL 有三种日志,undolog 用于数据回滚,事务执行失败回滚,还有 Redolog 用于持久化宕机恢复 以及 binlog。

redolog 和 binlog 结合起来使用两阶段提交可以确保两个日志都记录完全,也方便从库去跟踪主库。Redolog 先标记 prepare,然后 binlog 标记 commit,然后 Redolog 标记 commit。

5.MVCC 多版本并发控制相关的内容

用于实现可重复读,不会读大于自己的 id 的事务的数据,以及虽然小于自己但是还未提交还处于活跃状态的事务的数据。

对于删除和更改的数据可以通过放入 undolog 用于后续回滚。多版本并发控制加上临键锁实现了可重复读而且快照读,或者单纯的 update 读都不会有问题。

相关推荐
ShineWinsu22 分钟前
对于Qt:QListWidget常见属性以及QListWidgetItem类的解析
开发语言·c++·qt·客户端·列表·qlistwidget·qlistwidgetitem
坤坤子吖36 分钟前
Linux网络编程:自定义应用层协议与 JSON 序列化
linux·服务器·网络·c++·笔记·json
Rain的Java大神之路2 小时前
你背的Spring答案,全是5.x时代的:7.0.8源码一翻,80%的博客都过时了
java·后端·面试
沫璃染墨2 小时前
从零入门计算机网络系列(十八):TCP连接管理详解——从三次握手与四次挥手到TIME_WAIT机制
运维·服务器·网络·c++·网络协议·tcp/ip·tcp
自信150413057593 小时前
重生之从0开始学习c++之——vector-中篇
c++·学习·算法
聪明的笨猪猪3 小时前
实际工程问题:AI生成MyBatis批量操作的SQL超限与性能雪崩
java·经验分享·面试·ai编程
ShineWinsu6 小时前
对于Qt:QDial常见属性以及信号的解析
开发语言·c++·qt·gui·客户端·旋钮·qdial
lsc_blog9 小时前
年终自评别贴提交记录,把技术产出讲成变化
数据库·面试·职场和发展·跳槽·求职招聘
科技苑14 小时前
C++ CAS与ABA问题详解,无锁编程的经典陷阱怎么解决?
c++·人工智能
GoAI15 小时前
DeepSeek Harness Memory (一)主流记忆插件总结
后端·算法·面试