クラウドネイティブなデータベースへの進化の歴史は、そのまま「分散システムにおける物理制約との戦い」であり、スケーラブルなシステム設計の最高の教科書です。
従来のRDBMSはコンピュートとストレージの密結合が限界を生んでいました。これを打開したAmazon Auroraは、「THE LOG IS THE DATABASE」の思想で分離でスケーラビリティを、
Google SpannerやNewSQLは、TrueTime APIやPaxos/Raftの分散合意アルゴリズムで分散環境の強整合性を獲得し、トレードオフとしてレイテンシーを犠牲にしました。
個別の要素技術や論文は知られていても、「どのような課題を乗り越え、結果としてどのようなトレードオフを選び現在に至ったのか」という全体像は意外にも体系化されていません。
本セッションでは点在する論文や技術仕様を線で繋ぎ合わせ、巨大な分散システムがいかに物理制約を克服してきたかDeep Diveします。「なぜスケールし、何を犠牲にするのか」この理解はDB選定の枠を超え、マイクロサービス等あらゆる分散システム設計の指針となるはずです。
株式会社hacomono
プリンシパルエンジニア(分散システム)
株式会社hacomono所属のプリンシパルエンジニア(分散システム)。
hacomonoではマイクロサービス化に向けた課題整理/設計/開発を担当。
前職ではRaftを用いた分散ストレージを設計開発。
プライベートではRaftを用いた分散KVSに関する技術同人誌の執筆を行ったり、趣味でパブリッククラウドの論文を読みブログにメモとして残している。