Состоялся релиз PipelineDB 1.0, дополнения к СУБД PostgreSQL с реализацией средств для непрерывной обработки потока данных в формате временного ряда (срезы значений параметров через заданные промежутки времени). PipelineDB позволяет при помощи непрерывно выполняемых SQL-запросов обрабатывать и агрегировать постоянно поступающий поток данных, таких как показания датчиков, метрики системы мониторинга или статистика рекламных сетей. Код проекта распространяется под лицензией Apache 2.0.
PipelineDB может на лету агрегировать, фильтровать и вычищать поступающий поток данных, суммируя входящие данные в разрезе фиксированных временных промежутков (1 сек, 2 мин, 1 день, 30 дней и т.п.). Результат первичной обработки сохраняются в таблицы или отбрасывается (PipelineDB не сохраняет все raw-данные в БД, а оставляет только агрегированные значения, полученные в результате выполнения непрерывных SQL-запросов над входящим потоком данных). В дальнейшем сохранённые суммированные данные могут применяться для решения задач аналитики и формирования отчётов. Например, при обработке данных о посещении сайта можно раз в час сохранять суммарные сведения о пришедших пользователях и открытых страницах, а в случае сбора данных с датчиков сохранять каждую минуту максимальное, среднее и минимальное показание.
Основным элементом для непрерывной обработки данных выступает специальный тип представлений - CONTINUOUS VIEW, отличающийся от обычных представлений возможностью использования потоков в качестве источника данных для SELECT-запросов. По мере поступления новых данных в потоке, выдаваемый представлением вывод непрерывно обновляется. PipelineDB также поддерживает вероятностные структуры данных и возможность слияния непрерывно наполняемых таблиц.
|