闭卷重建从API到持久化路径的故障模型、消息状态、不变量与恢复边界。
分布式系统与可靠服务 · 小纸条
选一章打印。双面打印(按长边翻页)后沿虚线剪开,每张卡片正面题目、背面答案。
闭卷重建WAL、校验与崩溃恢复的故障模型、消息状态、不变量与恢复边界。
闭卷重建LSM树与写放大的故障模型、消息状态、不变量与恢复边界。
闭卷重建B树、页与缓存一致性的故障模型、消息状态、不变量与恢复边界。
闭卷重建Bloom Filter与读路径的故障模型、消息状态、不变量与恢复边界。
闭卷重建副本放置、修复与数据校验的故障模型、消息状态、不变量与恢复边界。
闭卷重建实验:WAL恢复与LSM归并的故障模型、消息状态、不变量与恢复边界。
机制:先追加带长度与校验的日志再修改可变状态,恢复只重放完整有效记录并保持幂等;实验:截断不同位置的日志并输出可恢复前缀;边界:只凭换行分割日志无法区分半条记录,恢复也要检测重复事务。
机制:写请求经路由、并发控制、WAL、内存表、复制确认和后台刷盘,读请求可能查缓存、内存表和多层文件;实验:画一次Put和Get穿过的组件与确认点;边界:返回成功的持久性取决于确认规则、刷盘和副本故障域,不是调用了write就保证。
机制:B树通过高扇出减少随机I/O,页分裂、日志与锁必须维持结构和并发不变量;实验:对小阶B+树执行插入并打印叶链与分裂路径;边界:缓存页脏写顺序错误可能让父指针指向未持久化子页。
机制:写入先到内存表,刷成有序文件,后台压实合并层级;顺序写换来读放大与压实开销;实验:模拟两个SSTable归并、墓碑和版本选择,统计读写放大;边界:墓碑过早丢弃会让旧层数据复活,压实占用I/O会抬高前台尾延迟。
机制:副本跨故障域放置,Merkle树或分块校验定位差异,修复要限速并防止旧数据覆盖新版本;实验:比较三副本在同机架与跨区域放置的相关故障风险;边界:副本修复流量可能压垮前台,静默损坏要求端到端校验而非只重拷贝。
机制:Bloom过滤器用多哈希位图判断一定不存在或可能存在,降低无效SSTable读取但允许假阳性;实验:给m、k、n计算假阳性近似并模拟插入查询;边界:假阴性通常意味着实现或生命周期错误;删除和重建必须与文件对应。
机制:解析带校验日志得到有效前缀,再按键和序号归并多层记录与墓碑;实验:覆盖完整日志、截断、校验失败和重复版本测试;边界:实验抽象掉磁盘写屏障,报告必须声明持久化假设。