MySql事务

『浅入深出』MySQL 中事务的实现 https://draveness.me/mysql-transaction/ MySQL 中如何实现事务隔离 https://www.cnblogs.com/fengzheng/p/12557762.html 详解一条 SQL 的执行过程 https://juejin.cn/post/6931606328129355790 首先说读未提交,它是性能最好,也可以说它是最野蛮的方式,因为...

2023-03-16 19:35 · 5 min · 2136 words · Reid

MySql语句优化

一,SQL语句性能优化 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 应尽量避免在 where 子句中对字段进行 null 值判断,创...

2023-03-16 19:35 · 9 min · 4345 words · Reid

LSM Tree

简介LSM Tree MySQL、etcd 等存储系统都是面向读多写少场景的,其底层大都采用 B-Tree 及其变种数据结构。而 LSM-Tree 则解决了另一个应用场景——写多读少时...

2023-03-16 19:35 · 12 min · 5705 words · Reid

ES面试题

ElasticSearch面试题 1.为什么要使用Elasticsearch? 因为在我们商城中的数据,将来会非常多,所以采用以往的模糊查询,模...

2023-03-16 19:35 · 16 min · 7614 words · Reid

20230214 MIT6.824 2022 Lab4 ShardedKV

ShardedKV 介绍 有关 shardkv,其可以算是一个 multi-raft 的实现,只是缺少了物理节点的抽象概念。在实际的生产系统中,不同 raft 组的成员可能存在于一个物理节点上,...

2023-03-16 19:34 · 23 min · 11170 words · Reid

MIT6.824 2022 Lab3 RaftKV

介绍 在lab2的Raft函数库之上,搭建一个能够容错的key/value存储服务,需要提供强一致性保证。 强一致性介绍 对于单个请求,整个服务需...

2023-03-16 19:34 · 8 min · 3850 words · Reid

Raft Etcd 之 Linearizable Read

介绍 linearizable read 简单的说就是不返回 stale 数据,具体可以参考Strong consistency models Read Index 机制就是 Leader 在收到读请求时进行如下几步: 如果 Leader 在当前任期还没有提交过日志,先...

2023-03-16 19:34 · 3 min · 1100 words · Reid

MIT6.824 2022 Raft 为什么Raft协议不能提交之前任期的日志

如果允许提交之前任期的日志,将导致什么问题? 我们将论文中的上图展开: (a): S1 是leader,将黄色的日志2同步到了S2,然后S1崩溃。 (b): S5 在任期...

2023-03-16 19:34 · 6 min · 2706 words · Reid

Multi Raft

Mulit Raft Group 通过对 Raft 协议的描述我们知道:用户在对一组 Raft 系统进行更新操作时必须先经过 Leader,再由 Leader 同步给大多数 Follower。而在实际运用中...

2023-03-16 19:34 · 5 min · 2467 words · Reid

MIT6.824 2022 Raft Lab2C Log Compaction

介绍 对Raft Figure2 中需要持久化的字段进行保存。 完成persist()和readPersist()函数,编码方式参照注释 优化nextIndex[...

2023-03-16 19:34 · 3 min · 1309 words · Reid