![](https://habrastorage.org/webt/tm/8o/3w/tm8o3wzrd0hi-synlpqbbwqb-je.jpeg)
Мы продолжаем знакомить вас с самыми интересными новостями по PostgreSQL.
Релизы
PostgreSQL 11.1
Вместе с этой версией вышли также 10.6, 9.6.11, 9.5.15, 9.4.20 и 9.3.25 (это последний релиз 9.3). В этой версии есть изменения, связанные с безопасностью. Исправили выявленные ошибки. Прочитать о релизах можно здесь, а скачать здесь.
Postgres Pro Standard 11.1.1, 10.6.1, 9.6.11.1, 9.5.15.1, Postgres Pro Enterprise 10.6.1, 9.6.11.1
Эти релизы основаны на соответствующих ванильных версиях PostgreSQL и на предыдущих версиях Standard и Enterprise. В разделе «Замечания к выпуску» в соответствующей версии документации можно прочитать об отличиях от предыдущей версии семейства. Например, в Enterprise 10.6.1 и 9.6.11.1 добавлена поддержка операционной системы Astra Linux «Смоленск» 1.6 и улучшена стабильность автономных транзакций.
pgAdmin 4 version 3.5.
В этом релизе не только исправлены баги (11 штук), но и добавлены новые возможности. Среди них:
- Миграция с Bootstrap 3 на Bootstrap 4
- Можно останавливать сервисные процессы (Backup/Restore/Maintenance...)
Бинарники для
Windows
и macOS
, а также для Python Wheel
, Docker
-контейнеры и тарболы с исходниками можно скачать отсюда. RPM
ы и DEB
ы должны появиться в репозиториях postgresql.org
в ближайшие дни.TimescaleDB 1.0
В анонсе говорится, что это версия годится для использования в промышленном режиме. Эта СУБД, ориентированная на работу с временнЫми рядами, выполнена как расширение для PostgreSQL. Можно запускать разные версии TimescaleDB с одним и тем же экземпляром PostgreSQL Ядро команды разработчиков — выпускники Принстонского Университета.
PipelineDB 1.0
Вышла PipelineDB 1.0. Эта СУБД тоже, как и TimescaleDB, ориентирована на работу с временнЫми рядами. Но PipelineDB оптимизирована для агрегации и не хранит большие объемы исходных данных, она рассчитана на аналитику в режиме реального времени. Эта СУБД наследница TelegraphCQ (потоковой СУБД на PostgreSQL), далее StreamDB (его коммерческой версии). Теперь она работает как расширение PostgreSQL под лицензией Apache 2.0.
Postgres-XL 10R1
2ndQuadrant анонсировала релиз Postgres-XL 10R1. Он поддерживает большинство важных новшеств из недавнего прошлого PostgreSQL, таких как декларативное секционирование в PostgreSQL 10 и распараллеливание запросов, появившееся в 9.6. В 10R1 появился полнотекстовый фразовый поиск. Из специфических черт XL: был усовершенствован планировщик распределенных запросов. Подробности здесь, а скачать можно здесь.
GDS
2ndQuadrant сообщает, что их Global Database as a Service (GDS) теперь поддерживает PostgreSQL 11. Она предназначена для облаков, поддерживает BDR, в том числе в географически распределенной среде. Можно делать бэкап с любого узла на любой и с любого восстанавливать, работает автоматический
failover
и switchover
. Можно восстанавливаться в режиме PITR. Некоторое (довольно схематичное) описание есть здесь.Foreign Data Wrapper for SQLite 1.1.0
В этой версии доделано многое, начатое в вышедшей незадолго до этого 1.0.0. В результате в ней есть:
- поддержка PostgreSQL 11;
- push-down выражений WHERE;
- push-down агрегации;
- поддержка транзакций;
- на внешних таблицах можно выполнять SELECT, INSERT, UPDATE и DELETE.
Разрабатывают Foreign Data Wrapper for SQLite в Toshiba Software Engineering & Technology Center. Исходники можно найти в репозитории.
pg_probackup 2.0.24
В новой версии исправлены ошибки, а среди новшеств относительно версии 2.0.17:
- начиная с версии PG 9.6 при бэкапе с реплики не требуется соединение с мастером;
merge
теперь относится к категории стабильных операций (командаmerge
актуализирует полный родительским бэкап, используя заданные инкрементальные бэкапы)- в этой версии более консервативный подход к валидации файлов: в процессе валидации
pg_probackup
сверяет чексуммы блоков, валидирует заголовки блоков и проверяет, нет ли блоков «из будущего». Это поведение по умолчанию и может быть отменено; - в режиме PAGE строить карту изменившихся страниц теперь можно параллельно;
- начиная с версии 10 можно задавать
LSN
в качестве точки восстановления.
Чтобы посмотреть другие новшества и исправления, можно заглянуть сюда. Загрузить можно отсюда. Версия для Windows сейчас в статусе бета.
Bucardo 5.5.0
В этой версии появилась поддержка PostgreSQL 11. Bucardo это демон, написанный на
Perl
, который делает репликацию на основе триггеров. Можно настраивать репликацию на уровне таблиц.pg_back 1.7
Это новая версия скрипта для бэкапа. Скрипт умеет сохранять роли и табличные пространства.
dbForge Data Compare for PostgreSQL 3.1
В этой версии появилась поддержка соединений с PostgreSQL 10.x и 11.x. Утилита Data Compare позволяет сравнивать базы данных и отдельные таблицы в них, помогает писать скрипты для синхронизации баз.
pgCodeKeeper 5.2.0
В этой версии менеджера схем баз данных добавлена поддержка процедур, появившаяся в PostgreSQL 11. О новшествах и исправлениях можно узнать здесь. Загрузить можно отсюда.
Cybertec PostgreSQL Configurator
В этой утилите для тюнинга тоже появилась поддержка PostgreSQL 11.
v1.5 of pgmetrics
В этом релизе появилась поддержка SCRAM-SHA-256-аутентификации. Также добавили возможность собирать информацию только о базах из заданного списка. Релиз на гитхабе. Подробности здесь.
pglogical 2.2.1
2ndQuadrant информирует, что в новой версии полная поддержка PostgreSQL 11.
pgpool-II 4.0.2
Кроме этой версии доступны Pgpool-II 4.0.2, 3.7.7, 3.6.14, 3.5.18, 3.4.21, а вот версии до 3.6 более не распространяются в исходных кодах. О релизе здесь. Исходники и RPMы здесь.
psycopg 2.7.6
Это популярный адаптер для Python. В нем несколько расширений для облегчения доступа к PostgreSQL из Python. В данной версии ограничились исправлением ошибок и перемапированием кодов ошибок для PostgreSQL 11. Исходники здесь.
psqlODBC 11.00.0000
Об изменениях в этой версии (4 нуля — это не опечатка) можно узнать здесь.
Конференции и митапы
Прошедшие
PGDay Красноярск
Конференция прошла 12-13 ноября. Из разнообразных докладов можно было узнать, например, об опыте работы в связке PostgreSQL+1C (Михаил Фисков); о
pg_probachup
, резервном копировании и верификации с его помощью (Григорий Смолкин); о шардинге и секционировании при миллиарде записей (Алексей Фадеев). А знаменитый Брюс Момджан рассуждал о том, вечен ли Postgres. О конференции можно почитать в блоге Postgres Professional, а здесь ознакомиться со слайдами докладов.Егор Рогов и Павел Лузанов (отдел обучения Postgres Professional) провели курсы по базовым навыкам администрирования PostgreSQL (DBA1)
Митап iCluster в Нижнем Новгороде
Этот митап, посвященный PostgreSQL, прошел 16 ноября в технопарке «Анкудиновка». В качестве зарубежной звезды опять выступал Брюс Момджан. Олег Бартунов и Иван Панченко, представлявшие Postgres Professional на высшем уровне, объясняли возможности
JSON/JSONB
и принципы создания высокопроизводительных (а не просто высоконагруженных) приложений соответственно. Специалисты по Postgres общались с руководством города и с представителями местного бизнеса. Отчет журналиста cnews можно увидеть здесь.Five Cool Things I Learned at the PostgreSQL Conference Europe 2018
Ахиллес Манциос об увиденном и услышанном в Лиссабоне. Темы, впечатлившие автора (их не совсем 5):
- логическая репликация;
- zheap;
- параллельные запросы;
- настройка shared_buffers;
- обо всём понемножку (в т.ч. JIT и улучшенный полнотекстовый поиск).
Будущие
![](https://habrastorage.org/webt/jh/ka/t6/jhkat6mfjx1dj9zkxidshi92fjw.png)
(Баннер кликабельный, подробности по ссылке)
PGConf.ASIA 2018
ожидается 10-12 декабря в Токио.
PGConf India 2019
Индийская юзер-группа проведет PGconf в Бангалоре 13-15 февраля. Так как немало ключевых разработчиков PG связаны с этим субконтинентом, это может быть интересно. Сайт конференции.
Prague PostgreSQL Developer Day 2019
Синхронно (13-14 февраля) в Праге пройдет P2D2 2019. Ожидается, что конференция будет с уклоном в проблемы пользователей и разработчиков приложений. Подавать заявки сюда.
PostgreSQL Conference Europe 2019, Милан
Эта конференция пройдет 15–18 октября. Предлагается следить за новостями на сайте, который еще будет наполняться информацией по мере приближения к дате.
Образование
PostgreSQL. Основы языка SQL
Учебник вышел в издательстве БХВ-Петербург при содействии Postgres Professional и уже продается в книжных магазинах «Библио-Глобус», Ozon.ru, «Лабиринт», «Московский Дом книги», «Молодая Гвардия» и других. Автор учебника Е.П. Моргунов.
Советы Брюса
Великий и совсем не ужасный Брюс Момджан сменил амплуа прорицателя на роль обычного сенсея. Вот советы тем, кто мечтает поучаствовать как докладчик на международных PG-конференциях. Предпочтительные темы:
- новоя функциональность (фичи) в PG;
- пользовательский опыт (кейсы);
- (внутреннее устройство PG (Internals);
- новые типы нагрузок (workloads);
- производительность
- разработка приложений
Лучше подавать заявки сразу на несколько тем: конкуренция велика, и может пройдет хотя бы одна… А если заявку приняли, начинайте ваять слайды за несколько недель, а не за 30 минут до доклада.
Статьи
Care To Know Clauses: All About SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY, and LIMIT
Джошуа Отуэл (Joshua Otwell) показывает разницу между тем, как и что написано в запросе, и тем, что и в каком порядке на самом деле исполняется.
When Databases Meet FPGA: Achieving 1 Million TPS With X-DB Heterogeneous Computing
Не так уж часто услышишь о GPU, успешно ускоривших PostgreSQL, а уж FPGA/ПЛИС совсем экзотика. И вот статья об обработке 1 млн транзакций в секунду, отчасти за счет FPGA. На них уже возложили ускорение запросов с SELECT и WHERE, на очереди GROUP BY. Это решение тем удивительней, что у Alibaba нагрузка OLTP, а не OLAP и серьезная доля пушущих транзакций. В распределенной СУБД
X-DB
собственный движок хранения X-Engine
. В статье рассказывается о специфической архитектуре и доработках, необходимых для работы в таких экстремальном и экзотическом окружении.Postgres 11 partitioning
Дениш Пэтел(Denish Patel) разъясняет, какие проблемы с секционированием были, наконец, решены в PostgreSQL 11. Есть матрица функциональных возможностей 9.6/10/11.
Немного о конфигурировании PostgreSQL
Эта статья Павла Фомина замечательна, может, не сама по себе, а тем, что ее появление на сайте Инфостарт была как минимум попыткой серьезного разговора о настройке PostgreSQL и о технологиях этой СУБД. Она написана, мягко говоря, не вчера, но зато комментарии продолжают прибывать по сей день.
Экспресс-обзор производительности PostgreSQL 10.5 в новейших облачных сервисах Яндекс.Облака
В этом обзоре есть цифры, графики производительности, цены. Есть победители и проигравшие.
fsync() и ОС
Виктор Егоров обратил внимание участников группы «PostgreSQL в России» в
facebook
на то, что следующие минорные релизы будут с изменённым поведениям на ошибки fsync()
вызовов. «На ряде ОС (линукс в первых рядах) ядро при ошибке записи из своего буфера на ФС (что приложение видит как ошибку fsync-а) больше не пытается это сделать и при повторном вызове fsync приложением и просто возвращает SUCCESS (ядро просто сбрасывает свой write-back кэш если что-то пошло не так). В результате было принято решение в таких случаях PANIC-овать, т.е. база будет складываться. Добавленной крутилке `data_sync_retry`, которая при изменении заставляет базу не складываться, а только выдать ошибку в лог и продолжить попытки fsync-нуть блоки. Правда, в продукции включать эту опцию не рекомендуют». Обсуждаемый коммит и детали обсуждения.Подписывайтесь на канал postgresso!
Идеи и пожелания присылайте на почту: news_channel@postgrespro.ru
Предыдущие выпуски: #11 (спец), #10,
#9, #8, #7, #6, #5, #4, #3, #2, #1