TimescaleDB

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.

History

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

Multi-version Concurrency Control (MVCC) Two-Phase Locking (Deadlock Detection)

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

B+Tree Hash Table BitMap

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

Read Uncommitted Read Committed Serializable Repeatable Read

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.

Query Interface

SQL PL/SQL

It follows PostgreSQL

Storage Architecture

Disk-oriented

It follows PostgreSQL

Stored Procedures

Supported

It follows PostgreSQL.

System Architecture

Shared-Everything

Like Postgres, TimeScale is a shared-everything DBMS. Each table is partitioned across all space and time intervals.

TimescaleDB Logo
Website

http://www.timescale.com/

Source Code

https://github.com/timescale/timescaledb

Tech Docs

https://docs.timescale.com/v0.9/main

Developer

Timescale

Country of Origin

US

Start Year

2017

Project Type

Commercial

Supported languages

C++, Delphi, Java, Perl, PL/SQL, Python, Tcl

Derived From

PostgreSQL

Operating Systems

HP-UX, Linux, OS X, Solaris, Windows

Licenses

Apache v2