TigerBeetle、静的メモリ確保とゼロコピーI/Oで金融向けDBの性能を追求
TigerBeetle Core System Architecture: Deconstructing Performance Engineering

TigerBeetleは、金融台帳向けに設計されたZig製のデータベースで、実行時の動的メモリ確保を排除し、直接I/Oとio_uringによるゼロコピー経路を採用する。シングルスレッドの実行ループとViewstamped Replicationによるコンセンサスで、サブミリ秒のテールレイテンシを実現し、数十万トランザクション/秒のスループットを達成する。固定サイズの128バイト構造体をメモリとディスクで同一表現にし、キャッシュ局所性を最大化する設計は、金融システムに求められる予測可能性と安全性を重視したものだ。
「静的メモリ確保は、金融システムにとって、弾力的で予測不能なスケーリングよりもはるかに価値があるトレードオフだ」
HNでの議論
41- g_delgado14
私だけでしょうか、この記事全体がLLM生成されたように見えるのは?
「出典」とされる2つのリンクは偽物で、404エラーになります。
- hoppp
これを依存関係やデータベースフレームワークにして、ユーザーが独自のビジネスロジックを定義して複式簿記を差し替えられるようにしつつ、システムアーキテクチャやネットワーキング機能、コンセンサスなどを再利用できるようにしてほしかったです。
まるで、このスタック上に任意のエントリロジックを備えた、意見を持ったカスタムデータベースを作成できる新しいパラダイムのようなものです。
- jorangreef
TigerBeetleのJoranです!TBを作りました。質問があればお答えします!
- kilroy123
彼らのシミュレーションは素晴らしいです:
- teabee89
「[...]シングルスレッド実行ループを利用することで、TigerBeetleはソフトウェアアーキテクチャを現代のハードウェアの物理的現実に完璧に適合させています。」
なぜシングルスレッド実行ループが現代のハードウェアの物理的現実とより整合するのか、誰か説明してもらえますか?