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

Postgresso 18

Postgresso 18 - 1

После паузы (отпуск), продолжаем знакомить вас с самыми интересными новостями по PostgreSQL. Не будем придерживаться здесь строго отображения всех релизов и событий, произошедших после последнего, еще октябрьского выпуска Postgresso #17, но важнейшее, произошедшее ещё в конце 2019 всё же постараемся упомянуть.

Релизы

PostgreSQL 12.2
А также 11.7, 10.12, 9.6.17, 9.5.21, и 9.4.26 увидели свет [1] 13 февраля. Последняя в списке и есть последняя: 27-й уже не будет. В 12.2 исправлено огромное количество (более 70) багов, обнаруженных в 12.1. Из них многие в секционировании.

Решили проблемы с правами в конструкции ALTER… DEPENDS ON EXTENSION. В 12.1 обладатели прав на DROP EXTENSION могли расправляться с объектами, зависимыми от этого расширения.

Улучшили производительность parallel hash join для процессоров с большим количеством ядер и для hash join с очень большими таблицами.

Postgres Pro Standard 12.1.1

Эта версия вышла в конце декабре 2019 и основана, соответственно, на PostgreSQL 12.1. Об особенностях этой версии можно прочитать в этой статье [2]. Там подробно и с примерами рассматриваются:
— проверка версий ICU;
— оптимизация блокировок, джойнов и GROUP BY;
— поддержка PTRACK;
— WaitLSN;
и многое другое.

MobilityDB 1.0 beta1
Не смотря на молодость (см. номер версии), это опен-сорсное расширение для пространственно-временнЫх объектов активно используется и у нас, и за рубежом для анализа морских и сухопутных транспортных потоков, что ясно из двух докладов на конференции PGConf.Russia. Видео будут позже, а мини-выжимки из этих (в том числе) докладов мы напечатаем на хабре в ближайшее время. Работает это расширение [3] с PostgreSQL и PostGIS.

PostGIS 3.1.0alpha1
Новая альфа [4] модернизирована под версии PostgreSQL 12.1 и GEOS 3.8.0.
Подробности здесь [5], ссылка на скачивание есть на этой странице [6].

KrahoDB
Эта бразильская СУБД со странно звучащим для русского уха названием построена поверх PostgreSQL версий 10, 11 и 12 для кластеров в режиме двунаправленой логической репликации. Читать и загружать здесь [7].

PGSpider
Вышла первая версия. Это патч к PostgreSQL (пока к 11.6), который, по замыслу создателей, снабжает PG высокопроизводительным кластерным движком на FDW, работающим с распределенными данными. Запросы обрабатываются параллельно и есть пушдаун. Разработан Toshiba Software Engineering & Technology Center. Подробности здесь [8].

PostgreSQL TDE 12
Это разработка [9] Cybertec — патч к PostgreSQL для прозрачного шифрования (Transparent Data Encryption), независимого от ОС и файловой системы.

Database Lab 0.2.0
Это первая публичная версия [10] утилиты для клонирования многотерабайтных баз PostgreSQL. Создатель, Николай Самохвалов из Postgres.ai утверждает, что теперь это занимает пару секунд. Все компоненты теперь работают в контейнерах: устанавливаете Docker и ZFS, остальное внутри. Подробности в чейнджлоге [11] и на гитхабе проекта [12].

Joe DBA-bot для оптимизации запросов к PostgreSQL
Еще один продукт этой компании. Работает [10] поверх Database Lab.

Aurora PostgreSQL Supports Machine Learning
Amazon добавил машинное обучение [13] в AWS. Дополнительной оплаты от пользователей не требуется. Они получают все модели из Amazon SageMaker [14], могут пользоваться ML из Amazon Comprehend [15], который анализирует (sentiment analysis) естественный язык. Есть экспорт в Amazon S3 при помощи нового расширение aws_s. Работает в версиях PostgreSQL 10 and 11. Подробности здесь [16].

Odyssey 1.0
Разработчики Яндекса довели свой облачный многопоточный пулер до промышленной версии — 1.0. Они и сами используют его в продакшн, где он обслуживает более 1 млн запросов в секунду на сотнях хостов. Удалось добиться:
— линейного масштабирования на процессорах;
— поддержки разных режимов работы с возможностями конфигурировать аутентификацию, режим пулинга и пр.;
— пулер умеет автоматически откатывать транзакции и убивать процессы бэкендов при разрыве соединений;
— умеет корректно передавать ошибки PostgreSQL;
— поддерживает протокол репликации;
— поддерживает PAM и SCRAM аутентификацию.
Релизы Odyssey находятся здесь [17].

pgbouncer_fdw 0.2.0
Подробности версии здесь [18]. Разработка Cybertec.

pgbouncer_wrapper 1.1.0
С ним можно обращаться [19] к балансировщику на SQL. Тоже Cybertec.

Pgpool-II 4.1.0
В этой версии среди изменений:
— балансировка нагрузки на уровне statement
— автоматический failback;
— увеличена производительность за счет более эффективного использования кэша и парсера.
Почитать можно
здесь [20], а загрузить отсюда [21].

pg_probackup 2.2.7
Новое в этой версии:
— добавлена поддержка ptrack 2.0 [22];
— в репозитарии появились пакеты для ALT Linux versions p7, p8 и p9.
Последняя версия документации расположилась здесь [23]. К тому же по инсайдерской информации сейчас пишется статья на хабр по pg_probackup. Скачивать отсюда [24].

check_pgbackrest 1.7
Утилита Жиля Дароля мониторит бэкапы pgBackRest, представляет собой плагин к Nagios [25]. Он помогает проверять политики хранения бэкапов (retention) и согласованность заархивированных сегментов WAL. В новой версии можно добавить вывод в формате json, задать формат переименования выходного файла и другое [26].

pgAdmin4 4.18
В этой версии [27]:
— появилась поддержка многоуровневого секционирования;
— инструмент для сравнения двух схем;
— сессия закрывается, когда пользователь перестает шевелить мышью, трогать клавиши.
— исправлен баг: раньше в Windows в режиме сервера можно было, указав в настройках пустую
STORAGE_DIR, увидеть все тома Windows. Теперь нельзя.
Скачивать отсюда [28].
Подробности багфиксов последней версии здесь [29].

pg_timetable
Планировщик работ для PostgreSQL от Cybertec. Умеет [30] автоматически перезапускать невыполненные задания, строить цепочки, рассылать почту. Интересно, что среди заявленных преимуществ есть работа не как фонового процесса, а как демона. Вопрос, мягко говоря, дискуссионный: напомним, что создатели pgpro_scheduler [31] выбирали архитектуру с работой планировщика «внутри» базы именно как преимущество. Скачать можно отсюда [32].

pgCluu 3.1
Новую версию этой Perl-программы [33] (тоже Жиля Дароля) для аудита производительности кластеров с PostgreSQL можно скачать здесь [34]. pgCluu собирает статистику работы не только СУБД, но и системные ресурсы кластера.

pitrery 3.0
В новой версии этого набора скриптов для управления PITR-бэкапами (от Dalibo) появилась [35] поддержка PostgreSQL 12.

Operator 4.2.1
Crunchy PostgreSQL Operator использует Kubernetes для быстрого разворачивания и управления PG-кластерами. На этой странице [36] есть подробная инструкция по установке последней (и любой другой) версии.

PostgresDAC 3.7
Набор компонетов от Microolap для работы в RAD Studio с PostgreSQL модернизирован под версии PostgreSQL 12 and RAD Studio 10.3.2. Работает с PostgreSQL, EnterpriseDB, Amazon RDS, PostgresPro and Heroku Postgres. Чейнджлог здесь [37], загружать отсюда [38].

pgFormatter 4.2
О новой версии этой утилиты Жиля Дароля здесь [39].

explain-running-query
Программка на Python выводит [40] план исполняющегося в PostgreSQL запроса.

pg_sqlog 1.0
Это расширение-интерфейс [41] к логам.

psqlODBC 12.01.0000
О новой версии здесь [42].

pgmetrics 1.8.1
Версию этой утилиты, собирающей статистику о работе сервера PostgreSQL и отдающей ее в виде текста, JSON или CSV можно скачать отсюда [43].

wal2json 2.0
В новой версии [44] этой утилиты логического декодирования только багфиксы.

psycopg 2.8.4
В этой версии PostgreSQL-адаптера для Python багфиксы и добавлена поддержка Python
3.8 и PostgreSQL 12. Забирать исходники [45] отсюда.

Ajqvue 3.1
Вышла новая версия [46] этой графической среды. И еще интересный плагин-конвертер [47].

Migrator 1.0
Cybertec-овская графическая утилита [48] на основе ora_migrator. Полностью транзакционная миграция, мониторинг. Есть подробное руководство [49] установки.

oracle_fdw 2.2.0
Новая [50] версия.

PEV2
Инструмент [51] визуализации планов PostgreSQL от Dalibo.

Образование

Учебник [52] «Новиков Б. А. Основы технологий баз данных» 2-е издание
На сайте Postgres Professional можно скачать PDF, [53] который теперь содержит обе части. В феврале должна появиться и бумажная версия книги.

Postgresso 18 - 2

Вышла новая «малютка»
Она же «Postgres. Первое знакомство». Это уже 6-е издание популярной брошюры (число 12 на обложке относится не к изданию, а к версии PG, на которой демонстрируются примеры). Основные изменения:
— в главе про установку полностью перешли с Postgres Pro Standard на ванильную PostgreSQL 12;
— появилась и будет впредь глава о новых возможностях последней версии (в этом издании — 12-й);
— в главе про JSON рассказано и про JSON/Path;
— в главе про обучение появился раздел о сертификации.
Книжечку уже раздавали на конференции PGConf.Russia.

Postgresso 18 - 3.

Скачать PDF можно отсюда [54].

Статьи

An Overview of Job Scheduling Tools for PostgreSQL
Хуго Диас обозревает [55] в блоге SeveralNines:
— Linux crontab;
— Agent pgAgent;
— Extension pg_cron.
К сожалению, в обзор не попал pgpro_scheduler [31].

How To Migrate From Trigger-Based Partitioning To Native in PostgreSQL
Статья [56] в блоге Crunchy Data, и миграция разбирается на примере их расширения pg_partman, но многое применимо и к другим инструментам секционирования.

Creating a PostgreSQL procedural language – Part 2 – Embedding Julia
Как интегрировать в Postgres процедурный язык — в данном случае на примере не самого распространенного языка — Julia, ориентированного на исполнение в LLVM. Марк Вонг пишет [57] в блог 2ndQuadrant.

Migrating from MS SQL to PostgreSQL: Uppercase vs. Lowercase
Ханс-Юрген Шёниг в блоге Cybertec пишет о, казалось бы, частном случае при миграции — переводе имен объектов из верхнего регистра в нижний, но это, во-первых, распространенная практика, а во-вторых, предостерегает [58] прежде всего от лазеек для SQL-инъекций.

Replication configuration changes in PostgreSQL 12
в статье [59] не только перечисляются изменения, но и разбираются неочевидные нюансы.

PostgreSQL 13: параллельный VACUUM
Это standalone-cтатья [60] Егора Рогова, она не входит в его сериалы — 10 статей [61] об индексах, 8 статей [62] о MVCC, 4 статьи [63] о блокировках и 4 статьи [64] о WAL.

Вебинары и митапы

Открытый PostgreSQL Meetup
Организован Райффайзенбанком и Postgres Professional. Запись выложена [65] на хабре.

Вторники #RuPostgres
Каждый вторник в 18:30 мск Наколай Самохвалов (Postgres.ai) и Илья Космодемьянский (Data Egret) устраивают онлайновые Постгрес-вторники по Zoom (постоянная ссылка для звонков [66]).
Можно поучаствовать просто голосом, но желательно с видео. Можно остатья зрителем.
YouTube [67] – онлайны, записи.
Facebook [68] – записи, обсуждения.
гуглодок [69] с программой, принимаются темы.

GDG Databases. PostgreSQL Pro deep dive (Тюмень)
7 февраля 2020 года в Тюменском технопарке, на площадке «Точки кипения» состоялся митап с этим названием [70] в Тюмени [71]). В нем участвовали в том числе Брюс Момджан, Олег Бартунов, Иван Панченко.

Tver.IO PostgreSQL Performance Workshop
10 февраля Брюс выступил в Твери с трёхчасовой лекцией "PostgreSQL Performance Tuning [72]".

PostgreSQL-митап в Минске
Из Твери Брюс отправился именно туда. Это был первый PostgreSQL-митап в Беларуси, он прошел 12-го февраля. На митапе также выступил главный архитектор Postgres Professional Александр Коротков. У постгрессистов Беларуси есть своя группа в фб [73], телеграм [74] и митап [75].

Конференции

Прошедшие

PGConf.Russia
прошла [76] на экономическом факультете МГУ 3-5 февраля. Видео докладов будут доступны в ближайшие недели, а многие презентации стали доступны уже на конференции (см. программу [77]). В ближайшие дни здесь появится короткая сводка и статьи по материалам докладов.

Будущие

pgDay Israel 2020
пройдет [78] в 19 марта в Тель-Авиве.

pgDay Paris 2020
состоится [79] в Париже 26 марта.

PG Day Russia 2020
состоится [80] 10 июля, заявки [81] можно подавать до 6 апреля.

PostgresLondon 2020
пройдет [82] 7-8 июля, заявки можно подавать сюда [83].


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

Идеи и пожелания присылайте на почту: news_channel@postgrespro.ru
Предыдущие выпуски: #17 [85], #16 [86], #15 [87], #14 [88], #13 [89], #12 [90], #11 (спец) [91], #10 [92], #9 [93], #8 [94], #7 [95], #6 [96], #5 [97], #4 [98], #3 [99], #2 [100], #1 [101]

Автор: Igor_Le

Источник [102]


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

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

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

[1] увидели свет: https://www.postgresql.org/docs/current/release-12-2.html

[2] этой статье: https://habr.com/ru/company/postgrespro/blog/479618/

[3] это расширение: https://github.com/ULB-CoDE-WIT/MobilityDB

[4] Новая альфа: https://postgis.net/2020/02/02/postgis-3.1.0alpha1

[5] здесь: https://git.osgeo.org/gitea/postgis/postgis/raw/tag/3.1.0alpha1/NEWS

[6] странице: https://postgis.net/2020/02/02/postgis-3.1.0alpha1/

[7] здесь: https://github.com/timbira/krahodb

[8] здесь: https://github.com/pgspider/pgspider

[9] разработка: https://www.cybertec-postgresql.com/en/products/postgresql-transparent-data-encryption

[10] версия: https://gitlab.com/postgres-ai/database-lab

[11] чейнджлоге: https://gitlab.com/postgres-ai/database-lab/-/blob/master/CHANGELOG.md#010-2020-01-23

[12] гитхабе проекта: https://gitlab.com/postgres-ai/database-lab/-/tags/0.1?fbclid=IwAR0c9jtobhnP22-WgW9IqYRtjgu1J5mrhZqVtTP6Cte0-bnVGNJzydkuIcA

[13] добавил машинное обучение: https://aws.amazon.com/about-aws/whats-new/2020/02/aurora-postgresql-supports-machine-learning-export-to-amazon-s3-and-new-minor-versions/

[14] Amazon SageMaker: https://aws.amazon.com/sagemaker/

[15] Amazon Comprehend: https://aws.amazon.com/comprehend/

[16] здесь: https://aws.amazon.com/rds/aurora/machine-learning/

[17] здесь: https://github.com/yandex/odyssey/releases

[18] здесь: https://info.crunchydata.com/blog/making-pgbouncer-easier-to-monitor

[19] можно обращаться: https://github.com/davidfetter/pgbouncer_wrapper

[20] здесь: https://www.pgpool.net/docs/41/en/html/

[21] отсюда: https://pgpool.net/mediawiki/index.php/Downloads

[22] ptrack 2.0: https://github.com/postgrespro/ptrack

[23] здесь: https://postgrespro.github.io/pg_probackup

[24] отсюда: https://github.com/postgrespro/pg_probackup

[25] Nagios: https://www.nagios.org/

[26] другое: https://github.com/dalibo/check_pgbackrest/releases

[27] этой версии: https://www.pgadmin.org/docs/pgadmin4/dev/release_notes_4_18.html

[28] отсюда: https://www.pgadmin.org/download/

[29] здесь: https://www.pgadmin.org/docs/pgadmin4/development/release_notes_4_18.html

[30] Умеет: https://github.com/cybertec-postgresql/pg_timetable

[31] pgpro_scheduler: https://postgrespro.ru/docs/enterprise/11/pgpro-scheduler

[32] можно отсюда: https://www.cybertec-postgresql.com/en/products/pg_timetable/

[33] этой Perl-программы: http://pgcluu.darold.net/

[34] здесь: https://github.com/darold/pgcluu/releases

[35] появилась: http://dalibo.github.io/pitrery/news/release/2020/01/20/pitrery-3-0-release.html

[36] этой странице: https://access.crunchydata.com/documentation/postgres-operator/latest/quickstart/

[37] здесь: https://www.microolap.com/products/connectivity/postgresdac/news/detail.php?ID=1814

[38] отсюда: http://microolap.com/products/connectivity/postgresdac/download/

[39] здесь: http://sqlformat.darold.net/

[40] выводит: https://github.com/StarfishStorage/explain-running-query

[41] расширение-интерфейс: https://github.com/kouber/pg_sqlog

[42] здесь: https://odbc.postgresql.org/docs/release.html

[43] отсюда: https://pgmetrics.io/

[44] новой версии: https://github.com/eulerto/wal2json/releases

[45] исходники: http://initd.org/psycopg/tarballs/PSYCOPG-2-8/psycopg2-2.8.4.tar.gz

[46] новая версия: https://github.com/danap/ajqvue

[47] плагин-конвертер: https://github.com/danap/db_to_filememorydb

[48] утилита: https://www.cybertec-postgresql.com/en/products/cybertec-migrator/

[49] руководство: https://www.cybertec-postgresql.com/en/step-by-step-guide-cybertec-migrator/

[50] Новая: https://laurenz.github.io/oracle_fdw

[51] Инструмент: https://dali.bo/github_pev2

[52] Учебник: https://postgrespro.ru//education/books/dbtech

[53] можно скачать PDF,: https://edu.postgrespro.ru/dbtech.pdf

[54] отсюда: https://edu.postgrespro.ru/introbook_v6.pdf

[55] обозревает: https://severalnines.com/database-blog/overview-job-scheduling-tools-postgresql

[56] Статья: https://info.crunchydata.com/blog/how-to-migrate-from-trigger-based-partitioning-to-native-in-postgresql

[57] пишет: https://www.2ndquadrant.com/en/blog/creating-a-postgresql-procedural-language-part-2-embedding-julia/

[58] предостерегает: https://www.cybertec-postgresql.com/en/migrating-from-ms-sql-to-postgresql-uppercase-vs-lowercase/

[59] статье: https://www.2ndquadrant.com/en/blog/replication-configuration-changes-in-postgresql-12/

[60] standalone-cтатья: https://habr.com/ru/company/postgrespro/blog/486264/

[61] 10 статей: https://habr.com/ru/company/postgrespro/blog/326096/

[62] 8 статей: https://habr.com/ru/company/postgrespro/blog/442804/

[63] 4 статьи: https://habr.com/ru/company/postgrespro/blog/462877/

[64] 4 статьи: https://habr.com/ru/company/postgrespro/blog/458186/

[65] выложена: https://habr.com/ru/company/raiffeisenbank/blog/468707/

[66] постоянная ссылка для звонков: https://zoom.us/j/779919744

[67] YouTube: https://www.youtube.com/RuPostgres

[68] Facebook: https://www.facebook.com/groups/RuPostgres/

[69] гуглодок: https://bit.ly/RuPostgresTuesday

[70] митап с этим названием: https://www.meetup.com/ru-RU/GDG-Tyumen/events/267986105

[71] Тюмени: https://www.meetup.com/ru-RU/GDG-Tyumen/

[72] PostgreSQL Performance Tuning: https://www.meetup.com/tverio/events/268260879/

[73] группа в фб: https://www.facebook.com/groups/postgresby/

[74] телеграм: https://t.me/postgresby

[75] митап: https://www.meetup.com/Minsk-PostgreSQL-Meetup

[76] прошла: https://pgconf.ru/2020

[77] программу: https://pgconf.ru/2020/program

[78] пройдет: http://pgday.org.il/

[79] состоится: https://2020.pgday.paris/

[80] состоится: https://pgday.ru/en/2020/

[81] заявки: https://pgday.ru/en/2020/for-speakers

[82] пройдет: http://postgreslondon.org

[83] сюда: https://forms.gle/5m8ybUt9YDZG4gVU7

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

[85] #17: https://habr.com/ru/company/postgrespro/blog/466065/

[86] #16: https://habr.com/ru/company/postgrespro/blog/456790/

[87] #15: https://habr.com/ru/company/postgrespro/blog/445544/

[88] #14: https://habr.com/ru/company/postgrespro/blog/436352/

[89] #13: https://habr.com/ru/company/postgrespro/blog/434760/

[90] #12: https://habr.com/company/postgrespro/blog/428275/

[91] #11 (спец): https://habr.com/company/postgrespro/blog/426745/

[92] #10: https://habr.com/topic/edit/422527/

[93] #9: https://habr.com/company/postgrespro/blog/420283/

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

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

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

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

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

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

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

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

[102] Источник: https://habr.com/ru/post/472082/?utm_campaign=472082&utm_source=habrahabr&utm_medium=rss