用途:为带时间戳的数据(指标、IoT 传感器、金融逐笔、日志)实现高效存储与查询,并支撑实时仪表盘与监控系统。
主要能力:
- 数据库选型。TimescaleDB(PostgreSQL 扩展,适合已有 PG、需 SQL 与 JOIN 的混合负载,标准 SQL,约 100K-1M 插入/秒);InfluxDB(专用 TSDB,适合 DevOps 指标、Prometheus 与 Telegraf 生态,InfluxQL 或 Flux,约 500K-1M 点/秒);ClickHouse(列式分析,适合最快聚合、分析看板与日志分析,SQL,约 1M-10M 插入/秒);QuestDB(高吞吐 IoT 与金融逐笔,SQL + Line Protocol,约 4M+ 插入/秒)。
- 核心模式。TimescaleDB 超表(create_hypertable)实现按时间自动分区,便于过期、并行查询与压缩;连续聚合(continuous aggregates)预计算小时级汇总并配置自动刷新策略;保留策略(add_retention_policy)自动过期数据;用 LTTB 算法降采样以适配图表渲染。
- 仪表盘集成。按组件给出查询模式:KPI 卡取最新值、趋势图按时间桶求均值、热力图多指标窗口、告警阈值检查;数据流为采集→存储与连续聚合→保留策略→查询层降采样→前端渲染。自动刷新间隔建议:关键告警 1-5 秒(WebSocket)、运维看板 10-30 秒(轮询)、分析看板 1-5 分钟(缓存)、历史报告按需。
- 性能优化。写入按库给出批量大小与吞吐参考;查询规则:先按时间过滤(走索引)、看板查询用连续聚合、可视化前降采样。
使用方式:资料提供 references 下的 timescaledb.md、influxdb.md、clickhouse.md、questdb.md、downsampling-strategies.md,examples 下的 metrics-dashboard-backend(TimescaleDB + FastAPI)与 iot-data-pipeline(InfluxDB + Go),以及 scripts/setup_hypertable.py、scripts/generate_retention_policy.py。
适用场景:DevOps 监控、IoT 传感器数据、金融逐笔、用户分析、实时仪表盘。
限制:具体安装命令、版本要求、收费与部署细节暂未提供;上述吞吐为资料给出的参考值,实际表现取决于环境。