摘要: 分布式共识算法随笔 —— 从 Quorum 到 Paxos 复制(Replication) 是一种通过将同一份数据在复制在多个服务器上来提高系统可用性和扩展写吞吐的策略, 。常见的复制策略有主从架构(Leader/Follower), 多主架构(Multi-Leader) 和 无主架构(LeaderLess)[1]。在无主架构模式下,需要保证多个节点写入数据的一致(即共识(consensus))。如, 某个无主架构包含 Server1, Server2, Server3 三个服务器, 当前状态为 x=nil,并发同时向他们分别发起 x=1, x=2, x=3 请求,最终一定会得到一个确定的值(而不会产生分歧)。这个值可以是写入成功的 x=1, x=2 或 x=3,也可以是未发起写入操作前的 x=nil。 阅读全文
posted @ 2023-01-18 22:28 杨领well 阅读(399) 评论(0) 推荐(0) 编辑
摘要: #万字长文解析最常见的数据库恢复算法: ARIES > 首发地址: https://mp.weixin.qq.com/s/Kc13g8OHK1h_f7eMlnl4Aw ## Introduction ![image](https://img2023.cnblogs.com/blog/687923/2 阅读全文
posted @ 2023-06-30 21:59 杨领well 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 本文将介绍 BW-Tree,这是一种高效的并发索引结构,被广泛应用于现代数据库系统中。BW-Tree 是由微软研究院开发的,旨在解决传统 B+ 树在高并发环境下的性能瓶颈。它结合了 B+ 树和前缀树的优点,具有出色的插入、删除和范围查询性能。 阅读全文
posted @ 2023-05-27 23:04 杨领well 阅读(650) 评论(0) 推荐(2) 编辑
摘要: Redis源码中广泛使用 **adlist(A generic doubly linked list)**,作为一种通用的双向链表,用于简单的数据集合操作。adlist提供了基本的增删改查能力,并支持用户自定义深拷贝、释放和匹配操作来维护数据集合中的泛化数据 `value`。 阅读全文
posted @ 2023-04-08 11:53 杨领well 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 本文以图文并茂的方式重新演绎 Paxos 开山之作 《The Part-Time Parliament》[1],并尝试解释原论文中语焉不详的地方。 背景 在 Paxos 小岛上,施行着一种 Parliament(议会) 政治。小岛上执行的所有 decree(法令) 都需要先由 Parliament 阅读全文
posted @ 2023-02-21 20:12 杨领well 阅读(229) 评论(1) 推荐(0) 编辑
摘要: 本文从《 An Empirical Evaluation of In-Memory Multi-Version Concurrency Control》摘取部分图片,来介绍 MVCC。 该文从并发控制协议,版本存储模型,垃圾回收机制,索引机制四个方面阐述了 MVCC 的现状。 更多详细内容,请查看原 阅读全文
posted @ 2022-10-05 14:54 杨领well 阅读(70) 评论(0) 推荐(0) 编辑
摘要: 本文从 《LSM-based Storage Techniques: A Survey》 摘取部分图片,来介绍 LSM tree 的相关内容。详细内容请查看论文原文。 in-place update V.S. out-of-place update 索引结构通常有两种数据的更新策略:in-place 阅读全文
posted @ 2022-09-17 19:06 杨领well 阅读(96) 评论(0) 推荐(0) 编辑
摘要: K8s 网络新手教程(Kubernetes Networking Guide for Beginners) 原文链接: Kubernetes Networking Guide for Beginners 译者注: 建议对照阅读 The Layers of the OSI Model Illustra 阅读全文
posted @ 2021-07-24 08:24 杨领well 阅读(46) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2021-04-13 06:39 杨领well 阅读(11) 评论(0) 推荐(0) 编辑
摘要: Redis 源码解读之逐出策略 背景和问题 本文想解决的问题: redis 触发逐出的时机是怎样的?redis 逐出策略有哪些?如何在海量的 key 中快速找到逐出评价值(idle)最高的key,并将之逐出?LFU 算法的频率是如何统计的? 结论 redis 触发逐出的时机是怎样的? 如图,主要有两 阅读全文
posted @ 2021-04-05 08:26 杨领well 阅读(51) 评论(0) 推荐(0) 编辑