# TimescaleDB
TimescaleDB は行指向リレーショナルDBMSである [[PostgreSQL]] の拡張であり、PostgreSQLのB-Treeベースインデックス([[B-Tree]])とSQLクエリをそのまま活用する。1つのPostgreSQLテーブルを時系列データのタイムスタンプに基づいて「ハイパーテーブル(hypertable)」と呼ばれる小さなチャンク(例: 7日ごと)に分割し、メインメモリに収まるチャンクへのインデックス・書き込みにより通常のPostgreSQLより高い取り込みレートと低いクエリレイテンシを実現する。クエリレイテンシとストレージオーバーヘッドを下げるため、経過時間に基づいてホットデータ(ハイパーテーブルの行)をコールドデータ(圧縮カラム形式)へ非同期変換するバックグラウンドジョブを内蔵する(Source: [[@2026__arXiv__Six Dimensions of Benchmarking Time-Series Databases]] §3.2)。
## SciTSv2 ベンチマークにおける性能特性
[[@2026__arXiv__Six Dimensions of Benchmarking Time-Series Databases]] の評価(v2.5.1、12時間チャンク、PgBouncer接続プーリング)によれば:
- **取り込み**: 単変量では小バッチ約1 MB/s〜大バッチ約4 MB/sと4TSDB中最も低く、並列クライアント数増加でPostgreSQLの並行接続管理の欠陥により約1 MB/s未満まで低下しうる。一方、多変量では24変数で正則38.21 MB/s・不規則37.99 MB/sに達しInfluxDBを上回る(単変量正則の低い取り込みレート約1.89 MB/sから大幅に改善)。
- **ディスク増幅**: 1変数あたりのディスク書き込み増幅係数が最大824倍(不規則)・517.26倍(正則)に達し4TSDB中最悪。各チャンクが独自のB-Treeインデックスを持つため書き込み量が増大する。変数数増加でこの増幅率は40.65倍(不規則・24変数)まで希釈される。
- **クエリ**: PostgreSQLの複合主キー (sensor_id, time) のB-Treeインデックスを効率的に活用し、Q1-A・Q2でInfluxDBを上回る(11.15 ms対25.63 ms等)。多変量全取得(Q1-B)では1変数9.76 msから24変数38.52 msへ緩やかに増加する。
- **混合ワークロード**: PostgreSQL接続管理の限界により混合ワークロードでもほぼ中立(有意な増減なし)だが低スループットにとどまる——安定性はあるが性能はない、という評価。
(Source: [[@2026__arXiv__Six Dimensions of Benchmarking Time-Series Databases]] §5, §6)
## TS-Benchmark(ICDE 2021)における性能特性
[[@2021__ICDE__TS-Benchmark - A Benchmark for Time Series Databases]](V1.2.1、風力発電ウィンドファーム監視シナリオ)の評価によれば、TimescaleDB は連続データ注入において高並行性下で最も優れた書き込みスループットを示す(512 スレッドで飽和せず最高値 27,765,420 points/s を達成)。適応的な「チャンク」によりデータ量に応じて時間区間・メトリクスを分割し、より高い並列化を実現するため。専用ロードツール「timescaledb-parallel-copy」がトランザクション処理・インデックス同期を無効化することで、大規模データセット(284.5GB)のバッチロードスループットも Druid の約 1 桁上回る。一方でクエリ性能は劣り、行指向ストレージを PostgreSQL から継承しているうえカラムへの自動インデックスを作成しないため、大規模データに対するフィルタ付きクエリで不利になる(Source: [[@2021__ICDE__TS-Benchmark - A Benchmark for Time Series Databases]] §IV-D, §IV-E, §IV-F)。
## 応用: TS-Arenaの高頻度時系列ストレージ
[[TS-Arena]](予測事前登録プロトコルに基づくライブ時系列予測ベンチマークプラットフォーム)は、TimescaleDBインスタンスをDatabaseサービスとして採用し、SMARD・Gridstatus・FINGRIDから継続的に取り込む高頻度エネルギー時系列・予測提出・ユーザーメタデータを構造化保存する。継続集約(continuous aggregates)機能で、最高粒度(例: 3分間隔)の取り込みデータを15分・1時間などの統一頻度へダウンサンプルし、Slowly Changing Dimension Type 2(SCD2)アーカイブ戦略により任意の過去時点 tnow で実際に利用可能だったデータ状態を再構築可能にしている(Source: [[@2026__arXiv__TS-Arena - A Live Forecast Pre-Registration Platform]] §3.2)。
## 関連
- ソース: [[@2026__arXiv__Six Dimensions of Benchmarking Time-Series Databases]] / [[@2021__ICDE__TS-Benchmark - A Benchmark for Time Series Databases]] / [[@2026__arXiv__TS-Arena - A Live Forecast Pre-Registration Platform]]
- 概念: [[時系列データベース]] / [[時系列データベースベンチマーク]] / [[B-Tree]]
- エンティティ: [[PostgreSQL]] / [[TS-Arena]]