Benchmarking Setup and Results
This section provides details about how we tested TimescaleDB against vanilla PostgreSQL.
Feel free to download the Time-Series Benchmarking Suite and run it for yourself.
If you'd like to get started with TimescaleDB quickly you can use Timescale, which lets you sign up for a free, 30-day trial.
,
Better Performance at Scale
With orders of magnitude better performance at scale, TimescaleDB enables developers to build on top of PostgreSQL and “future-proof” their applications.
,
Can timescaledb insert data into compressed chunks?
In TimescaleDB 2.11 and later, you can insert data into compressed chunks, and modify data in compressed rows.
In TimescaleDB 2.11 and later, you can insert data into compressed chunks.
This works even if the data you are inserting has unique constraints, and those constraints are preserved during the insert operation.
,
Lower Storage Costs
The number one driver of cost for modern time-series applications is storage.
Even when storage is cheap, time-series data piles up quickly.
Timescale provides two methods to reduce the amount of data being stored, compression and downsampling using continuous aggregates.
,
More Features to Speed Up Development Time
TimescaleDB includes more features that speed up development time.
This includes a library of over 100 hyperfunctions, which make complex time-series analysis easy using SQL, such as count approximations, statistical aggregates, and more.
TimescaleDB also includes a built-in, multi-purpose job scheduling engine for setting up automated workflows.
,
Query Latency Deep Dive
For this benchmark, we inserted one billion rows of data and then ran a set of queries 100 times each against the respective database.
The data, indexes, and queries are exactly the same for both databases.
The only difference is that the TimescaleDB queries use the time_bucket() function for doing arbitrary interval bucketing, whereas the PostgreS.
,
Still 100 % Postgresql and SQL
Notably, because TimescaleDB is packaged as a PostgreSQL extension, it achieves these results without forking or breaking PostgreSQL.
,
What are the limitations of compressing a Hypertable in timescaledb?
In general, compressing a hypertable imposes some limitations on the types of data modifications that you can perform on data inside a compressed chunk.
This table shows changes to the compression feature, added in different versions of TimescaleDB:
- Data and schema modifications are not supported
Schema may be modified on compressed hypertables.
,
Why do you need timescaledb?
To measure everything that matters, you need to collect and store everything that matters.
Storage can be expensive and slow.
You need compression.
You need TimescaleDB.
Efficiently compress your data to save storage, compute, and bandwidth.
TimescaleDB uses several time-series compression algorithms to help you mitigate storage needs.
,
Why is timescale data compressed?
Time-series data can be compressed to reduce the amount of storage required, and increase the speed of some queries.
This is a cornerstone feature of Timescale.
When new data is added to your database, it is in the form of uncompressed rows.
Timescale uses a built-in job scheduler to convert this data to the form of compressed columns.