Distributed System

  • TinyKV Project4 Transactions

    这一节实现的事务本应该需要和 TinySQL 配合使用,但是因为我们只有实现 TinyKV 部分,所以有些地方看起来有些割裂。 Percolator 首先说明的一点是,Percol…

    2023年3月2日
    14.0K3
  • TinyKV Project3 MultiRaftKV

    这一节中,最难的就是 Project 3B,引无数英雄竞折腰!!当然撑过 3B,你就解放了。 Membership Change 在 Project3A 中我们需要实现 Leade…

    2023年3月2日
    1.3K0
  • TinyKV Project2 RaftKV

    这一节需要我们实现 Raft,TinyKV Raft 这部分很多都是抄 Etcd 的 Raft 模块。你可以注意到连测试用例都很像。所以这一节我拿到手就会做啊,首先去 Etcd c…

    2023年3月2日
    1.8K1
  • TinyKV Project1 Standalone KV

    这一节实验要求我们基于 badger 实现一个支持 Column Family 的 KV 数据库。 Column Family,也叫 CF,这个概念从 HBase 中来,就是将多个…

    2023年3月2日
    1.4K0
  • Raft 成员变更的相关问题

    之前一直没有深入了解过 Raft 的成员变更,实现也就是在 TinyKV 中搞了一个单步成员变更,以至于在面试的时候,甚至想当然以为成员变更一定要被 apply 后才生效,结果就被…

    2022年2月20日
    3.5K5
  • 分布式原子提交协议大全

    在单机上实现原子提交没啥好说了,可以通过 logging 来保证,但是在分布式系统中,情况就不简单。很多人会把 2PC/3PC 这类算法叫做分布式一致性算法,但是我个人觉得它们叫原…

    2022年2月2日
    1.6K1
  • Talent Plan TinyKV 白皮书

    前言 最近参加了 PingCAP 的 2021 Talent Plan KV 学习营,大概就是在不到两个月的时间里完成 TinyKV。之前做完了 MIT 6.824 就被人安利过,…

    2022年1月9日
    6.9K36
  • 2021 MIT 6.824 札记

    满打满算花了 25 天完成了 2021 MIT 6.824 的 4 个 lab,这里记录下自己遇到的坑和设计思路,为后续者参考。 这里个人给的难度评级是 Lab 2 > La…

    2021年8月9日
    6.3K0
  • 理解 FLP-Impossibility 论文

    FLP 这篇论文在分布式领域有着重要的作用,当然,这篇文章也写得晦涩难懂。这是第一篇我死扣每个字读下来的分布式论文,十分吃力,在此记录下,并且竟可能写的简单,希望能够帮助初入分布式…

    2021年6月10日
    3.2K8
  • Amdahl’s law(阿姆达尔定律)公式推导与思考

    介绍 Amdahl’s law(阿姆达尔定律) 由计算机科学家 Gene Amdahl 在 1967 年提出,旨在用公式描述在并行计算中,多核处理器理论上能够提高多少倍…

    2020年10月13日
    4.2K2