zhub.link is one of the many independent Mastodon servers you can use to participate in the fediverse.

Administered by:

Server stats:

31
active users

#tantor

0 posts0 participants0 posts today

Как мониторить сотни инстансов PostgreSQL и не сойти с ума

Если вы инженер в крупной компании, а особенно если ваша организация поставляет свои услуги в виде SaaS-решений, то вам так или иначе придется решать задачу мониторинга работы всех ваших баз PostgreSQL. На них часто бывает завязан функционал, важный для компании с точки зрения финансовых рисков, поэтому крайне желательно организовать не только мониторинг, но и получение уведомлений, когда что-то идет не по плану (или пойдет в ближайшем будущем). В рамках статьи мы рассмотрим несколько способов, как это можно сделать: самостоятельно, с использованием уже привычного стека Prometheus + Grafana, либо подключая сторонние open-source специализированные решения для мониторинга PostgreSQL, либо же используя специализированные платные решения. По каждому варианту поймем все плюсы и минусы, чтобы вы cмогли более уверенно выбрать свой путь.

habr.com/ru/companies/tantor/a

ХабрКак мониторить сотни инстансов PostgreSQL и не сойти с умаЕсли вы инженер в крупной компании, а особенно если ваша организация поставляет свои услуги в виде SaaS-решений, то вам так или иначе придется решать задачу мониторинга работы всех ваших баз...

Выбор индекса при соединении по нескольким столбцам

Когда имеется несколько индексов с одинаковыми ведущими столбцами, иногда выбирается не лучший индекс, и время выполнения запроса увеличивается на порядки. Такие ситуации встречаются в сложных приложениях, но чаще всего в 1С:ERP, поскольку это приложение наиболее распространено. Как это обычно бывает: после миграции приложения на СУБД PostgreSQL часть запросов начинает выполняться медленнее. Планировщик выбирает индекс, созданный по меньшему числу столбцов, время выполнения увеличивается, потому что при использовании такого индекса индексные записи указывают на строки таблицы, которые не соответствуют условиям соединения. При выборе же индекса по большему числу задействованных в запросе столбцов время выполнения становится существенно ниже и практически не зависит от размера таблиц. В статье детализируется часть доклада Максима Старкова на конференции PG BootCamp, которая прошла в апреле в Екатеринбурге. Описываются признаки таблиц и индексов, при работе с которыми может возникнуть проблема выбора худшего индекса, а также рассматривается пример, демонстрирующий, что строка "Buffers" характерна для определения эффективности выполнения запроса (в 18 версии PostgreSQL "Buffers" будет показываться в планах по умолчанию).

habr.com/ru/companies/tantor/a

ХабрВыбор индекса при соединении по нескольким столбцамЭта статья написана по докладу Максима Старкова "Особенности определения селективности" на конференции PG BootCamp Russia 2025, которая прошла в апреле в Екатеринбурге. Доклад можно  просмотреть...

Работа с временными таблицами в PostgreSQL

При создании временных таблиц в PostgreSQL изменяются до 13 таблиц системного каталога, при этом особенно сильно разрастаются pg_attribute , pg_class , pg_depend и pg_type . Массовое создание и усечение временных таблиц активно применяется, в том числе в 1C:ERP. В статье рассматриваются особенности работы с временными таблицами и описано решение проблемы раздувания таблиц системного каталога, реализованное в СУБД Tantor Postgres.

habr.com/ru/companies/tantor/a

ХабрРабота с временными таблицами в PostgreSQLПри создании временных таблиц в PostgreSQL изменяются до 13 таблиц системного каталога, при этом особенно сильно разрастаются pg_attribute ,  pg_class , pg_depend  и pg_type . Массовое...

pg_dphyp: учим PostgreSQL соединять таблицы по-другому

Большая часть времени планировщика запросов в СУБД тратится на поиск оптимального способа соединения таблиц. В PostgreSQL используется два алгоритма: алгоритм динамического программирования, также называемый DPsize, и генетический — GEQO. В других СУБД реализовано еще множество других алгоритмов. DPhyp — алгоритм соединения на основе гиперграфов — уже используется такими СУБД как MySQL и YDB. Я задался вопросом: можно ли реализовать его в PostgreSQL? Оказывается, можно. Так и зародилось расширение pg_dphyp для PostgreSQL, реализующее альтернативный алгоритм соединения таблиц. В статье я не описываю подробно сам алгоритм, привожу только концептуальное описание его идеи, а рассказываю вот о чем: -- Какие решения пришлось принять, чтобы добавить алгоритм DPhyp в существующую кодовую базу без изменения ядра; -- Как GPLv2 помог найти эффективный алгоритм обхода соседей; -- Как проиндексировали неиндексируемое гиперрёбра; -- Планирование какого запроса смогли ускорить в 600 раз ; -- Какой изъян в работе существующего планировщика был найден. Но главный сюжетный поворот — в конце...

habr.com/ru/companies/tantor/a

Хабрpg_dphyp: учим PostgreSQL соединять таблицы по-другомуПриветствую! В «Тантор Лабс» я работаю разработчиком СУБД и закономерно увлекаюсь базами данных. Как-то раз во время пролистывания красной книги во мне что-то щелкнуло, и я захотел глубже поизучать...

Авторизация OAuth 2.0 в PostgreSQL на примере Keycloak

Привет, Хабр! Мы продолжаем цикл статей о нововведениях СУБД Tantor Postgres 17.5.0, и сегодня поговорим о поддержке авторизации через OAuth 2.0 Device Authorization Flow — это современный и безопасный способ предоставления доступа, который позволяет приложениям запрашивать доступ к PostgreSQL от имени пользователя через внешнего провайдера идентификации и управления доступом, например Keycloak, что особенно удобно для облачных сред и микросервисных архитектур (функция будет также доступна в PostgreSQL 18). В статье пошагово разберём настройку OAuth-авторизации в PostgreSQL с использованием Keycloak: настроим Keycloak, подготовим PostgreSQL, напишем валидатор токенов OAuth в PostgreSQL и проверим успешную авторизацию через psql с использованием Device Flow.

habr.com/ru/companies/tantor/a

ХабрАвторизация OAuth 2.0 в PostgreSQL на примере KeycloakПлан статьи Введение Настройка Keycloak инженером по безопасности Настройка PostgreSQL администратором баз данных Написание валидатора разработчиком Процесс авторизации Введение Привет, Хабр! Мы...

Когда может быть полезно сэмплирование в pg_stat_statements?

pg_stat_statements — стандартное расширение PostgreSQL для сбора статистики выполнения SQL-запросов. Статистика позволяет анализировать поведение запросов во времени, выявлять проблемные участки и принимать обоснованные решения по оптимизации. Однако в системах с высокой конкуренцией pg_stat_statements само по себе может стать узким местом и вызывать просадки производительности. В этой статье разбираем, в каких сценариях расширение становится источником проблем, как устроено сэмплирование и в каких случаях его применение позволяет снизить накладные расходы.

habr.com/ru/companies/tantor/a

ХабрКогда может быть полезно сэмплирование в pg_stat_statements?Введение pg_stat_statements — стандартное расширение PostgreSQL для сбора статистики выполнения SQL-запросов: количество запусков, общее и среднее время выполнения запросов, число возвращённых строк и...

Трассировка запросов в Postgres с расширением pg_trace

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

habr.com/ru/companies/tantor/a

ХабрТрассировка запросов в Postgres с расширением pg_traceТрассировка запросов — это процесс сбора и анализа запросов на стороне СУБД, необходимый для диагностики проблем с производительностью в базах данных. С её помощью, например, можно: понять,...

Как провести нагрузочное тестирование БД PostgreSQL и ничего не забыть

При нагрузочном тестировании баз данных Tantor Postgres или других на базе PostgreSQL с использованием стандартного инструмента pgbench отсутствие фиксации деталей окружения (таких как конфигурация СУБД, характеристики сервера, версии ПО) часто приводит к нерепрезентативным результатам и необходимости повторных тестов. В статье рассматривается разработанный автором инструмент pg_perfbench, который призван решить эту проблему.

habr.com/ru/companies/tantor/a

ХабрКак провести нагрузочное тестирование БД PostgreSQL и ничего не забытьПри нагрузочном тестировании баз данных Tantor Postgres или других на базе PostgreSQL с использованием стандартного инструмента pgbench отсутствие фиксации деталей окружения (таких как конфигурация...

Быстрый старт в маскировании данных PostgreSQL с инструментом pg_anon

В этой статье поговорим о не самом гламурном, но жизненно важном — маскировании данных. Маскирование может касаться имён, телефонов, номеров карт, медицинских диагнозов и другой чувствительной информации. Если ваша компания до сих пор передает данные подрядчикам или аналитикам как они есть в базе, это в один «прекрасный» момент обязательно обернётся репутационной или финансовой проблемой для бизнеса. В этой статье разберём, зачем нужно маскирование, какие данные требуют защиты, и представим opensource-инструмент, который поможет решить эти задачи гибко и эффективно.

habr.com/ru/companies/tantor/a

ХабрБыстрый старт в маскировании данных PostgreSQL с инструментом pg_anonПривет, Хабр! Меня зовут Александр Дубов, я старший инженер  в команде Tantor Labs. Давайте поговорим о маскировании данных — не самом гламурном, но жизненно важном инструменте. С каждым годом...

Миграция неизбежна: сравниваем российские СУБД и open source, чтобы подготовиться

Привет, Хабр! На связи Роман Севрук, менеджер по развитию решений СУБД в К2Тех. Работая с крупными компаниями, я заметил тенденцию: многие до сих пор используют бесплатную PostgreSQL. Однако технологии Postgre стремительно коммерциализируются при участии российских разработчиков. Они берут мировой open source и успешно его дорабатывают. Сейчас рынок находится в подвешенном состоянии. Бизнес понимает преимущества перехода на коммерческие решения, но привычный open source пока вроде бы справляется с задачами не хуже. Зачем менять то, что работает? Дьявол кроется в деталях, и с учетом обстоятельств, в которых мы оказались, открытые решения становятся невыгодными и даже где-то опасными. Почему лучше переходить на коммерческие СУБД вместо использования базовой PostgreSQL? Давайте разберемся в этом вопросе, рассмотрим тренды рынка и планы развития СУБД. Мы обсудим несколько российских систем и определим, каким компаниям они подойдут. А бонусом будет детальная сравнительная таблица.

habr.com/ru/companies/k2tech/a

ХабрМиграция неизбежна: сравниваем российские СУБД и open source, чтобы подготовитьсяПривет, Хабр! На связи Роман Севрук, менеджер по развитию решений СУБД в К2Тех. Работая с крупными компаниями, я заметил тенденцию: многие до сих пор используют бесплатную PostgreSQL. Однако...