TimescaleDB is an open-source SQL database designed for scalable time-series data. It enables both high ingest rates and real-time analysis queries. It scales by automatically partitioning Hypertable (a single continuous table) into two-dimensional (time and space) proper-sized chunks. Inserts to recent time intervals can be parallelized by placing chunks across cluster or disks based on a specified partition key. Complex queries can be optimized by leveraging metadata of each chunk.[02][03]
TimescaleDB is an open-source SQL database designed for scalable time-series data. It enables both high ingest rates and real-time analysis queries. It scales by automatically partitioning Hypertable (a single continuous table) into two-dimensional (time and space) proper-sized chunks. Inserts to recent time intervals can be parallelized by placing chunks across cluster or disks based on a specified partition key. Complex queries can be optimized by leveraging metadata of each chunk.[02][03]
History[02][04]
TimescaleDB is in active development by a team of PhDs. It is implemented as a Postgres extension. A single-node version is open-sourced in April, 2017 and a clustered version is currently in private beta release.
Concurrency Control[06][02]
It supports transactions on a per-server basis. Like PostgreSQL, it uses MVCC and Serializable Snapshot Isolation (SSI). It also supports explicit locking with deadlock detection.
Indexes[08][09][10]
It follows PostgreSQL, which has primary, secondary, derived, partial indexes. PostgreSQL supports B-tree, hash, GiST, SP-GiST, GIN, and BRIN indexes, and default is B-tree.
Isolation Levels[11]
It follows PostgreSQL, which supports Read uncommitted, Read committed, Repeatable read, Serializable. Read Committed is the default. They are implemented with MVCC. Note that PostgreSQL's Read Uncommitted is in fact Read Committed.
Citations
13 sources- Time-Series PostgreSQL at Petabyte Scale timescale.com
- https://www.tigerdata.com/papers/timescaledb.pdf tigerdata.com
- https://www.tigerdata.com/docs/introduction tigerdata.com
- https://www.timescale.com/about.html timescale.com
- PostgreSQL: Documentation: 18: 28.5. WAL Configuration postgresql.org
- PostgreSQL: Documentation: 9.6: Concurrency Control postgresql.org
- PostgreSQL: Documentation: 9.6: PostgreSQL 9.6.24 Documentation postgresql.org
- PostgreSQL: Documentation: 18: CREATE INDEX postgresql.org
- PostgreSQL: Documentation: 18: 11.8. Partial Indexes postgresql.org
- PostgreSQL: Documentation: 18: 11.7. Indexes on Expressions postgresql.org
- PostgreSQL: Documentation: 9.6: Transaction Isolation postgresql.org
- https://www.compose.com/articles/postgresql-backups-and-everything-you-need-to-know compose.com
- When Boring is Awesome | Tiger Data timescale.com