Був анонсований випуск нової версії TimescaleDB 1.7, версія в якій Додана підтримка PostgreSQL 12 виділена, а також у модифікації деяких функцій. Для тих, хто не знає Часовий шкалаDB, вони повинні це знати це база даних, призначена для зберігання та обробки даних у вигляді часових рядів (сегменти значень параметрів за задані інтервали часу реєстр формує час і набір значень, що відповідають цьому часу).
Ця форма зберігання є оптимальним для таких додатків, як системи моніторингу, торгові платформи, системи для збору метрик та статусів датчиків.
Про TimescaleDB
Проект TimescaleDB реалізовано як розширення PostgreSQL і поширюється за ліцензією Apache 2.0. Частина коду з розширеними функціями постачається за власною окремою ліцензією Timescale (TSL), яка не допускає змін, забороняє використання коду в сторонніх продуктах і не дозволяє безкоштовно використовувати хмарні бази даних (бази даних, такі як сервіс ).
Цікавою частиною TimescaleDB є те, що дозволяє використовувати повні запити SQL для аналізу накопичених даних, поєднання простоти використання, властивої реляційним СУБД, та масштабованості та можливостей, властивих спеціалізованим системам NoSQL.
Структура зберігання оптимізовано для забезпечення високого рівня агрегування даних. Підтримує пакетні набори даних агрегації, використовуючи індекси, що зберігаються в оперативній пам’яті, зворотне завантаження історичних сегментів, застосування транзакцій.
Ключовою особливістю TimescaleDB є підтримка автоматичного розділення(розділ) масиву даних. Вхідний потік даних автоматично розподіляється між розділеними таблицями.
Секції створюються на основі часу (кожен розділ зберігає дані протягом певного періоду часу) або відносно довільного ключа (наприклад, ідентифікатор пристрою, місцезнаходження тощо). Розділені таблиці можна розподілити по різних дисках для оптимізації продуктивності.
Для запитів секціонована база даних виглядає як велика таблиця, яка називається гіпертаблицею. Гіпертаблиця - це віртуальне представлення багатьох окремих таблиць, в яких накопичуються вхідні дані.
Що нового в TimescaleDB 1.7?
У цій новій версії підтримка інтеграція із СУБД PostgreSQL 12, хоча підтримка PostgreSQL 9.6.x та 10.x застаріла, хоча для Timescale 2.0 залишиться лише підтримка PostgreSQL 11+.
Це також виділяється тим, що змінили поведінку запитів із постійно виконуваними агрегатними функціями (агрегування постійно надходять даних у реальному часі).
Зараз такі запити поєднують матеріалізовані подання з нещодавно надійшли даними, які ще не втілилися (раніше агрегування охоплювало лише вже матеріалізовані дані). Нова поведінка використовується для новостворених безперервних агрегувань.
Крім того, деякі вдосконалені інструменти управління життєвим циклом даних були перенесені у версію спільноти комерційного видання, включаючи можливість перегрупувати дані та обробляти політики для витіснення застарілих даних (дозволяють зберігати лише поточні дані та автоматично видаляти, додавати чи архівувати застарілі записи).
Як встановити TimescaleDB на Linux?
Для тих, хто цікавиться щоб мати можливість встановити TimescaleDB у вашій системіВони можуть це зробити, дотримуючись інструкцій, якими ми ділимося нижче.
У випадку з тими, що є Користувачі 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
У випадку 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
Зараз ми збираємося налаштувати базу даних за допомогою:
sudo timescaledb-tune
тут можуть бути зроблені різні конфігурації, з якими ви можете проконсультуватися У наступному посиланні.
Наприкінці просто перезапустіть службу:
sudo service postgresql restart