domain-iot:time-series-data
Installation
SKILL.md
Time-Series Data for IoT
When to use
- Selecting a time-series database for IoT telemetry ingestion
- Designing InfluxDB tag/field schemas or TimescaleDB hypertables for device data
- Implementing downsampling pipelines to reduce storage costs over time
- Configuring hot/warm/cold retention tiers with automatic expiry and archival
- Choosing between stream, micro-batch, and batch processing for telemetry pipelines
- Building Grafana dashboards for fleet monitoring with query optimization
Core principles
- Tags are your indexes — cardinality kills them — device IDs as tags are fine; UUIDs as tags are a cardinality bomb; model high-cardinality values as fields
- Downsample early, archive always — raw data at 10s resolution for 7 days, aggregated at 1min for 90 days, rollups at 1h forever; storage is cheap, queries on raw aren't
- Hot/warm/cold is not optional at IoT scale — SSD for the last 48 hours, object storage for anything older than 90 days; InfluxDB and TimescaleDB both automate this
- Stream for alerts, batch for reports — Kafka Streams or Flink for sub-second alerting; Spark or dbt for anything a human looks at once a day
- Grafana variables prevent dashboards from melting — never load all devices at once; use template variables and top-N queries from the start