Доступна СУБД TimescaleDB 1.0

2 ноября 2018 года

Wikinews-logo-ru.svg

Представлен первый стабильный выпуск СУБД TimescaleDB, пригодный для широкого использования. СУБД TimescaleDB ориентирована на хранение и обработку данных в форме временного ряда (срезы значений параметров через заданные промежутки времени, запись образует время и набор соответствующих этому времени значений), свойственные для таких применений как системы мониторинга, торговые платформы, опросы состояния датчиков, сбор метрик. Проект TimescaleDB реализован в виде расширения к PostgreSQL и распространяется под лицензией Apache 2.0.

СУБД позволяет применять полноценные SQL-запросы для анализа накопленных данных, сочетая удобство работы, свойственное реляционным СУБД, с масштабированием и возможностями, присущими специализированным NoSQL-системам. Ключевой особенностью TimescaleDB является поддержка автоматического секционирования (партицирования) массива данных. Входной поток данных автоматически распределяется по секционированным таблицам. Секции создаются в зависимости от времени (в каждой секции хранятся данные за определённый промежуток времени) или в привязке к произвольному ключу (например, идентификатору устройства, местоположению и т.п.).

Структура хранения оптимизирована для обеспечения высокой скорости добавления данных. Поддерживается пакетное добавления наборов данных, использование размещаемых в оперативной памяти индексов, загрузка исторических срезов задним числом, применение транзакций. Для оптимизации производительности секционированные таблицы могут распределяться по разным дискам (в будущем ожидается поддержка кластеризации с разнесением хранилища на несколько хостов). В одной из следующих версий планируется предоставить возможность определения политики вытеснения устаревших данных, что позволяет хранить только актуальные данные и автоматически удалять, агрегировать в более крупные промежутки времени или архивировать устаревшие записи.

Для запросов секционированная БД выглядит как одна большая таблица, именуемая гипертаблицей. Гипертаблица представляет собой виртуальное представление множества отдельных таблиц, в которых накапливаются поступающие данные. Гипертаблица используется не только для запросов и добавления данных, но и для таких операций, как создание индексов и изменение структуры ("ALTER TABLE"), скрывая от разработчика низкоуровневую сегментированную структуру БД. C гипертаблицей можно использовать любые агрегатные функции, подзапросы, операции слияния (JOIN) с обычными таблицами и оконные функции.

TimescaleDB может применяться в качестве хранилища для систем мониторинга и визуализации Grafana и Prometheus, в том числе с TimescaleDB может использоваться развиваемый проектом Grafana визуальный редактор запросов. Кроме того, TimescaleDB также можно использовать в любых системах, поддерживающих хранение данных в PostgreSQL, таких как Tableau, Kafka, Apache Spark, Zabbix, PostGIS и PowerBI.

 

ИсточникиПравить


Эта статья содержит материалы из статьи «Доступна СУБД TimescaleDB 1.0», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
 

Комментарии:Доступна СУБД TimescaleDB 1.0