Обновить
217.96
Postgres Professional
Разработчик СУБД Postgres Pro
Сначала показывать

Postgresso №1 за 2022 (38)

Время на прочтение12 мин
Охват и читатели4.3K


Экстренное сообщение: PGConf.Russia переносится!


Уважаемые коллеги! Вынуждены сообщить, что площадка, на которой мы хотели провести PGConf.Russia 2022, попала под приказ о непроведении массовых мероприятий. В связи с этим конференция переносится на другую площадку и иные даты — конец марта или начало апреля. Мы активно работаем над тем, чтобы PGConf.Russia 2022 состоялся. Более подробная информация появится чуть позже.

Но это хорошая новость для нерасторопных: прием докладов продлевается до 20 февраля.

Принимаются доклады оффлайн длительностью 45 или 22 минуты или мастер-классы длительностью 90 минут на русском и английском языке. Возможно подключение ноутбука докладчиков для живых демонстраций (Live coding).

Регистрироваться здесь.

Основные темы:
  • PostgreSQL на переднем крае: высокие нагрузки, большие БД, отказоустойчивость;
  • новое в PostgreSQL и вокруг: развитие PostgreSQL и его экосистемы;
  • PostgreSQL в реальных системах: архитектура, миграция, эксплуатация;
  • использование PostgreSQL в платформе 1С;
  • PostgreSQL в геоинформационных системах (GIS).

Другие конференции


HighLoad++

Должна пройти в Крокус-Экспо 17-18 марта. Вот программа.

pgDay Paris 2022
Читать дальше →

Вспоминаем доклады конференции PGConf.Russia 2021

Время на прочтение5 мин
Охват и читатели1.7K


Открыта регистрация на конференцию PGConf.Russia 2022. Конференция состоится 28 февраля – 01 марта там же, где и в прошлом году — в Первом МГМУ имени И. М. Сеченова. Принимаются доклады оффлайн длительностью 45 или 22 минуты или мастер-классы длительностью 90 минут на русском и английском языке. Возможно подключение ноутбука докладчиков для живых демонстраций (Live coding).

Ну а мы решили по этому поводу обновить воспоминания о предыдущей конференцииPGConf.Russia 2021 (офлайновой, в 2021-м была и онлайновая)

Начнём с докладов, которые стали тогда победителями голосования.
1-е место:

Андрей Зубков, руководитель группы систем мониторинга (Postgres Professional),
Развитие модуля анализа исторической нагрузки pg_profile/pgpro_pwr.
Читать дальше →

Битвы на территории ZFS

Время на прочтение6 мин
Охват и читатели22K
Один из крупных клиентов нашей компании попал в грустную ситуацию: базы данных подросли, потребности тоже, купили мощные NUMA-сервера, установили любимую файловую систему ZFS (ZFS — для краткости: формально это OpenZFS), а производительность PostgreSQL стала хуже, чем до покупки.

Базы нешуточные: две базы, в каждой по 180ТБ. В них сливаются данные из многих других, непостгресовых баз. А этими, огромными, напрямую пользуются аналитики компании, и эта деятельность критически важная. ZFS сжала эти базы в два раза — теперь каждая занимает на диске по 90 ТБ, железу бы вздохнуть с облегчением. А стало только хуже. Пригласили наших сотрудников из поддержи, они провели аудит. Случай нам показался интересным, и мы решили о нём рассказать. Заодно напомнив о средствах диагностики.
Читать дальше →

Postgresso 37

Время на прочтение12 мин
Охват и читатели7.4K


Топы


Best PostgreSQL GUIs in 2021 (Updated)

TOP-11 GUI от Retool. Поразительно, что Retool (GUI с web-интерфейсом) участник топа, но не входит в десятку — он скромно замыкает их список.

По каждому GUI обязательные пункты: преимущества, недостатки. К PgAdmin добавили главку по набору шорткатов редактирования, а для Navicat по их высокоэстетичному дизайну. Рассматриваются:
  1. pgAdmin;
  2. Navicat;
  3. DBeaver;
  4. HeidiSQL;
  5. Datagrip;
  6. OmniDB;
  7. Beekeeper Studio;
  8. TablePlus;
  9. QueryPie;
  10. SQLGate;
  11. Retool.

Но это, в свою очередь, топ внутри топа, золото на пьедестале вот этого:

TOP-8: Что больше всего читали (кликали) на Postgres Weekly в 2021-м
Читать дальше →

PostgreSQL 15: Часть 3 или Коммитфест 2021-11

Время на прочтение6 мин
Охват и читатели4.7K
Вместе с началом зимы, релизный цикл 15-й версии продвинулся еще на один, теперь уже третий, коммитфест. Напомню, что о предыдущих двух можно подробнее прочитать здесь: 2021-07, 2021-09.

Теперь же посмотрим, что происходило в последнем на текущий момент, ноябрьском коммитфесте.
Читать дальше →

Postgresso 36

Время на прочтение12 мин
Охват и читатели5.8K


Вавилонская рыбка открыла свои коды


Главный девелопер-адвокат AWS Себастьян Стормак (Sébastien Stormacq) от имени Amazon объявил с зашкаливающим радикализмом об открытии кода Babelfish: Goodbye Microsoft SQL Server, Hello Babelfish. Об этом пишут и на OpenNet:
Читать дальше →

Postgresso 35 — спецвыпуск: PostgreSQL 14

Время на прочтение13 мин
Охват и читатели6.9K


Пресс-релиз PostgreSQL обширен и основателен. Есть и выжимка (highlights), в которой после бурных обсуждений в рассылках выделили главное.

Статей о 14-й много. Мы смотрели и разрозненные статьи и целые сериалы:
обзоры коммитфестов Павла Лузанова (5 серий),
waiting for PostgreSQL 14 Хуберта 'depesz' Любашевского (18),
микрообзоры Postgres 14 highlights Мишеля Пакье (Michael Paquier) (5),
в блоге Fujitsu OSS (5).

Кроме того есть пространная статья-справочник от HPE: PostgreSQL 14 New Features With Examples (Beta 1).

Начнём со статей, в которых авторы стараются охватить версию 14 в целом. Но перед этим разомнёмся

в облаках и контейнерах

Читать дальше →

PostgreSQL 15: Часть 2 или Коммитфест 2021-09

Время на прочтение7 мин
Охват и читатели5.9K
30 сентября вышла новая версия PostgreSQL 14… но хватит уже жить прошлым☺, в этот же день закончился второй коммитфест 15 версии. А значит прямо сейчас можно узнать что нового ждет нас через год.

Список изменений в этом выпуске получился не очень длинным, но кое-что интересное всё-таки найдется:

  • Как заставить очистку в «агрессивном» режиме работать менее агрессивно?
  • Кто на самом деле владелец схемы PUBLIC?
  • Cколько разделяемой памяти потребуется для запуска сервера? А количество огромных страниц?
Читать дальше →

Запросы в PostgreSQL: 7. Сортировка и слияние

Время на прочтение21 мин
Охват и читатели20K

В предыдущих статьях я писал про этапы выполнения запросов, про статистику, про два основных вида доступа к данным — последовательное сканирование и индексное сканирование, — и успел рассказать о двух способах соединения — вложенном цикле и соединении хешированием.

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

Читать далее

Запросы в PostgreSQL: 6. Хеширование

Время на прочтение20 мин
Охват и читатели24K

В предыдущих статьях я рассказал про этапы выполнения запросов, про статистику, про два основных вида доступа к данным — последовательное сканирование и индексное сканирование, — и перешел к способам соединения.

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

Читать далее

Postgresso 34

Время на прочтение19 мин
Охват и читатели4.6K


В ожидании PostgreSQL 15


PostgreSQL 15: Часть 1 или Коммитфест 2021-07

Думаю, вы следите за обзорами Павла Лузанова о новостях коммитфестов. Если нет, то задумайтесь, не стоит ли. Павел, между прочим, не перечисляет буквально все патчи, а отбирает значимые, обычно с SQL-примерами.

Название скромничает: в обзоре также и о PostgreSQL 14 — принятые доработки. Но больше о 15-й. Часто Павел даёт коротенький код, демонстрирующий изменения — в духе «вот так запрос работал в 14-й, а в 15-й уже вот так». Иногда заныривает и глубже в историю — в 13-ю, если это оправдано контекстом, как при анализе pg_dump и схема public, например.

Напоминаем, что самое интересное о 14 версии можно прочитать и в предыдущих статьях: 2020-07, 2020-09, 2020-11, 2021-01 и 2021-03.

Читать дальше →

Запросы в PostgreSQL: 5. Вложенный цикл

Время на прочтение19 мин
Охват и читатели35K

Я уже рассказал об этапах выполнения запросов и о статистике, и о двух основных видах доступа к данным: о последовательном сканировании и об индексном сканировании.

Настал черед способов соединения. В этой статье я кратко напомню, какие бывают логические типы соединений, и расскажу о первом из трех физических способов соединения — о вложенном цикле. Заодно посмотрим и на новую для 14-й версии мемоизацию строк.

Читать далее

Запросы в PostgreSQL: 4. Индексное сканирование

Время на прочтение20 мин
Охват и читатели29K

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

Прежде чем погружаться в детали индексного доступа, надо было бы рассказать про интерфейс индексных методов. Но я это уже делал в статье про индексы, и, хотя та серия несколько устарела, повторяться не буду. Если слова «класс операторов» и «свойства методов доступа» не находят отклика в душе, статью лучше перечитать.

Читать далее

Запросы в PostgreSQL: 3. Последовательное сканирование

Время на прочтение16 мин
Охват и читатели23K

В предыдущих статьях я рассказал об этапах выполнения запросов и о статистике.

Теперь пришла пора рассмотреть самые важные узлы, из которых может состоять план. Я начну со способов доступа к данным, и в этой статье расскажу о последовательном сканировании.

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

Читать далее

Запросы в PostgreSQL: 2. Статистика

Время на прочтение19 мин
Охват и читатели44K

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

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

Читать далее

Запросы в PostgreSQL: 1. Этапы выполнения

Время на прочтение17 мин
Охват и читатели107K

Привет, Хабр! Начинаю еще один цикл статей об устройстве PostgreSQL, на этот раз о том, как планируются и выполняются запросы.

Предыдущие циклы были посвящены изоляции и многоверсионности, журналированию и блокировкам.

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

Материал перекликается с нашим учебным курсом QPT «Оптимизация запросов», но ограничивается только подробностями внутреннего устройства и не затрагивает оптимизацию как таковую. Кроме того, я ориентируюсь на еще не вышедшую версию PostgreSQL 14. А курс мы тоже скоро обновим (правда, на версию 13; приходится бежать со всех ног, чтобы только оставаться на месте).

Поехали

PostgreSQL 15: Часть 1 или Коммитфест 2021-07

Время на прочтение13 мин
Охват и читатели8.6K
Закончился июль, не только самый жаркий месяц года, но и месяц первого коммитфеста очередного релизного цикла PostgreSQL. Самое время собрать свежую версию сервера и посмотреть на принятые изменения.

SELECT version();
                          version                           
------------------------------------------------------------
 PostgreSQL 15devel on x86_64-pc-linux-gnu, compiled by gcc
 (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0, 64-bit

Напомню, что самое интересное о 14 версии можно прочитать в предыдущих статьях: 2020-07, 2020-09, 2020-11, 2021-01 и 2021-03.
Читать дальше →

Postgresso 33

Время на прочтение15 мин
Охват и читатели6.4K


Продолжаем экспериментировать с форматом: в этом выпуске нет раздела Релизы, но несколько релизов разбросаны по соответствующему контексту.

Люди


Список коммитеров прирос Даниэлем Густафссоном (Daniel Gustafsson, Greenplum, из Стокгольма) и Джоном Найлором (John Naylor, 2ndQuadrant=EDB)

Даниэль: я использую, разрабатываю и продвигаю open source последние 15 лет, фокусируясь в основном на PostgreSQL и curl. Сейчас я работаю в Greenplum. Я контрибьютор PostgreSQL и работаю над кодом ядра PostgreSQL. А ещё над веб-сайтом, там я коммитер. Кроме программистских дел, я ещё и организую международные конференции: Nordic PGDay, FOSDEM, PGDay и PostgreSQL Conference Europe.

Джон не любит, видимо, говорить о себе. В корпоративном блоге есть парочка его статей.

Интервью: Брин Льюэллин
Читать дальше →

Postgresso 32

Время на прочтение15 мин
Охват и читатели5.6K


БЕТА 14


PostgreSQL 14 beta

Вышла первая бета PostgreSQL 14, а затем и вторая (здесь отличия 1-й беты от 2-й, они незначительные). Дальше будет ещё, возможно, несколько бета-релизов, потом один или несколько релиз-кандидатов и — в конце сентября 2021-го — официальная PostgreSQL 14.

Загрузить
Информация для бета-тестеров
Новое в PostgreSQL 14
Нерешённые проблемы PostgreSQL 14
Найдите баг. И пришлите.

Вместо эпиграфа слова Брюса Момджана:
в предыдущих четырёх в мажорных релизах было от 170 до 189 пунктов с новшествами, а здесь — 222. Такое случалось разве что до 2017 года.

Что делать с такой горой информации?

Первый совет наш обычный: не ждите релиза, читайте уникальные (не только для русского контекста) обзоры принятых коммитов от Павла Лузанова. Это энциклопедия новшеств. С примерами. Можно увидеть и динамику — что когда приняли. Вот все 5 частей по коммитфестам, имеющим отношение к версии 14:
Июльский,
Сентябрьский,
Ноябрьский,
Январский,
Апрельский.

Кроме того, на этот раз можно посмотреть, например, ещё вот какие источники: микро-обзоры Мишеля Пакье (Michael Paquier) в серии Postgres 14 highlights. Пока их вышло пять:

Monitoring for COPY

COPY TO и COPY FROM нередко занимают много времени, поэтому возможность посмотреть, как идут дела с копированием, не прихоть. В новом системном представлении pg_stat_progress_copy по одной строке с 8 полями (см. статью) на каждый бэкенд.
Читать дальше →

Отказоустойчивый кластер PostgreSQL с помощью crm

Время на прочтение10 мин
Охват и читатели13K
Автор — Игорь Косенков, инженер Postgres Professional

Привет всем! Сегодня речь пойдет о кластере. Да, снова об отказоустойчивом кластере на базе Corosync/Pacemaker. Только настраивать мы его будем не как обычно — с помощью утилиты pcs, а с помощью мало используемой утилиты crm.

С точки зрения использования этих утилит (pcs и crm) весь мир Unix-like операционок делится на два вида:

  • содержит пакеты утилиты pcs (RHEL, CentOS, Debian, Ubuntu);
  • содержит пакеты утилиты crm (SLES, Opensuse, Elbrus, Leningrad и т.д.).

crm — cluster resource manager — специальная утилита, которая используется для создания и управления отказоустойчивым кластером. Она включена в пакет crmsh, который обычно не входит в состав самых распространенных дистрибутивов Linux.

Идея написать статью об этой утилите пришла однажды, когда я спросил у поисковика: «Как настроить отказоустойчивый кластер с помощью crm». В ответ не получил ничего нужного и полезного, т.к. поисковик мне предложил много вариантов, никак не связанных с crm.

В то же время, если спросить у поисковика про утилиту настройки кластера pcs, которая является по функционалу такой же утилитой, как и crm, то информации будет много. Есть даже несколько статей на Хабре (в том числе и моя статья Кластер pacemaker/corosync без валидола).
Читать дальше →

Информация

Сайт
www.postgrespro.ru
Дата регистрации
Дата основания
Численность
501–1 000 человек
Местоположение
Россия
Представитель
Иван Панченко