- PVSM.RU - https://www.pvsm.ru -

Дайджест новостей из мира PostgreSQL. Выпуск №9

Дайджест новостей из мира PostgreSQL. Выпуск №9 - 1
Мы продолжаем знакомить вас с самыми интересными новостями по PostgreSQL. Между этим выпуском и #8 [1] прошло больше времени, чем обычно, поэтому он будет более объемным.


Релизы

PostgreSQL 11 Beta 3
Этот релиз отличается исправленными багами — и общими для серии релизов, о которых дальше, и специфическими для версии 11. Подробности об исправленных (и не только) багах можно узнать здесь [2]. Общая информация о beta здесь [3].

PostgreSQL 10.5
Исправлены серьезные баги. Например, обнаружена и исправлена проблема в libpq: она не восстанавливала в начальное состояние все переменные состояния соединения при попытке повторного соединения. Не восстанавливалась переменная, которая задавала, нужен ли пароль, из-за чего, используя dblink или postgres_fdw, можно было получить незаконный доступ к серверам.
Всего в релизе около 20 исправлений и улучшений, касающихся самых разных механизмов СУБД: VACUUM, WAL, GIN-индексы, POSIX-семафоров и многого другого. В том числе для работы под Windows. Они расписаны тут [4].

Вместе с 10.5 и Beta 3 вышли соответствующие обновления 9.6.10, 9.5.14, 9.4.19, 9.3.24. Скачать можно, как обычно, отсюда [5].

Postgres Pro Standard 9.5.14.1, 9.6.10.1 и 10.5.1
Релизы Postgres Pro Standard 9.5.14.1 [6] и 10.5.1 [7] созданы Postgres Professional на базе соответствующих версий PostgreSQL (без последней цифры в номере релиза, напр PostgreSQL 10.5) и соответствующих предыдущих версий Postgres Pro Standard.
Ключевые усовершенствования всех трёх (относительно предыдущих):

  • Модуль pg_variables теперь поддерживает транзакционные переменные. (См. Раздел F.37 [8] документации)
  • Модуль auto_explain теперь может выводить время планирования.
  • Усовершенствована версия Postgres Pro Standard для Windows: устранено неявное ограничение на количество одновременно открываемых файлов в каждом серверном подпроцессе.

В 9.6.10.1 и в 10.5.1 отличий существенно больше. Например, модуль pg_probackup обновлён до версии 2.0.19, в которой появились такие возможности, как:

  • команда restore может пропускать проверку копии для ускорения восстановления кластера;
  • улучшено параллельное выполнение инкрементального копирования;
  • теперь можно объединять инкрементальные копии с родительской полной копией для экономии места на диске

А также и другие — см. документацию, разделы «Приложение E. Замечания к выпуску», например здесь [7]. Новшества 9.6.10.1 и 10.5.1 сильно пересекаются, но всё же будьте внимательны: например, 10.5.2 умеет (c pg_probackup) восстановить кластер до заданной позиции в журнале (LSN).

pgAdmin 4 v3.3, v3.2, v3.3.
В последней версии (3.3 [9]) лишь мелкие поправки. В 3.2 [10] более серьезные изменения: например, поддержка SCRAM; JIT при визуализации планов. Самые большие изменения были в 3.1 [10], вышедшей в самом конце июня: в ней исправлено более 30 багов, а среди новых фич:

  • добавлена поддержка SSH-туннелей,
  • поддержка LISTEN/NOTIFY в Query Tool,
  • поддержка функций и процедур в PostgreSQL 11
  • Улучшена поддержка Greenplum

PgBouncer 1.9.0
В новой версии расширена функциональность для улучшения и облегчения контроля и мониторинга в высокодоступных архитектурах. Доработана документация. Обо всех изменениях можно прочитать здесь [11], а скачать отсюда [12].

Ora2Pg 19.0
В новой версии [13] этого инструмента миграции есть новшества, например добавлен экспорт оракловых хэш-секций при включенном PG_SUPPORTS_PARTITION — а он появилось только в PostgreSQL 11. Весь огромный список здесь [14]. Исправлены огрехи, на которые жаловались пользователи.
Качать отсюда [15].

pg_chameleon 2.0.9
Этот пакет умеет реплицировать базу MySQL средствами MySQL, сохраняя записи в PostgreSQL в виде JSONB. Написано на Python 3. Далее функция на pl/pgsql разбирает JSONB, проигрывая изменения в PostgreSQL. О релизе можно почитать здесь. [16]
Кстати, вот статья [17] от Percona о том, как пользоваться pg_chameleonReplication from Percona Server for MySQL to PostgreSQL using pg_chameleon.

Migrate2Postgres
Еще одно средство миграции. Можно ознакомиться и скачать здесь [18]. Средство кросс-платформенное, работает через JDBC, встроен пример для миграции с MS SQL Server.

Ajqvue v2.0
Это [19] GUI для PostgreSQL с открытым кодом, написанный на Java. Работает с различными СУБД, в т.ч. и с PostgreSQL.
В релизе 2.0 доработки во многом обязаны плагину DB_to_FileMemoryDB; плагин DataCharts обновлен до JFreeChart, 1.5.0. Некоторая информация [20] есть на сайте. Сорсы здесь [21].

PostGIS 2.5.0 beta2
Эта бета [22] делается для будущих релизов, хотя будет работать с любыми не моложе 9.4. Полная функциональность будет достигнута с PostgreSQL 11beta3+ и GEOS 3.7.0 beta2.

pgmetrics 1.4
Это приложение [23], поставляемое как единый бинарник с отсутствием зависимостей от стороннего софта, собирает информацию и статистику работающего сервера PostgreSQL, выдает ее в текстовом формате или экспортирует в JSON для дальнейшей обработки.

repmgr 4.1.0
Улучшения и багфиксы этой версии можно посмотреть здесь [24].

Slony 2.2.7
Минорный релиз старых добрых Слонов. исправлены ошибки. Загружать здесь [25].

PostgreSQL Page Verification tool
Google открыл общественности свой инструмент проверки целостности страниц бэкапа.
Здесь документация [26]. Скачать код можно здесь [27].
Есть статья [28] в 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, которая умеет [29] делать постраничную валидацию бэкапа без восстановления данных кластера)

Образование

Выложены [30] видеоролики курса DBA1, прочитанного в конце февраля в Нижнем Новгороде сотрудниками Postgres Professional Павлом Лузановым и Егором Роговым.

Статьи

Tuning Autovacuum in PostgreSQL and Autovacuum Internals
На всегда актуальную тему настройки автовакуума пишут в блоге [31] компании Percona.

Там же статья о FDW [32]: Foreign Data Wrappers in PostgreSQL and a closer look at postgres_fdw

Оркестрируемая сага или как построить бизнес-транзакции в сервисах с паттерном database per service
Подробная статья [33] Константина Евтеева в блоге Avito.

Understanding And Reading the PostgreSQL System Catalog
Статья [34] Брайана Ферле (Brian Fehrle) о работе с системными каталогами (с примерами) в блоге Severalnines.

3 ways to detect slow queries in PostgreSQL
В статье [35] Ханс-Юрген Шёниг (Hans-Jürgen Schönig) из CyberTech рассматривает отслеживание медленных транзакций на примерах:

  • анализ логов;
  • проверка планов с auto_explain;
  • импользование агрегированной информации в pg_stat_statements.

Waiting for PostgreSQL 12 – Allow multi-inserts during COPY into a partitioned table
статья [36] Депеша (Depesz, то есть Хуберт Любашевски) о копировании в секционированную таблицу.

В это же время Альваро Эррера (Álvaro Herrera) в блоге 2ndQuadrant пишет о секционировании в 11-й версии: Talk slides: Partitioning Improvements in PostgreSQL 11. Но это слайды [37] с конференции в Бразилии — PGConf.Brazil 2018 [38]. Текст должен появиться позже.

How Citus real-time executor parallelizes Postgres queries
Статья [39] Крэйга Керстинса (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
В блоге [40] Fujitsu объясняют, почему их FUJITSU Enterprise Postgres может эффективно работать и как OLTP и как OLAP СУБД.
Для аналитикой работы есть некоторая архитектура, обладающая некоторыми преимуществами вертикального хранения — Vertical Clustered Index (VCI).

Конференции. Вебинары. Митапы.

Krasnodar Dev Days #3
Ежегодная конференция разработчиков Краснодара и края состоится 15 сентября.
В программе конференции есть доклад Отказоустойчивые решения PostgreSQL с автоматическим failover'ом от Игоря Косенкова, Postgres Professional.
Сайт [41] конференции.

TechTrain
Это конференция-фестиваль [42] разработчиков. Она пройдет 1-2 сентября в СПб. На ней будет стенд сообщества PostgreSQL, где планируется мастер-класс и интеллектуальная викторина, а откроет конференцию доклад Путь Слона, или Карьера в open source Олега Бартунова.

Масштабирование приложения на PostgreSQL
Митап в Avito состоится 15 сентября в 12.00 — 16.30. Доклады будут посвящены горизонтальному и вертикальному масштабированию, уровням изоляции при репликации, DBMS Asynchronous Client Library. Докладчики из Яндекса, Avito, Postgres Professional (наш разработчик Стас Кельвич расскажет о multimaster). Регистрация будет объявлена позже, следите за объявлениями.

PostgreOpen Silicon Valley 2018
Состоится [43] 5-7 сентября в Сан Франциско.

Will Postgres Live Forever?
Вебинар Брюса Момджана на тему: вечен ли Postgres? запланирован на 29 августа в 17:00 по московскому времени. Это не первое явление Брюса в качестве визионера, но немногие имели возможность его видеть.
Регистрация здесь [44].

PGDay (Portland PostgreSQL Users Group)
Эта юзер-группа проводит конференцию [45] у себя 10 сентября. Предложения принимаются [46].

PostgresConf South Africa 2018
Пройдет [47] в Йоханнесбурге 9 октября.

PostgreSQL Conference Europe 2018
Состоится [48] в Лиссабоне 23-26 октября.


Подписывайтесь на канал postgresso [49]!

Идеи и пожелания присылайте на почту: news_channel@postgrespro.ru
Предыдущие выпуски: #8 [1], #7 [50], #6 [51], #5 [52], #4 [53], #3 [54], #2 [55], #1 [56]

Автор: Igor_Le

Источник [57]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/postgresql/290076

Ссылки в тексте:

[1] #8: https://habr.com/company/postgrespro/blog/415675/

[2] здесь: https://wiki.postgresql.org/wiki/PostgreSQL_11_Open_Items#resolved_before_11beta3

[3] здесь: https://www.postgresql.org/developer/beta/

[4] тут: https://www.postgresql.org/docs/10/static/release-10-5.html#id-1.11.6.5.5

[5] отсюда: https://www.postgresql.org/download/

[6] Postgres Pro Standard 9.5.14.1: http://repo.postgrespro.ru/doc/pgpro/9.5.14.1/

[7] 10.5.1: https://postgrespro.ru/docs/postgrespro/10/release-pro-10-5-1

[8] F.37: http://repo.postgrespro.ru/doc/pgpro/9.5.14.1/ru/html/pg-variables.html

[9] 3.3: https://www.pgadmin.org/docs/pgadmin4/3.x/release_notes_3_3.html

[10] 3.2: https://www.pgadmin.org/docs/pgadmin4/3.x/release_notes_3_2.html

[11] здесь: https://pgbouncer.github.io/changelog.html#pgbouncer-19x

[12] скачать отсюда: https://pgbouncer.github.io/downloads/files/1.9.0/pgbouncer-1.9.0.tar.gz

[13] новой версии: https://github.com/darold/ora2pg/blob/master/README

[14] здесь: https://github.com/darold/ora2pg/blob/master/changelog

[15] отсюда: https://sourceforge.net/projects/ora2pg/

[16] можно почитать здесь.: http://www.pgchameleon.org/blog/2018/08/19/release-209/

[17] вот статья: https://www.percona.com/blog/2018/08/17/replication-from-percona-server-for-mysql-to-postgresql-using-pg_chameleon/

[18] здесь: https://github.com/isapir/Migrate2Postgres

[19] Это: http://ajqvue.com

[20] Некоторая информация: http://ajqvue.com/

[21] здесь: https://github.com/danap/ajqvue

[22] Эта бета: https://postgis.net/2018/08/11/postgis-2.5.0beta2/

[23] Это приложение: https://github.com/rapidloop/pgmetrics/releases

[24] здесь: https://repmgr.org/docs/4.1/release-4.1.0.html

[25] здесь: http://www.slony.info/downloads/2.2/source/slony1-2.2.7.tar.bz2

[26] документация: https://opensource.google.com/projects/pg_page_verification

[27] здесь: https://github.com/google/pg_page_verification

[28] статья: http://www.eweek.com/cloud/google-releases-open-source-tool-that-checks-postgres-backup-integrity

[29] умеет: https://postgrespro.ru/docs/postgrespro/10/app-pgprobackup

[30] Выложены: https://www.youtube.com/playlist?list=PLaFqU3KCWw6JhHBp07QSu9uE8zahhKnTn

[31] пишут в блоге: https://www.percona.com/blog/2018/08/10/tuning-autovacuum-in-postgresql-and-autovacuum-internals/

[32] статья о FDW: https://www.percona.com/blog/2018/08/21/foreign-data-wrappers-postgresql-postgres_fdw/

[33] статья: https://habr.com/company/avito/blog/418235/

[34] Статья: https://severalnines.com/blog/understanding-and-reading-postgresql-system-catalog

[35] статье: https://www.cybertec-postgresql.com/en/3-ways-to-detect-slow-queries-in-postgresql/

[36] статья: https://www.depesz.com/2018/08/13/waiting-for-postgresql-12-allow-multi-inserts-during-copy-into-a-partitioned-table/

[37] слайды: https://blog.2ndquadrant.com/slides-partitioning-pg-11/

[38] PGConf.Brazil 2018: http://www.pgconf.com.br/

[39] Статья: https://www.citusdata.com/blog/2018/08/17/breaking-down-citus-real-time-executor/

[40] В блоге: http://www.postgresql.fastware.com/blog

[41] Сайт: https://krddevdays.ru/

[42] Это конференция-фестиваль: https://techtrain.ru/

[43] Состоится: https://2018.postgresopen.org/

[44] здесь: http://info.enterprisedb.com/20180829WillPostgresLiveForever.html

[45] конференцию: https://pdx.postgresql.us/pdxpgday2018

[46] принимаются: https://goo.gl/forms/E0CiUQGSZGMYwh922

[47] Пройдет: https://postgresconf.org/conferences/SouthAfrica2018

[48] Состоится: https://2017.pgconf.eu/

[49] postgresso: https://t.me/postgresso

[50] #7: https://habr.com/company/postgrespro/blog/413419/

[51] #6: https://habr.com/company/postgrespro/blog/358560/

[52] #5: https://habr.com/company/postgrespro/blog/353736/

[53] #4: https://habrahabr.ru/company/postgrespro/blog/351650/

[54] #3: https://habrahabr.ru/company/postgrespro/blog/349100/

[55] #2: https://habrahabr.ru/company/postgrespro/blog/347858/

[56] #1: https://habrahabr.ru/company/postgrespro/blog/345652/

[57] Источник: https://habr.com/post/420283/?utm_campaign=420283