# RBAD
**Raft-Based Anomaly Diagnoser**。[[Peking University]] の [[Lingzhe Zhang]]・[[Tong Jia]]・[[Ying Li]] らが提案した、分散ストレージシステム向けの Raft ログを活用した異常診断フレームワーク。IEEE Transactions on Services Computing(DOI: 10.1109/TSC.2024.3521675)に掲載。
## 概要
既存の異常診断手法が依存する監視データ(メトリクス)とアプリケーションログは収集オーバーヘッドが高い。RBAD はコンセンサスアルゴリズム Raft がシステム動作の一部として必然的に生成する **Raft ログ**を診断データ源として利用することで、**追加収集コストをほぼゼロ**にしつつ高精度な異常診断を実現する。
## 主な特徴
- **入力**: Raft ログ(raft-latency・local-latency・value-size の 3 種の時系列特徴量)
- **前処理**: Timestamp Injector(タイムスタンプ付加)+ Raft-Feature Extractor + カルマンフィルタ
- **診断エンジン**: DTW(動的時間伸縮法)によるパターンマッチング + 全結合層による重み付け
- **フェーズ**: オフライン特徴分析(代表パターンベクトル構築)→ オンライン異常診断
## 性能
Apache IoTDB・Alluxio の 2 システムで 14 種類の異常を対象に評価:
- **診断精度**: F1-Score 92.07%(IoTDB)・94.44%(Alluxio)
- **監視ベース最高手法(openGauss)比**: +15.38%
- **ログベース最高手法(Cloud19)比**: +53.10%
- **収集オーバーヘッド**: 書き込みスループット低下 1.3%(監視データ: 23.79%、アプリログ: 55.37%)
## 診断対象異常クラス
| カテゴリ | 異常種別 |
|----------|---------|
| リソース起因 | CPU 飽和・IO 飽和・メモリ飽和・ネットワーク遅延増大・帯域制限・ネットワーク分断 |
| ストレージ起因 | ワークロードスパイク・遅延クエリ・エクスポート・インポート・バックグラウンドタスク過多・設定エラー×2・ロック競合 |
## 実装
Apache IoTDB の Multi-Raft 機構に組み込み済み。各リージョンのスナップショット生成時に RBAD が診断処理をトリガーする。64 ビットタイムスタンプを Raft ログエントリに追加する微少な変更が唯一の侵入的操作。
## 関連データセット
本研究に伴い構築した公開データセット(**RaftDataset**)は Apache IoTDB と Alluxio から収集した 194 GB・655 百万レコード。Raft ログ・監視データ・アプリログの 3 種を含む初の分散ストレージ診断データセット。
## 関連
- 論文: [[@2025__IEEE TSC__Towards Close-To-Zero Runtime Collection Overhead - Raft-Based Anomaly Diagnosis on System Faults for Distributed Storage System]]
- 開発者: [[Lingzhe Zhang]] / [[Tong Jia]] / [[Ying Li]] / [[Peking University]]
- 概念: [[Raftログ診断]] / [[分散ストレージ]] / [[異常検知]]
- 関連 MOC: [[AIOps - Failure Detection - MOC]]