【#も読】n月刊ラムダノート、実用Raft(@yusuktan)のトップ画像

【#も読】n月刊ラムダノート、実用Raft(@yusuktan)

投稿日時:
maguroのアイコン

Deno Land Inc. / ソフトウェアエンジニア

maguro

Xアカウントリンク

「あの人も読んでる」略して「も読」。さまざまな寄稿者が最近気になった情報や話題をシェアする企画です。他のテックな人たちがどんな情報を追っているのか、ちょっと覗いてみませんか?


みなさんこんにちは。

この度「あの人も読んでる」に寄稿させていただくことになったmaguro (X @yusuktan)です。

僕が読んで面白かった本、記事、動画などのコンテンツを定期的にご紹介していければと思います。よろしくお願いします。

今回紹介するコンテンツ

記念すべき第1回目にぜひ紹介したいのが、2025年3月1日に発売されたばかりのラムダノート社「n月刊ラムダノート Vol.5, No.1(2025)」です。ラムダノート社が不定期で発行している技術解説情報誌で、今号は以下の3本の記事が掲載されています。

  • 自然数を作って学ぶLean言語(井上亜星 著)
  • Chromiumはテキストをどのように描画しているのか(佐藤可奈留 著)
  • 実用Raft(太田健 著)

どの記事も他ではなかなか読むことのできない高い唯一性と素晴らしい質ですが、その中でも3つ目の「実用Raft」をご紹介できればと思います。

推しポイント

少し自分語りをさせてください。僕はソフトウェアエンジニアとして働く傍ら、米ジョージア工科大学大学院のオンライン修士コースに通い、コンピュータサイエンスの勉強をしています。そこで先学期にとった授業がDistributed Computingでした。この授業でプログラミング課題として課されたのが「Paxosを使った分散キーバリューストアの実装」です。Paxosというのは、分散システムの理論的な基礎を築いた第一人者であるLeslie Lamportにより記述された分散合意アルゴリズムです。Raftが2014年に登場するまでは「分散合意アルゴリズム」といえばPaxosのことを意味する、と言えるほど広く採用され、00年代~10年代前半に登場した分散システムを支えました(Google Spanner、Google Megastoreなど)。ただこのPaxos、非常に難解であることでも知られており、"understandability"(理解可能性)を最重要視して設計された新たな分散合意アルゴリズムRaftが登場することになります。実際、僕もPaxosを使って授業の課題をこなす中で、その難解さに苦しめられたのですが、課題をすべてPaxosでこなしたあとに「Raftだとどうなるんだろう?」と思い年末年始の休みに軽く試してみたところ、Paxos実装に比べて実装が格段にシンプルになり、大部分のテストコードがパスするまでにかかった時間も非常に短く済みました。

そんな素敵な分散合意アルゴリズムRaftについて、「実用Raft」では以下のような切り口で解説が展開されていきます。

  • 特徴、Raftを使うと何が実現できるのか
  • Raftによる分散キーバリューストアの実装 (実装言語はRust)
  • Raftのアルゴリズム概説
  • さまざまな実践的なシナリオにおけるRaftの性能の測定
この記事のつづきを読もう
新規登録/ログインしたらできること
  • すべての記事を制限なく閲覧可能
  • 限定イベントに参加できます
  • GitHub連携でスキルを可視化
ログイン
アカウントをお持ちでない方はこちらから新規登録