Release of TimescaleDB 1.7

Published database release TimescaleDB 1.7, designed for storing and processing data in the form of time series (slices of parameter values at specified time intervals, where the record consists of time and a set of corresponding values). Such a storage format is optimal for applications like monitoring systems, trading platforms, and metric collection systems. Tools are provided for integration with the project Grafana and Prometheus.

The TimescaleDB project is implemented as an extension to PostgreSQL and is distributed under the Apache 2.0 license. Part of the code with extended capabilities is provided under a separate proprietary license Timescale (TSL), which does not allow modifications, prohibits the use of the code in third-party products, and does not permit free usage in cloud databases (database-as-a-service).

Among the changes in TimescaleDB 1.7:

  • Support for integration with the database PostgreSQL 12. Support for PostgreSQL 9.6.x and 10.x has been deprecated (in Timescale 2.0, only PostgreSQL 11+ will be supported).
  • The behavior of queries with continuously executing aggregate functions (aggregating continuously incoming data in real time) has been changed. Such queries now combine materialized views with recently arriving data that is not yet materialized (previously, aggregation covered only already materialized data). The new behavior applies to newly created continuous aggregations; for existing views, the parameter 'timescaledb.materialized_only=false' should be set via 'ALTER VIEW'.
  • Some advanced data lifecycle management tools have been migrated from the commercial edition to the Community version, including features for data regrouping and handling policies for evicting outdated data (which allow storing only relevant data and automatically deleting, aggregating, or archiving outdated records).

Let's remember that the TimescaleDB database allows the use of full SQL queries for analyzing accumulated data, combining the ease of use typical of relational databases with the scalability and capabilities inherent in specialized NoSQL systems. The storage structure is optimized to ensure high speed of data insertion. It supports batch additions of datasets, the use of in-memory indexes, loading historical snapshots retrospectively, and transaction processing.

A key feature of TimescaleDB is its support for automatic partitioning of data arrays. The incoming data stream is automatically distributed across partitioned tables. Partitions are created based on time (each partition stores data for a specific time period) or tied to an arbitrary key (such as a device identifier, location, etc.). To optimize performance, partitioned tables can be spread across different disks.

For queries, the partitioned database appears as a single large table called a hypertable. The hypertable is a virtual representation of many individual tables where incoming data is accumulated. The hypertable is used not only for queries and data insertion but also for operations such as index creation and structure modification ('ALTER TABLE'), hiding the low-level segmented database structure from the developer. You can use any aggregate functions, subqueries, joins with regular tables, and window functions with the hypertable.

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster