Use full SQL for advanced time-series analysis, not a proprietary query language that’s hard to learn. Integrate with anything in the Postgres ecosystem and your favorite open source projects.
SELECT time, (memUsed / procTotal / 1000000) as value
FROM measurements
WHERE time > now() - '1 hour';
// Memory used (in bytes)
memUsed = from(bucket: "telegraf/autogen")
|> range(start: -1h)
|> filter(fn: (r) =>
r._measurement == "mem" and
r._field == "used"
)
// Total processes running
procTotal = from(bucket: "telegraf/autogen")
|> range(start: -1h)
|> filter(fn: (r) =>
r._measurement == "processes" and
r._field == "total"
)
// Join memory used with total processes and calculate
// the average memory (in MB) used for running processes.
join(
tables: {mem:memUsed, proc:procTotal},
on: ["_time", "_stop", "_start", "host"]
)
|> map(fn: (r) => ({
_time: r._time,
_value: (r._value_mem / r._value_proc) / 1000000
})
)
Up to 7000x faster than InfluxDB for many queries. Superior support for high cardinality workloads and 10x better resource utilization.
“InfluxDB was not scalable nor resource-efficient for our workload. Since we are huge fans of PostgreSQL, TimescaleDB was a natural solution. The transition allowed us to retire complex internal applications and immediately allowed us to correlate licensing data with farm usage.”
Write millions of data points per second. Store 100s of terabytes on a single node or petabytes across multiple nodes.
Use the relational data model that you already know. Perform complex queries and build powerful applications faster.
Timescale Cloud is available on AWS, Azure, and GCP, in over 75 regions around the world. Influx Cloud is available in 4.
Save on storage with 94% compression rates from best-in-class algorithms. Choose from 2,000+ CPU and storage configurations.
Read more about compression