首页/云/可观测性速查/TSDB 存储结构与保留策略
Prometheus 与采集64 条

TSDB 存储结构与保留策略

Prometheus 自带时序存储:head 块在内存并同步写 WAL 保证崩溃恢复,默认每 2 小时落盘为持久块,后台压缩合并;保留期默认 15 天,可按时间或容量控制。

可观测性速查云更新于 2026-10-12

数据目录结构

数据目录结构
data/
├── wal/          # 预写日志:崩溃后据此恢复未落盘数据
├── chunks_head/  # head 块的持久化映射文件
├── 01BKGV7J.../  # 持久块:chunks/ + index + meta.json + tombstones
└── queries.active

保留策略与巡检

保留策略与巡检
prometheus --storage.tsdb.retention.time=30d \
           --storage.tsdb.retention.size=50GB

promtool tsdb list /var/lib/prometheus/data     # 块清单与覆盖时间范围
promtool tsdb analyze /var/lib/prometheus/data  # 标签基数与空间占用分析
两个保留参数同时配置时先达到者生效;容量清理从旧块开始,不会触碰正在写入的 head 数据。

易错点

  • 不要手动删 data 目录下的块文件:删除特定序列用管理 API,清理历史用保留参数
  • 磁盘写入延迟过高会让 WAL 积压极端情况下丢数据,存储介质与保留期要一起评估

数据来源与参考

  • Prometheus 文档 · Storage
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌