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

PostgreSQL *

Свободная объектно-реляционная СУБД

Сначала показывать
Порог рейтинга
Уровень сложности

Переход из Oracle в Postgres Pro: не просто смена СУБД, а сдвиг подхода. Интервью с Марком Ривкиным

Уровень сложностиПростой
Время на прочтение31 мин
Количество просмотров6.7K

Давно не было обстоятельных интервью, тем более с таким корифеем отечественной СУБД‑разработки. В 2022 году в Postgres Professional перешла команда специалистов по Oracle, включая Марка Ривкина, который занял позицию руководителя отдела технического консалтинга. Вместе с командой он занялся адаптацией продуктов под требования крупных корпоративных заказчиков и доработкой функциональности Postgres Pro — в первую очередь для тех, кто планирует миграцию с проприетарных СУБД.

В интервью для Хабра Марк рассказал, с какими задачами столкнулись на старте, какие функции пришлось внедрять в первую очередь, как выстроена работа с разработкой и сообществом, и в чём сегодня Postgres Pro реально может заменить Oracle, а в чём — пока нет. Поговорили и про ИИ в администрировании, и про перспективы российских форков PostgreSQL, и даже о том, что бы он заложил в архитектуру, если бы проектировал СУБД с нуля. Приятного чтения!

Читать далее

Partial Index: как сократить индекс в 10 раз и ускорить редкие выборки

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2.9K

Привет, Хабр!

Сегодня рассмотрим про то, что такое Partial Index в PostgreSQL и как он может ускорить редкие выборки, сэкономить дисковое пространство и облегчить жизнь планировщику запросов.

Читать далее

SQL HowTo: простой финал с агрегатами (Advent of Code 2024, Day 25: Code Chronicle)

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров932

В этой челлендж-серии статей попробуем использовать PostgreSQL как среду для решения задач Advent of Code 2024.

Возможно, SQL не самый подходящий для этого язык, зато мы рассмотрим его различные возможности, о которых вы могли и не подозревать.

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

Читать далее

Сравнение заполнения данными баз данных Firebird 5 и PostgreSQL 17

Уровень сложностиСредний
Время на прочтение25 мин
Количество просмотров1.1K

Создаем две базы данных Firebird и PostgreSQL в кодировке UTF8.

Для сравнения выберем следующие типы данных:

Читать далее

Визуальное представление структуры btree индекса PostgreSQL

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров9.7K

В статье визуализируется структура индекса и показывается, как меняется структура индекса типа btree в PostgreSQL. Это полезно для понимания, как выглядят индексы btree. Также рассматривается FILLFACTOR и пример исследования структуры индекса в целях определения, как перераспределяются индексные записи при включении в структуру индекса новых блоков (страниц). Создадим простую таблицу, индекс, вставим три строки:

Читать далее

Сиквел и приквел: занимательная археология

Время на прочтение20 мин
Количество просмотров2.1K

Предлагаю вашему вниманию немного дополненный доклад, который я делал на конференции PGConf.СПб 2024. В нем я рассказываю о том, как появились первые реляционные системы, как возник и всех победил язык SQL.

Погрузиться в историю

Мониторинг бэкапов PostgreSQL, сделанных в pg_probackup

Уровень сложностиСредний
Время на прочтение2 мин
Количество просмотров3.5K

Хочу поделиться с сообществом свой наработкой по мониторингу бэкапов PostgreSQL.

Для того чтобы делать сами бэкапы, используется сторонний open source инструмент pg_probackup (разработка компании Postgres Professional).

Этот инструмент умеет делать инкрементные бэкапы, а также автоматизирует сопутствующие процессы, такие как, сжатие данных, merge, удаление старых бэкапов и wal-файлов.

Остается проблема мониторинга. Предположим, мы настроили pg_probackup и он трудится упорно, вызываемый регулярно через cron.

Как мы узнаем, о том, что что-то сломалось?

Для решения этой проблемы был написан небольшой экспортер метрик pg_probackup для Prometheus.

Читать далее

High Availability в Postgres Pro без головной боли

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров4.2K

Для тех, кто устал от «зоопарка» решений по созданию отказоустойчивых кластеров, расскажем, как добиться нужной функциональности одним решением. BiHA позволяет данным «выжить», даже если один из ЦОДов был физически уничтожен. Как же мы этого добились?

Читать далее

Как мы сделали одну большую песочницу для всех аналитиков

Время на прочтение7 мин
Количество просмотров6.6K

В мире данных и аналитики, где каждый день генерируются огромные объемы информации, создание единой платформы для работы с данными становится неотъемлемой частью успешной стратегии бизнеса. Мы команда РСХБ.Цифра, в которой я, Кристина Проскурина, руковожу управлением бизнес-анализа данных,  а Алексей Кошевой, руководитель отдела развития витрин данных «РСХБ-Интех», руководит разработкой аналитической отчетности и платформы по исследованию данных. В этой статье мы расскажем, как наша команда разработала единую песочницу для аналитиков, которая объединила все инструменты и ресурсы в одном месте, обеспечивая эффективность, удобство и возможность совместной работы.

К песочнице

Путь от «внутри» к ИТ продукту

Время на прочтение6 мин
Количество просмотров422

Приветствую всех хаброжителей и тех, кто читает мою статью. Меня зовут Александр, я являюсь ИТ директором с более 15-летним стажем, начинал в 2002 году обычным программистом в международной FMCG компании, что сильно повлияло на меня как человека и как ИТ специалиста.

Но статья не об этом, повествование пойдет о другом, об 1С и SQL, а именно о том, как быть если нужно выгружать данные из этой самой 1С, да еще, когда она не одна, да и в разных городах и странах. Трудился я в международной алкогольной компании и достался мне «зоопарк» ИТ систем (думаю, что многим понятно и известно, о чем я говорю). Среди этих систем была самописная ERP система с подчиненными базами (больше 100 штук) на базе СУБД Firebird и клиенты, написанные на Delphi и Microsoft С#, годами пока это все развивалось и росло, появились запросы и потребность в анализе данных и стали реализовываться различные выгрузки данных. Получаемые данные как тогда водилось стали выгружать в MS SQL в специально созданную базу (DWH) используя MS SSIS и потом трансформировались в OLAP кубы в MS SSAS. Еще была систем именуемая как «Бизнес-процессы» на базе 1С Бухгалтерия 1.6, с последующим обновлением и совместимостью, чтобы запустится на платформе 1С 8.3, на обычных формах с многокилометровыми модулями кода. Обшито все это было микросервисами (как сейчас это принято называть) и обменивалось между собой как-то, никому 100% не известно как.

Читать далее

SQL-пайплайны для A/B тестов: коротко

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1.9K

Привет, Хабр!

В этой статье разберём, как построить SQL-пайплайн для анализа A/B тестов с акцентом на чистку данных — дедупликацию, фильтрацию фрода, агрегацию и финальную сводку по пользователям.

Писать будем на PostgreSQL 13+, так как он отлично поддерживает нужные нам конструкции: FILTER, ROW_NUMBER(), CASE, NULLIF, CTE.

Читать далее

По следам PgConf: обзор проблемы #1 из доклада «Как PostgreSQL может сделать больно, когда не ожидаешь»

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров3.6K

На PgConf 2025 было три зала, в которых параллельно шли доклады. Поэтому охватить своим присутствием все доклады не представлялось возможным. В часть залов было не попасть, так как толпа участников толпилась на входе. Такое произошло и с докладом Михаила Жилина "Как PostgreSQL может сделать больно, когда не ожидаешь". В докладе описывалось 6 актуальных проблем. Проблема "#1: Глобальные счетчики" затрагивает почти все приложения, обновляющие строки в таблицах баз данных PostgreSQL. В этой статье рассматривают детали проблемы.

Читать далее

Общие подходы к классическому PostgreSQL в Kubernetes

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров6K

Хабр, привет! Меня зовут Алексей Быков, и я занимаюсь развитием Cloud Native платформы для обработки, хранения, анализа и управления данными Arenadata One в компании Arenadata. Современные высоконагруженные системы требуют гибкого масштабирования и отказоустойчивости для обеспечения стабильной производительности в условиях постоянно растущих объёмов данных. Когда речь идёт о PostgreSQL, развёрнутом в Kubernetes, перед инженерами встают особые вопросы: как упорядочить реплики для отказоустойчивости, каким образом настроить бэкапы и мониторинг, а главное — как корректно масштабироваться в облачной среде.

В этой статье мы рассмотрим, почему «ванильный» PostgreSQL в контейнерной среде может работать ненадёжно и какие механизмы применяются сегодня, чтобы сделать базу данных по-настоящему Cloud Native. Разберём ключевые аспекты классических инсталляций Postgres, проанализируем, в чём заключаются основные сложности их переноса в Kubernetes.

Монолит в облаке?!

Ближайшие события

Миграция базы данных Grafana: от внутреннего хранилища к PostgreSQL

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров3K

Всем доброго дня! Пишу здесь впервые. На написание меня этой статьи побудило желание рассказать людям об эффективном способе миграции от внутренней базы данных Sqlite3 к внешней БД PostgreSQL. Подобной статьи на Хабре я не нашел, поэтому надеюсь будет полезно.

Читать далее

SQL HowTo: немного двоичной логики (Advent of Code 2024, Day 24: Crossed Wires)

Уровень сложностиПростой
Время на прочтение13 мин
Количество просмотров881

В этой челлендж-серии статей попробуем использовать PostgreSQL как среду для решения задач Advent of Code 2024.

Возможно, SQL не самый подходящий для этого язык, зато мы рассмотрим его различные возможности, о которых вы могли и не подозревать.

Рекурсивно вычисляем логические выражения и разбираем устройство двоичного сумматора.

Читать далее

Выпустили «PostgreSQL. Профессиональный SQL» для тех, кто хочет лучше понять «слона»

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров24K

Postgres Professional продолжает публиковать книги о возможностях СУБД PostgreSQL. В этот раз представляем учебное пособие для тех, кто хочет стать маэстро в управлении базами данных.

Читать обзор

Пишем свой pastebin, используя только userver

Время на прочтение18 мин
Количество просмотров4.4K

Всем привет! Меня зовут Василий Куликов, я работаю ведущим разработчиком в Техплатформе Екома и Райдтеха Яндекса и последние пять лет разрабатываю фреймворк userver.

Это веб‑фреймворк, который позволяет создавать высоконагруженные отказоустойчивые сервисы на С++. Сегодня я расскажу, как написать на нём игрушечный, но рабочий сервис, который реализует функциональность pastebin.

Читать далее

По следам PgConf: быстрое закрытие месяца в 1С:ERP на PostgreSQL

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров5.5K

Закончилось основное событие года в мире PostgreSQL - PgConf 2025. В статье рассматривается патч, который ускоряет закрытие месяца в 1С-ERP в 10 раз, что довольно значительно. Патч был анонсировано в докладе "Быстрое закрытие месяца в 1С:ERP на PostgreSQL" или "Закрывай месяц в 1С ERP на PostgreSQL быстро и незаметно".

С 1С:ERP я не знаком, но знаю, что для 1С выпускаются специальные сборки PostgreSQL. Наполнившись решимостью узнать, что в этом 1С происходит я пожертвовал докладом про карту видимости, который шёл параллельно и не пожалел.

Я узнал, что в 1С никто ничего не делает, кроме как месяца закрывают и больше никого ничего не интересует, а также то, что по статистике пользователи приложения 1С:ERP делают что-либо, в среднем, раз в 20 минут. "Закрытие месяца" - набор расчетов и действий, которые могут выполняться часами. При этом с первого раза месяц обычно не закрывается, так как обнаруживаются ошибки учёта, которые должны быть исправлены и закрытие месяца повторяется заново. И так несколько раз. В докладе осветили нюансы установки границы итогов, удобство использования клонов кластера баз данных, описали причины проблем.

Основная интрига доклада была в том, что "секретный патч Фёдора Сигаева" ускоряет закрытие месяца в 10 раз (на порядок!). Не каждый день встретишь ускорение на порядок.

Читать далее

SQL HowTo: работаем с массивами (Advent of Code 2024, Day 23: LAN Party)

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров1.3K

В этой челлендж-серии статей попробуем использовать PostgreSQL как среду для решения задач Advent of Code 2024.

Возможно, SQL не самый подходящий для этого язык, зато мы рассмотрим его различные возможности, о которых вы могли и не подозревать.

Применяем простые операции над массивами, чтобы определить связность графов.

Читать далее

Настройка PostgreSQL на VPS для доступа из Docker контейнера

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров3.1K

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

Читать далее

Вклад авторов