
Мы продолжаем знакомить вас с самыми интересными новостями по PostgreSQL. Между этим выпуском и #8 прошло больше времени, чем обычно, поэтому он будет более объемным.
Релизы
PostgreSQL 11 Beta 3
Этот релиз отличается исправленными багами — и общими для серии релизов, о которых дальше, и специфическими для версии 11. Подробности об исправленных (и не только) багах можно узнать здесь. Общая информация о beta здесь.
PostgreSQL 10.5
Исправлены серьезные баги. Например, обнаружена и исправлена проблема в libpq: она не восстанавливала в начальное состояние все переменные состояния соединения при попытке повторного соединения. Не восстанавливалась переменная, которая задавала, нужен ли пароль, из-за чего, используя dblink или postgres_fdw, можно было получить незаконный доступ к серверам.
Всего в релизе около 20 исправлений и улучшений, касающихся самых разных механизмов СУБД: VACUUM, WAL, GIN-индексы, POSIX-семафоров и многого другого. В том числе для работы под Windows. Они расписаны тут.
Вместе с 10.5 и Beta 3 вышли соответствующие обновления 9.6.10, 9.5.14, 9.4.19, 9.3.24. Ск��чать можно, как обычно, отсюда.
Postgres Pro Standard 9.5.14.1, 9.6.10.1 и 10.5.1
Релизы Postgres Pro Standard 9.5.14.1 и 10.5.1 созданы Postgres Professional на базе соответствующих версий PostgreSQL (без последней цифры в номере релиза, напр PostgreSQL 10.5) и соответствующих предыдущих версий Postgres Pro Standard.
Ключевые усовершенствования всех трёх (относительно предыдущих):
- Модуль pg_variables теперь поддерживает транзакционные переменные. (См. Раздел F.37 документации)
- Модуль
auto_explainтеперь может выводить время планирования. - Усовершенствована версия Postgres Pro Standard для Windows: устранено неявное ограничение на количество одновременно открываемых файлов в каждом серверном подпроцессе.
В 9.6.10.1 и в 10.5.1 отличий существенно больше. Например, модуль
pg_probackup обновлён до версии 2.0.19, в которой появились такие возможности, как:- команда restore может пропускать проверку копии для ускорения восстановления кластера;
- улучшено параллельное выполнение инкрементального копирования;
- теперь можно объединять инкрементальные копии с родительской полной копией для экономии места на диске
А также и другие — см. документацию, разделы «Приложение E. Замечания к выпуску», например здесь. Новшества 9.6.10.1 и 10.5.1 сильно пересекаются, но всё же будьте внимательны: например, 10.5.2 умеет (c
pg_probackup) восстановить кластер до заданной позиции в журнале (LSN).pgAdmin 4 v3.3, v3.2, v3.3.
В последней версии (3.3) лишь мелкие поправки. В 3.2 более серьезные изменения: например, поддержка SCRAM; JIT при визуализации планов. Самые большие изменения были в 3.1, вышедшей в самом конце июня: в ней исправлено более 30 багов, а среди новых фич:
- добавлена поддержка SSH-туннелей,
- поддержка LISTEN/NOTIFY в Query Tool,
- поддержка функций и процедур в PostgreSQL 11
- Улучшена поддержка Greenplum
PgBouncer 1.9.0
В новой версии расширена функциональность для улучшения и облегчения контроля и мониторинга в высокодоступных архитектурах. Доработана документация. Обо всех изменениях можно прочитать здесь, а скачать отсюда.
Ora2Pg 19.0
В новой версии этого инструмента миграции есть новшества, например добавлен экспорт оракловых хэш-секций при включенном PG_SUPPORTS_PARTITION — а он появилось только в PostgreSQL 11. Весь огромный список здесь. Исправлены огрехи, на которые жаловались пользователи.
Качать отсюда.
pg_chameleon 2.0.9
Этот пакет умеет реплицировать базу MySQL средствами MySQL, сохраняя записи в PostgreSQL в виде
JSONB. Написано на Python 3. Далее функция на pl/pgsql разбирает JSONB, проигрывая изменения в PostgreSQL. О релизе можно почитать здесь.Кс��ати, вот статья от Percona о том, как пользоваться
pg_chameleon — Replication from Percona Server for MySQL to PostgreSQL using pg_chameleon.Migrate2Postgres
Еще одно средство миграции. Можно ознакомиться и скачать здесь. Средство кросс-платформенное, работает через JDBC, встроен пример для миграции с MS SQL Server.
Ajqvue v2.0
Это GUI для PostgreSQL с открытым кодом, написанный на Java. Работает с различными СУБД, в т.ч. и с PostgreSQL.
В релизе 2.0 доработки во многом обязаны плагину DB_to_FileMemoryDB; плагин DataCharts обновлен до JFreeChart, 1.5.0. Некоторая информация есть на сайте. Сорсы здесь.
PostGIS 2.5.0 beta2
Эта бета делается для будущих релизов, хотя будет работать с любыми не моложе 9.4. Полная функциональность будет достигнута с PostgreSQL 11beta3+ и GEOS 3.7.0 beta2.
pgmetrics 1.4
Это приложение, поставляемое как единый бинарник с отсутствием зависимостей от стороннего софта, собирает информацию и статистику работающего сервера PostgreSQL, выдает ее в текстовом формате или экспортирует в JSON для дальнейшей обработки.
repmgr 4.1.0
Улучшения и багфиксы этой версии можно посмотреть здесь.
Slony 2.2.7
Минорный релиз старых добрых Слонов. исправлены ошибки. Загружать здесь.
PostgreSQL Page Verification tool
Google открыл общественности свой инструмент проверки целостност�� страниц бэкапа.
Здесь документация. Скачать код можно здесь.
Есть статья в eWeek о том, как это работает: Google’s page verification tool can help organizations discover data loss and corruption earlier in the change cycle, company says.
(Кстати, в Postgres Pro Enterprise уже есть подобная проверка: в него входит утилита
pg_probackup, которая умеет делать постраничную валидацию бэкапа без восстановления данных кластера)Образование
Выложены видеоролики курса DBA1, прочитанного в конце февраля в Нижнем Новгороде сотрудниками Postgres Professional Павлом Лузановым и Егором Роговым.
Статьи
Tuning Autovacuum in PostgreSQL and Autovacuum Internals
На всегда актуальную тему настройки автовакуума пишут в блоге компании Percona.
Там же статья о FDW: Foreign Data Wrappers in PostgreSQL and a closer look at postgres_fdw
Оркестрируемая сага или как построить бизнес-транзакции в сервисах с паттерном database per service
Подробная статья Константина Евтеева в блоге Avito.
Understanding And Reading the PostgreSQL System Catalog
Статья Брайана Ферле (Brian Fehrle) о работе с системными каталогами (с примерами) в блоге Severalnines.
3 ways to detect slow queries in PostgreSQL
В статье Ханс-Юрген Шёниг (Hans-Jürgen Schönig) из CyberTech рассматривает отслеживание медленных транзакций на примерах:
- анализ логов;
- проверка планов с auto_explain;
- импользование агрегированной информации в pg_stat_statements.
Waiting for PostgreSQL 12 – Allow multi-inserts during COPY into a partitioned table
статья Депеша (Depesz, то есть Хуберт Любашевски) о параллельной вставке в секционированную таблицу при работе команды COPY.
В это же время Альваро Эррера (Álvaro Herrera) в блоге 2ndQuadrant пишет о секционировании в 11-й версии: Talk slides: Partitioning Improvements in PostgreSQL 11. Но это слайды с конференции в Бразилии — PGConf.Brazil 2018. Текст должен появиться позже.
How Citus real-time executor parallelizes Postgres queries
Статья Крэйга Керстинса (Craig Kerstiens) рассказывает о распараллеливании SQL-запросов в их своеобразном форке Postgres.
Кредо выражено в подзаголовке: Writing in SQL, thinking in MapReduce.
Enabling PostgreSQL applications with Hybrid Transactional/Analytical Processing for driving differentiation and faster decisions into your business
В блоге Fujitsu объясняют, почему их FUJITSU Enterprise Postgres может эффективно работать и как OLTP и как OLAP СУБД.
Для аналитикой работы есть некоторая архитектура, обладающая некоторыми преимуществами вертикального хранения — Vertical Clustered Index (VCI).
Конференции. Вебинары. Митапы.
Krasnodar Dev Days #3
Ежегодная конференция разработчиков Краснодара и края состоится 15 сентября.
В программе конференции есть доклад Отказоустойчивые решения PostgreSQL с автоматическим failover'ом от Игоря Косенкова, Postgres Professional.
Сайт конференции.
TechTrain
Это конференция-фестиваль разработчиков. Она пройдет 1-2 сентября в СПб. На ней будет стенд сообщества PostgreSQL, где планируется мастер-класс и интеллектуальная викторина, а откроет конференцию доклад Путь Слона, или Карьера в open source Олега Бартунова.
Масштабирование приложения на PostgreSQL
Митап в Avito состоится 15 сентября в 12.00 — 16.30. Доклады будут посвящены масштабированию, уровням изоляции при репликации,
DBMS Asynchronous Client Library, Clock-SI. докладчики из Яндекса, Avito, Postgres Professional. Регистрация будет объявлена позже, следите за объявлениями..PostgreOpen Silicon Valley 2018
Состоится 5-7 сентября в Сан Франциско.
Will Postgres Live Forever?
Вебинар Брюса Момджана на тему: вечен ли Postgres? запланирован на 29 августа в 17:00 по московскому времени. Это не первое явление Брюса в качестве визионера, но немногие имели возможность его видеть.
Регистрация здесь.
PGDay (Portland PostgreSQL Users Group)
Эта юзер-группа проводит конференцию у себя 10 сентября. Предложения принимаются.
PostgresConf South Africa 2018
Пройдет в Йоханнесбурге 9 октября.
PostgreSQL Conference Europe 2018
Состоится в Лиссабоне 23-26 октября.
Подписывайтесь на канал postgresso!
Идеи и пожелания присылайте на почту: news_channel@postgrespro.ru
Предыдущие выпуски: #8, #7, #6, #5, #4, #3, #2, #1