TimescaleDB, une base de données open source pour stocker des données de séries chronologiques

La sortie de la nouvelle version de TimescaleDB 1.7 a été annoncée, version dans laquelle la prise en charge supplémentaire de PostgreSQL 12 est mise en évidence, ainsi que dans la modification de certaines fonctions. Pour ceux qui ignorent Échelle de tempsDB, ils devraient savoir que est une base de données conçue pour stocker et traiter des données sous forme de séries chronologiques (segments de valeurs de paramètres à des intervalles de temps donnés, le registre forme le temps et un ensemble de valeurs correspondant à ce temps).

Cette forme de stockage est optimal pour les applications telles que les systèmes de surveillance, les plateformes de trading, systèmes pour collecter les métriques et les statuts des capteurs.

À propos de TimescaleDB

Le projet TimescaleDB est implémenté comme une extension PostgreSQL et est distribué sous la licence Apache 2.0. Une partie du code avec des fonctionnalités avancées est fournie sous une licence Timecale (TSL) distincte propriétaire, qui n'autorise pas les modifications, interdit l'utilisation de code dans des produits tiers et n'autorise pas l'utilisation gratuite dans les bases de données cloud (base de données telle que le service ).

La partie intéressante de TimescaleDB, c'est que vous permet d'utiliser des requêtes SQL complètes pour analyser les données accumulées, combinant la facilité d'utilisation inhérente au SGBD relationnel avec l'évolutivité et les capacités inhérentes aux systèmes NoSQL spécialisés.

La structure de stockage est optimisé pour fournir un taux d'agrégation de données élevé. Prend en charge les ensembles de données d'agrégation par lots, en utilisant des indices stockés dans la RAM, en chargeant rétroactivement des segments historiques, en appliquant des transactions.

Une caractéristique clé de TimescaleDB est la prise en charge de la partition automatiqueune (partition) du tableau de données. Le flux de données entrant est automatiquement distribué entre les tables partitionnées.

Les sections sont créées en fonction du temps (chaque section stocke des données pendant une certaine période de temps) ou par rapport à une clé arbitraire (par exemple, l'identifiant de l'appareil, l'emplacement, etc.). Les tables partitionnées peuvent être réparties sur différents disques pour optimiser les performances.

Pour les requêtes, une base de données partitionnée ressemble à une grande table, appelée hypertable. Un hypertable est une représentation virtuelle de nombreuses tables séparées dans lesquelles les données entrantes sont accumulées.

Quoi de neuf dans TimescaleDB 1.7?

Dans cette nouvelle version, le support du intégration avec le SGBD PostgreSQL 12, alors que la prise en charge de PostgreSQL 9.6.x et 10.x est obsolète, bien que pour Timescale 2.0, seule la prise en charge de PostgreSQL 11+ restera.

Il ressort également que changé le comportement des requêtes avec des fonctions d'agrégation exécutées en continu (agrégation de données entrantes en continu en temps réel).

Ces requêtes combinent désormais des vues matérialisées avec des données nouvellement arrivées qui ne se sont pas encore matérialisées (auparavant, l'agrégation ne couvrait que les données déjà matérialisées). Le nouveau comportement est utilisé pour les agrégations continues nouvellement créées.

En outre, certains outils avancés de gestion du cycle de vie des données ont été déplacés vers la version communautaire de l'édition commerciale, y compris la possibilité de regrouper les données et de traiter les politiques pour déplacer les données périmées (vous permet de stocker uniquement les données actuelles et de supprimer, ajouter ou archiver automatiquement les enregistrements périmés).

Comment installer TimescaleDB sur Linux?

Pour ceux qui sont intéressés pour pouvoir installer TimescaleDB sur votre systèmeIls peuvent le faire en suivant les instructions que nous partageons ci-dessous.

Dans le cas de ceux qui sont Utilisateurs Ubuntu:

sudo echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -c -s)-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add –
sudo add-apt-repository ppa:timescale/timescaledb-ppa
sudo apt-get update
sudo apt install timescaledb-postgresql-11

Dans le cas d' Debian:

sudo sh -c "echo 'deb https://packagecloud.io/timescale/timescaledb/debian/ `lsb_release -c -s` main' > /etc/apt/sources.list.d/timescaledb.list"
wget --quiet -O - https://packagecloud.io/timescale/timescaledb/gpgkey | sudo apt-key add -
sudo apt-get update
sudo apt-get install timescaledb-postgresql-11

RHEL / CentOS:

sudo yum install -y https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo tee /etc/yum.repos.d/timescale_timescaledb.repo <<EOL
[timescale_timescaledb]
name=timescale_timescaledb
baseurl=https://packagecloud.io/timescale/timescaledb/el/7/\$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/timescale/timescaledb/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
EOL
sudo yum update -y
sudo yum install -y timescaledb-postgresql-11

maintenant nous allons configurer la base de données avec:

sudo timescaledb-tune

Ici diverses configurations peuvent être faites, dont vous pouvez consulter dans le lien suivant. 

À la fin, redémarrez simplement le service:

sudo service postgresql restart

Le contenu de l'article adhère à nos principes de éthique éditoriale. Pour signaler une erreur, cliquez sur c'est par ici !.

Soyez le premier à commenter

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

*

*

  1. Responsable des données : AB Internet Networks 2008 SL
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.