Как стать автором
Обновить

Time series данные в реляционной СУБД. Расширения TimescaleDB и PipelineDB для PostgreSQL

Время на прочтение 21 мин
Количество просмотров 45K
Блог компании Конференции Олега Бунина (Онтико) PostgreSQL *Администрирование баз данных *Визуализация данных *Хранение данных *
Time series данные или временные ряды — это данные, которые изменяются во времени. Котировки валют, телеметрия перемещения транспорта, статистика обращения к серверу или нагрузки на CPU — это time series данные. Чтобы их хранить требуются специфичные инструменты — темпоральные базы данных. Инструментов — десятки, например, InfluxDB или ClickHouse. Но даже у самых лучших решений для хранения временных рядов есть недостатки. Все time series хранилища низкоуровневые, подходят только для time series данных, а обкатка и внедрение в текущий стек — дорого и больно.



Но, если у вас стек PostgreSQL, то можете забыть о InfluxDB и всех остальных темпоральных БД. Ставите себе два расширения TimescaleDB и PipelineDB и храните, обрабатываете и проводите аналитику time series данных прямо в экосистеме PostgreSQL. Без внедрения сторонних решений, без недостатков темпоральных хранилищ и без проблем их обкатки. Что это за расширения, в чем их преимущества и возможности, расскажет Иван Муратов (binakot) — руководитель отдела разработки в «Первой Мониторинговой Компании».
Всего голосов 50: ↑48 и ↓2 +46
Комментарии 14

Как мы Zabbix обновляли

Время на прочтение 8 мин
Количество просмотров 13K
Блог компании Southbridge Open source *Системное администрирование *

image


За что мы любим Prometheus? У него есть конфиг — взглянул и всё понятно, программа делает то, что ей сказали. Можно автоматизировать настройку мониторинга, хранить в VCS, ревьюить командой. Смержили твой MR, отработал пайплайн, новый конфиг применился к прометею. В общем, IaC во всей красе.


Кстати, о прометее. А вы используете его для своей железной инфраструктуры? Вот и мы не используем.


Как и многие, кто мониторит давно и у кого есть «голое» железо, мы используем Zabbix, который, кстати, на том железе и располагается. Увы, на данный момент заббикс и IaC — вещи не связанные. Настраивать заббикс можно или вручную, или через API.

Можно ли что-то сделать? Ссылка на код под катом
Всего голосов 30: ↑29 и ↓1 +28
Комментарии 27

Высокая производительность и нативное партиционирование: Zabbix с поддержкой TimescaleDB

Время на прочтение 11 мин
Количество просмотров 18K
Блог компании Конференции Олега Бунина (Онтико) Высокая производительность *Разработка веб-сайтов *Администрирование баз данных *Хранение данных *
Zabbix — это система мониторинга. Как и любая другая система, она сталкивается с тремя основными проблемами всех систем мониторинга: сбор и обработка данных, хранение истории, ее очистка.

Этапы получения, обработки и записи данных занимают время. Немного, но для крупной системы это может выливаться в большие задержки. Проблема хранения — это вопрос доступа к данным. Они используются для отчетов, проверок и триггеров. Задержки при доступе к данным также влияют на производительность. Когда БД разрастаются, неактуальные данные приходится удалять. Удаление — это тяжелая операция, которая также съедает часть ресурсов.



Проблемы задержек при сборе и хранении в Zabbix решаются кэшированием: несколько видов кэшей, кэширование в БД. Для решения третьей проблемы кэширование не подходит, поэтому в Zabbix применили TimescaleDB. Об этом расскажет Андрей Гущин — инженер технической поддержки Zabbix SIA. В поддержке Zabbix Андрей больше 6 лет и напрямую сталкивается с производительностью.

Как работает TimescaleDB, какую производительность может дать по сравнению с обычным PostgreSQL? Какую роль играет Zabbix для БД TimescaleDB? Как запустить с нуля и как мигрировать с PostgreSQL и производительность какой конфигурации лучше? Обо всем этом под катом.
Всего голосов 28: ↑26 и ↓2 +24
Комментарии 4

Эксперимент VonmoTrade. Часть 4: Торговые графики

Время на прочтение 6 мин
Количество просмотров 1.8K
Программирование *Анализ и проектирование систем *

В прошлых статьях мы разобрались, как создаются и обрабатываются торговые заявки. Темой сегодняшней статьи будут вопросы обработки и хранения информации, необходимой для графических инструментов анализа рынка – биржевых графиков.

Читать дальше →
Всего голосов 5: ↑4 и ↓1 +3
Комментарии 0

HighLoad++, Андрей Гущин (Zabbix): высокая производительность и нативное партиционирование

Время на прочтение 15 мин
Количество просмотров 7.3K
Блог компании ua-hosting.company Высокая производительность *IT-инфраструктура *Серверное администрирование *Конференции
Мы рассмотрим работу Zabbix с базой данных TimescaleDB в качестве backend. Покажем, как запустить с нуля и как мигрировать с PostgreSQL. Также приведем сравнительные тесты производительности двух конфигураций.



HighLoad++ Siberia 2019. Зал «Томск». 24 июня, 16:00. Тезисы и презентация. Следующая конференция HighLoad++ пройдет 6 и 7 апреля 2020 года в Санкт-Петербурге. Подробности и билеты по ссылке.

Андрей Гущин (далее – АГ): – Я – инженер технической поддержки ZABBIX (далее – «Заббикс»), тренер. Работаю более 6 лет в технической поддержке и напрямую сталкивался с производительностью. Сегодня я буду рассказывать о производительности, которую может дать TimescaleDB, при сравнении с обычным PostgreSQL 10. Также некоторая вводная часть – о том, как вообще работает.
Всего голосов 19: ↑19 и ↓0 +19
Комментарии 4

Миграция с MySQL на PostgreSQL

Время на прочтение 5 мин
Количество просмотров 21K
Блог компании Zabbix Open source *Системное администрирование *PostgreSQL *IT-инфраструктура *


Публикация основана на докладе тренера и инженера технической поддержки Zabbix Александра Петрова-Гаврилова.

Многих волнует вопрос о том как мигрировать с MySQL на PostgreSQL и воспользоваться преимуществами TimescaleDB.


Зачем мигрировать


Первый вопрос, который обычно возникает, — зачем мигрировать с MySQL на PostgreSQL при использовании Zabbix.


Вариантов не так много, особенно если система уже работает и работает неплохо. Возможные причины для миграции:


  • Команда лучше разбирается в PostgeSQL.
  • Желание попробовать TimescaleDB, учитывая обещанное повышение производительности и экономию места.
  • Документация на русском языке
  • Преимущества PostgreSQL Pro.
Читать дальше →
Всего голосов 16: ↑16 и ↓0 +16
Комментарии 5

One Tool to Analyze Them All

Время на прочтение 1 мин
Количество просмотров 2.8K
Блог компании Тензор PostgreSQL *SQL *Администрирование баз данных *Визуализация данных *
Мы рады сообщить о реализации на explain.tensor.ru базовой поддержки анализа и визуализации планов, специфичных для PostgreSQL-совместимых решений: Timescale, Citus, Greenplum и Redshift.


Так что если в будущем вам встретится план, похожий на результат обычного EXPLAIN, но с некоторыми странными узлами — вы знаете, куда идти.

EXPLAIN <-> SQL


В развитие темы сопоставления узлов плана и запроса добавлена возможность быстрого просмотра и переключения между ними:


Читать дальше →
Всего голосов 22: ↑20 и ↓2 +18
Комментарии 3

Как ускорить миграцию Zabbix на TimescaleDB

Время на прочтение 2 мин
Количество просмотров 4.4K
Системное администрирование *IT-инфраструктура *
Туториал

image


После того, как в прошлой статье Как мигрировать Zabbix с MySQL на PostgreSQL с минимальным downtime я успешно перенес Zabbix с MySQL на PostgreSQL, встала необходимость сделать следующий шаг — мигрировать БД на TimescaleDB, т.к. ради нее все и затевалось.


У читателя может возникнуть вопрос: зачем нужна эта статья, если есть простой и понятный мануал?
Но проблема, как и в прошлой статье, скрыта в downtime. В мануале ясно написано:


The migration of existing history and trend data may take a lot of time. Zabbix server and frontend must be down for the period of migration.
Читать дальше →
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 10

История одного обновления. Миграция на Zabbix 5.0 LTS с минимальными потерями

Время на прочтение 6 мин
Количество просмотров 4.8K
Блог компании Timeweb Cloud Высокая производительность *Системное администрирование *IT-инфраструктура *
Привет!

Я Олег, системный администратор в команде Timeweb, и в этой статье я расскажу, как мы перешли на актуальную версию Zabbix с минимальным простоем без потери функциональности. Здесь будет описан наш опыт — опыт избавления инфраструктуры от неактуального ПО и последствий хардкода.


Обновить Zabbix или сохранить наработки? Вот в чем вопрос


Так уж сложилось, что сотрудники, ответственные за оперативное реагирование на проблемы, для наблюдения использовали один экран Zabbix с дополнительными самописными виджетами, захардкоженными в Zabbix GUI на PHP. Как, когда и почему это началось, история умалчивает… Часть данных запрашивалась из API Zabbix, часть — из сторонних систем. Всё это отображалось в виде таблицы. Кроме этого, существовала и вручную созданная таблица в базе Zabbix для хранения данных одного из виджетов.

Основной недостаток такого наслоения виджетов — невозможность обновить Zabbix на актуальные версии с сохранением наработок. Поэтому наше первое правило клуба при миграции в новый мониторинг и воспроизведении функционала, — отказ от модификации кода GUI Zabbix.

Читать дальше →
Всего голосов 3: ↑2 и ↓1 +1
Комментарии 0

Популярные расширения для PostgreSQL: как установить и для чего использовать

Время на прочтение 5 мин
Количество просмотров 11K
Блог компании Selectel PostgreSQL *SQL *IT-инфраструктура *Администрирование баз данных *

Облачные базы данных Selectel поддерживают 40 расширений для PostgreSQL. Некоторые добавляют небольшие радости оптимизации баз данных, другие — заменяют отдельные модули разработки на стороне приложения. На данный момент расширениями пользуются 26% пользователей DBaaS. Мы узнали, какие экстеншены наиболее популярны у клиентов и где они их применяют.

Если вы опытный DBA, вы точно нужны в комментариях — расскажите, какие расширения используете и как они решают ваши задачи.
Читать дальше →
Всего голосов 48: ↑46 и ↓2 +44
Комментарии 4

Обновление Zabbix 5.2 до Zabbix 6.0 на CentOS 8

Время на прочтение 15 мин
Количество просмотров 10K
Системное администрирование *
Из песочницы

Возникло желание обновить Zabbix до последней версии, но с наскока этого сделать не получилось. В процессе столкнулся необходимостью обновить последовательно несколько систем. Различных мануалов по их обновлению хватает, но при отработке обновления на тестовом стенде, я собирал выдержки из них в отдельную инструкцию, чтобы при обновлении на бою ничего не забыть и не запутаться. Слегка причесанной и дополненной комментариями версией этой инструкции и хочу поделиться.

Читать далее
Всего голосов 7: ↑6 и ↓1 +5
Комментарии 5