TimescaleDB, baza danych typu open source do przechowywania danych szeregów czasowych

Zapowiedziano wydanie nowej wersji TimescaleDB 1.7, wersja w której dodano obsługę PostgreSQL 12, a także w modyfikacji niektórych funkcji. Dla nieświadomych Baza danych skali czasu, powinni to wiedzieć to baza danych przeznaczona do przechowywania i przetwarzania danych w postaci szeregów czasowych (segmenty wartości parametrów w zadanych odstępach czasu, rejestr tworzy czas i zbiór wartości odpowiadający temu czasowi).

Ta forma przechowywania jest optymalny do zastosowań takich jak systemy monitorowania, platformy transakcyjne, systemy do zbierania stanu czujnika i metryk.

Informacje o TimescaleDB

Projekt TimescaleDB jest zaimplementowany jako rozszerzenie PostgreSQL i jest rozpowszechniany na licencji Apache 2.0. Część kodu z zaawansowanymi funkcjami jest dostarczana na zastrzeżonej, oddzielnej licencji Timecale (TSL), która nie zezwala na zmiany, zabrania używania kodu w produktach innych firm i nie pozwala na swobodne wykorzystanie w chmurowych bazach danych (np. ).

Interesującą częścią TimescaleDB jest to pozwala na wykorzystanie pełnych zapytań SQL do analizy zgromadzonych danych, łącząc łatwość użytkowania charakterystyczną dla relacyjnego DBMS ze skalowalnością i możliwościami charakterystycznymi dla wyspecjalizowanych systemów NoSQL.

Struktura przechowywania jest zoptymalizowany, aby zapewnić wysoki współczynnik agregacji danych. Obsługuje zbiorcze zestawy danych agregacji, używając indeksów przechowywanych w pamięci RAM, ładując z mocą wsteczną segmenty historyczne, stosując transakcje.

Kluczową cechą TimescaleDB jest wsparcie dla automatycznej partycjia (partycja) tablicy danych. Przychodzący strumień danych jest automatycznie dystrybuowany między podzielonymi na partycje tabelami.

Sekcje są tworzone na podstawie czasu (każda sekcja przechowuje dane przez określony czas) lub w odniesieniu do dowolnego klucza (np. Identyfikator urządzenia, lokalizacja itp.). Tabele podzielone na partycje można rozłożyć na różnych dyskach, aby zoptymalizować wydajność.

W przypadku zapytań partycjonowana baza danych wygląda jak duża tabela, nazywana hipertowalną. Hipertable to wirtualna reprezentacja wielu oddzielnych tabel, w których gromadzone są przychodzące dane.

Co nowego w TimescaleDB 1.7?

W tej nowej wersji wsparcie dla integracja z PostgreSQL 12 DBMS, podczas gdy obsługa PostgreSQL 9.6.x i 10.x została wycofana, chociaż dla Timescale 2.0 pozostanie tylko obsługa PostgreSQL 11+.

To też się wyróżnia zmienił zachowanie zapytań z ciągle wykonywanymi funkcjami agregującymi (agregacja stale napływających danych w czasie rzeczywistym).

Takie zapytania łączą teraz zmaterializowane widoki z nowo otrzymanymi danymi, które jeszcze się nie zmaterializowały (wcześniej agregacja obejmowała tylko już zmaterializowane dane). Nowe zachowanie jest używane dla nowo utworzonych ciągłych agregacji.

Ponadto Niektóre zaawansowane narzędzia do zarządzania cyklem życia danych zostały przeniesione do wersji społecznościowej wersji komercyjnej, w tym możliwość przegrupowania danych i zasad przetwarzania w celu zastąpienia nieaktualnych danych (pozwala na przechowywanie tylko aktualnych danych i automatyczne usuwanie, dodawanie lub archiwizowanie nieaktualnych zapisów).

Jak zainstalować TimescaleDB w systemie Linux?

Dla zainteresowanych aby móc zainstalować TimescaleDB w swoim systemieMogą to zrobić, postępując zgodnie z instrukcjami, które udostępniamy poniżej.

W przypadku tych, którzy są Użytkownicy 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

W przypadku 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

Teraz mamy zamiar skonfigurować bazę danych z:

sudo timescaledb-tune

Tutaj można wykonać różne konfiguracje, z którymi możesz się skonsultować W poniższym linku. 

Na koniec po prostu zrestartuj usługę:

sudo service postgresql restart

Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: AB Internet Networks 2008 SL
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.