# BTrDB
[[University of California, Berkeley]] の [[Michael P Andersen]]・[[David E. Culler]] が FAST '16 で発表した時系列データベース([[@2016__FAST__BTrDB - Optimizing Storage System Design for Timeseries Processing]])。送電網に配置されるマイクロシンクロフェーザ(uPMU)のような高精度(ナノ秒タイムスタンプ)・高サンプルレート(120Hz)テレメトリを対象に、ゼロから設計された。
中核は「時間区分・バージョン注釈付き copy-on-write の k-ary ツリー」で、このツリー自体がストレージとインデックスを兼ね、内部ノードに min/mean/max/count の統計サマリを埋め込むことで解像度指定の統計クエリを対数時間で処理する。4ノードの EC2 クラスタで挿入 53M values/秒・クエリ 119M values/秒、全体圧縮率 2.9x を達成し、Go による実装はわずか4709行(テストコード除く)。SEDA パラダイム(request/write/storage の3ステージ)に基づき、ストレージバックエンドは Ceph RADOS(本番)のほか任意のアドレス可能ストレージを許容する抽象化を持つ。
同時期の [[Gorilla]](Facebook, 2015 VLDB)と異なり、秒精度でなくナノ秒精度のタイムスタンプ、順不同挿入、加速された統計集約を同時にサポートする点が差別化点として論文中で明示されている。
## 関連
- 一次論文: [[@2016__FAST__BTrDB - Optimizing Storage System Design for Timeseries Processing]]
- 開発元: [[University of California, Berkeley]]
- 著者: [[Michael P Andersen]] / [[David E. Culler]]
- 概念: [[時系列データベース]]