Мы продолжаем знакомить вас с самыми интересными новостями по PostgreSQL.
Новости
Microsoft приобрела Citus Data
Безусловно, главная новость в мире PostgreSQL. Об этом есть сообщение на сайте Citus, равно как и на сайте MS.
Postgres Pro Enterprise Certified
СУБД Postgres Pro Enterprise получила сертификат ФСТЭК, и теперь в наборе Postgres Pro есть и «Сертифицированная версия Postgres Pro Enterprise». До этого сертификат, необходимый для работы с персональными данными, имела только Postgres Pro Standard («Сертифицированная версия Postgres Pro»). Подробности на сайте.
credativ: PostgreSQL Competence Center
Германская фирма credativ, до того известная в Европе и Азии, приобрела фирму OmniTI, чтобы выйти на американский рынок. credativ специализируется на развертывании и поддержке проектов open source
. Теперь в США откроется PostgreSQL Competence Center, который будет заниматься высококритичными проектами и поддерживать БД в течение всего их жизненного цикла.
Конференции
Postgres On The Beach (Ibiza)
Пляжи Ибицы ждут докладчиков и слушателей 21-22 июня, а еще лучше прилететь 20-го и остаться до вечера 24-го из-за богатой развлекательной программы на уикэнд.
PGConf.Russia 2019
Конференция прошла 4-6 февраля на Экономическом факультете МГУ, собрав рекордное число участников — более 700. Было много нового. В отдельный поток выделили доклады по теме Postgres и 1С. Всего же в трех потоках состоялось 55 докладов, 9 мастер-классов и 3 круглых стола. Самую бурную дискуссию вызвал круглый стол «Импортозамещение системного и инфраструктурного программного обеспечения», организованный при поддержке АРПП «Отечественный софт».
Призы за лучшие доклады на конференции получили:
- Иван Фролков, Postgres Professional
Типичные ошибки приложений при работе с Postgres - Иван Муратов, «Первая Мониторинговая Компания»
PostgreSQL + PostGIS + TimescaleDB — хранилище для систем мониторинга транспорта - Николай Самохвалов, Nombox LLC
Промышленный подход к тюнингу PostgreSQL: эксперименты над базами данных
О некоторых докладах мы планируем написать подробнее. Пока можно посмотреть презентации.
Turkish PostgreSQL
Конференция пройдет уже 24 февраля в Анкаре.
PostgreSQL@SCaLE
Двухдневная двухпоточная конференция пройдёт 7-8 марта в городе Пасадена (США) как часть SCaLE 17X.
Postgres Conference 2019
Конференция состоится в Нью-Йорке 18-22 марта.
Prague PostgreSQL Developer Day 2019
Конференция P2D2 2019 в Праге уже идёт 13-14 февраля.
Релизы
PostgreSQL 11.2
Вышли все апдейты поддерживаемых версий PostgreSQL: 11.2, 10.7, 9.6.12, 9.5.16 и 9.4.21. В этих версиях есть важные поправки: прежде всего, изменено поведение PostgreSQL при вызове fsync()
. Также исправлены некоторые недостатки секционирования и 70 других ошибок, накопившихся за последние 3 месяца. Подробности здесь.
pgAdmin4 4.2
Вышел pgAdmin 4 v4.2:
- панель статистики не подвисает, даже когда таблиц больше тысячи;
- браузер предупреждает перед тем, как закрыться или обновить страничку;
- результат запроса будет показан, даже если окошко результатов (Data Output) отсоединено от окошка запросов (Query Tool);
- улучшена навигация и оптимизированы виджеты.
Исправлено 40 багов (а в v4.1 — 7, v4.0 — 26). Список багфиксов здесь.
Загружать отсюда.
pgBadger 10.2
Сразу две новости по поводу pgBadger (перлового графического анализатора логов). Вышла версия 10.2. Но если вы пойдете по ссылке (например, в новостной ленте Дэвида Феттера), вы не придете никуда. Потому что проект переехал с гитхаба Dalibo на гитхаб github.com/darold/pgbadger и сайт pgbadger.darold.net разработчика — Жиля Дароля (Gilles Darold). Из чейнджлога следует, что в новой версии:
- добавлена опция
exclude-db
, то есть можно пропускать информацию, относящуюся к указанной БД; - добавлена возможность работы с логами через
ftp
иhttp
. При этом лог анализируется при загрузке и на диск не сохраняется. Можно задать адреса логов на разных серверах (на удаленном и на локальном, например); - по
ssh
лог разбирается на месте. Можно задавать файлы для анализа, используя *. Опция-r
для удаленных серверов пока сохранена для совместимости, но будет упразднена.
И исправлены баги, разумеется.
barman 2.6
2ndQuadrant сообщила о выходе нового релиза. Что в нём есть:
- географическая избыточность для катастрофоустойчивости (disaster recovery);
- добавлена команда
put-wal
, чтобы можно было запускатьarchive_command
СУБД, используя скриптbarman-wal-archive
, который есть в пакетеbarman-cli
; - операция
check
теперь поддерживает ANSI-коды цветов; - исправлены баги.
Все изменения и багфиксы по этому адресу. Исходники здесь.
Ora2Pg
Вышла юбилейная — 20.0 — версия утилиты Ora2Pg. Это произведение того же автора — Жиля Дароля. Из нового:
- экспорт BFILE в тип
bytea
теперь делается при помощи функции PL/SQL, которая извлекает данные из BFILE и преобразует их к виду, подходящему для INSERT или COPY в PostgreSQL; - появилась директива DATA_EXPORT_ORDER, теперь можно экспортировать не в алфавитном порядке, а учитывая размеры таблиц;
- добавилась директива NO_BLOB_EXPORT (название говорит само за себя).
Есть и другие изменения, исправлено много багов. Чейнджлог здесь. О релизе на гитхабе разработчика здесь.
pg_probackup 2.0.26
Новая версия утилиты для бэкапа и восстановления от Postgres Professional. В ней, кроме исправленных багов:
- во время валидации теперь сверяются текущая версия
pg_probackup
и версия, созданная резервной копией. Работаpg_probackup
с копией более свежей версии явно запрещена (то есть отсутствие прямой совместимости); - улучшена поддержка Windows;
- улучшена поддержка табличных пространств в пределах
PGDATA
.
Об изменениях можно прочитать здесь. Документация по pg_probackup
здесь.
datasketches 1.0.0 и другие новинка PGXN
На PGXN выложено новое расширение — datasketches 1.0.0
авторства Александра Сайдакова. Это расширение подключает библиотеки Datasketches
, в которых есть алгоритмы приблизительных оценок для Big Data. На сайте PGXN, созданном Дэвидом Уилером (David Wheeler), можно найти еще много новых расширений. Например, Citus 8.1.1 — СУБД, которая работает как расширение PostgreSQL. Там же можно увидеть расширение tsvector2 1.0.0 — это альтернатива типу tsvector
, который используют для полнотекстового поиска (улучшена компрессия и нет ограничения в 1 МБ). tsvector2 выложен на PGXN в декабре, а двумя месяцами раньше там появилась последняя версия расширения pg_pathman — 1.5.2, тоже разработки Postgres Professional. Одновременно с pg_pathman
выложена и последняя версия pg_partman — 4.0.0 Кита Фиске (Keith Fiske).
PAF v2.2.1
Вышла новая версия PostgreSQL Automatic Failover (PAF). Исправлены баги, в том числе, вызывавшие распухание логов. Загружать исходники, RPMы или DEBы можно с гитхаба проекта. Документация лежит здесь. Имеется демо. Лицензия PostgreSQL.
check_pgactivity v2.4
Это плагин для Nagios. В новой версии можно, например, фильтровать результаты по application_name
в longest_query
и oldest_idlexact
. Подробности здесь. Лицензия BSD.
pgCenter 0.6.0 и 0.6.1
Это Go-
утилита Алексея Лесовского (Alexey Lesovsky) из Data Egret. В версии 0.6.0 появились:
- новый профайлер, работающий с атрибутом
wait_event
представленияpg_stat_activity
, который помогает исследовать долгоиграющие запросы и выяснять, где они проводят время; - поддержка утилиты GoReleaser, которая помогает собирать бинарные пакеты
.rpm
и.deb
; - pgCenter получил статус A+ Go Report Card — шаг к признанию верности pgCenter стилю языка
Go
; - другие изменения.
Релиз 0.6.1. минорный и не рассматривается как несущий важные изменения. Гитхаб pgCenter здесь.
Образование
Учебник «Основы технологий баз данных»
Вслед за учебником «PostgreSQL. Основы языка SQL» вышла из печати первая часть учебника Б.А. Новикова и Е.А.Горшковой «Основы технологий баз данных». Учебник можно приобрести в издательстве ДМК Пресс, в интернет-магазинах ozon.ru, Labirint.ru и розничных книжных сетях. В формате PDF первую часть книги можно скачать свободно с сайта Postgres Professional. Вторая часть книги готовится к публикации. Учебник охватывает теорию баз данных, методы и алгоритмы, применяемые при реализации СУБД, а также их особенности в системе PostgreSQL.
Видео учебного курса «Основы технологий баз данных»
Выложены слайды и видео первых двух частей курса Б.А.Новикова.
Книжка-малютка «Postgres: первое знакомство»
Вышло новое, уже 5-е издание книжки-малютки «Postgres: первое знакомство». Начиная с 4-го издания эта книга издается и на английском.
Обновление курса DBA2
Прежний курс DBA2 по версии PostgreSQL 9.5 назывался «расширенным» и включал в себя темы, дополняющие и углубляющие материал DBA1. Новый курс DBA2 по версии PostgreSQL 10 получился более сфокусированным за счет выделения части материала в самостоятельные курсы и получил название «Настройка и мониторинг». Если в DBA1 рассматривается механизм настройки сервера, то в этом курсе объясняется, какие именно параметры нужно настраивать и как это делать осмысленно, с пониманием внутреннего устройства PostgreSQL и на основе обратной связи от мониторинга. Материал курса существенно обновлен, добавлен модуль про различные виды блокировок.
Новый курс QPT
Оптимизация запросов, ранее рассматривавшаяся в курсе DBA2 по версии PostgreSQL 9.5, теперь выделена в отдельный курс, одинаково необходимый как администраторам, так и прикладным разработчикам. Курс обновлен с учетом новой версии PostgreSQL, в частности, добавлен материал по параллельному выполнению запросов. Все примеры курса теперь используют демонстрационную базу данных.
Postgres в ретроспективе
Елена Индрупская перевела посвященную Postgres главу «Looking Back at Postgres» из книги Джозефа Хеллерстайна (Joseph M. Hellerstein) о лауреатах Премии Тьюринга. Оригинал в PDF можно бесплатно прочитать на arXiv.org.
Статьи и блоги
Three Factors of Authentication
Брюс Момджан обнародовал в своем блоге короткую, но концептуальную заметку о принципах аутентификации в PostgreSQL. По его словам, из трёх факторов:
- то, что ты знаешь (пароль, PIN);
- то, что у тебя есть (телефон, устройство для аутентификации);
- то, кем ты являешься (отпечаток пальца, радужка, голос);
в PostgreSQL напрямую используются только разновидности первого. С некоторыми ухищрениями, однако, можно использовать PIV-устройства, например YubiKey. Предлагается подумать, встраивать ли в PostgreSQL прямую поддержку аутентификации вида 2 и 3 или просто подробно просветить желающих при помощи документации. Обратите внимание, перед этим Брюс писал аж о 15 методах аутентификации.
One Security System for Application, Connection Pooling and PostgreSQL — The Case for LDAP
Здесь рассматривается конфигурация корпоративной системы с
PostgreSQL 10, сервером приложений Wildfly, LDAP, pgbouncer. Даны примеры с конфигурационными файлами и кодом.
Миграция с Mongo на Postgres: опыт газеты The Guardian
Это перевод статьи Bye bye Mongo, Hello Postgres из самой Guardian.
Scheduling Backups En Masse with the Postgres Operator
Джонатан Кац (Jonathan S. Katz) рассказывает, как делать по расписанию полный и дифференциальный бэкап. Пишет о политиках резервного копирования, как создать само расписание, приводит примеры команд.
An Overview of JSON Capabilities Within PostgreSQL
Венката Наготи (Venkata Nagothi) пишет в том числе о полнотекстовом поиске и приводит примеры правильного и неправильного использования операторов @>
и #>
Lessons learned scaling PostgreSQL database to 1.2bn records/ month
Статья Гайуса Кюзинаса (Gajus Kuizinas) — это история воплощения крупного проекта с Kubernetes
-кластером. Исследовали четыре варианта размещения данных: Google, Amazon, Aiven.io и у себя. Баг в Cloud SQL for PostgreSQL и вялая реакция службы поддержки заставил отказаться от Google; Amazon RDS не поддерживает расширение TimescaleDB, которое решили использовать для секционирования; у Aiven.io не обнаружилось решающих недостатков, но и с преимуществами слабовато. В результате развернули проект собственными силами. Для резервного копирования в этом проекте используют barman, детище 2ndQuadrant. Напоминаем, что только что вышел barman 2.6
.
PostgreSQL Performance in AWS, GCP, Azure, DO and UpCloud
Эта статья, конечно, ангажированная: ее написал CEO компании Aiven.io Оскари Сааренмаа (Oskari Saarenmaa), но в ней немало информации об облачных решениях с PostgreSQL 10 от пяти облачных провайдеров.
pg_sampletolog: An extension to log a sample of statements
Статья Адриена Найра (Adrien Nayrat) из французской компании Doctolib рассказывает, зачем автор сделал расширение pg_sampletolog
и как оно семплирует транзакции в логи (выбирая, например, 10% транзакций).
The most useful Postgres extension: pg_stat_statements
Крейг Керстенс (Craig Kerstiens) сделал выжимку из своего доклада о расширениях PostgreSQL на конференции FOSDEM в Брюсселе, касающуюся pg_stat_statements
, так как именно это расширение вызвало наибольший интерес.
Серия статей Postgres 12 highlight Мишеля Пакье
В своём standalone
-блоге Мишель рассказывает о:
- Functions for partitions;
- SKIP_LOCKED for VACUUM and ANALYZE;
- pg_promote;
- wal_sender_timeout now user-settable;
- Controlling SSL protocol;
- New PGXS options for isolation and TAP tests;
- DOS prevention.
Maintaining feature branches and submitting patches with Git
Питер Айзентраут (Peter Eisentraut) из 2ndQuadrant делится опытом использования git
, советует, как работать в собственных ветках, как мерджить и коммитить.
Eye or the Tiger: Benchmarking Cassandra vs. TimescaleDB for time-series data
Разработчики TimescaleDB, расширения PostgreSQL для работы с временными рядами, утверждают, что их детище работает на 5 узлах быстрее, чем Cassandra на 30, что вставка работает быстрее, а запросы ускорились до 5800 раз. И это при удешевлении железа в 10 раз, более гибкой модели данных и полной поддержке SQL.
DudeTx: Durable Transactions Made Decoupled
Эта теоретическая статья рассказывает о японской разработке DudeTx. Авторы стремились соединить лучшее в подходах UNDO и REDO. При этом новая концепция опирается на возможности NVM (non-volatile memory).
Who Contributed to PostgreSQL Development in 2018?
Роберт Хаас (Robert Haas)
опубликовал подсчеты — свои и Стивена Фроста (Stephen Frost) — вклада в PostgreSQL за 2018 год. В номинации «авторство патчей» лауреаты упорядочены по числу строк кода:
Рейтинг | Разработчик | Общее число строк | Вклад в % | Число патчей |
---|---|---|---|---|
18 | Александр Коротков | 2671 | 1.07 | 24 |
20 | Анастасия Лубенникова | 2345 | 0.94 | 2 |
22 | Антон Быков | 2118 | 0.85 | 2 |
24 | Никита Глухов | 1890 | 0.76 | 5 |
Автором примерно четверти всех новых строк кода является Том Лейн.
В номинации «деятельность коммитеров» из России только два коммитера, и оба из Postgres Professional:
Рейтинг | Разработчик | Общее число строк | Вклад в % | Число коммитов |
---|---|---|---|---|
3 | Фёдор Сигаев | 13646 | 11.28 | 44 |
9 | Александр Коротков | 2345 | 1.94 | 15 |
Стоит отметить, что Александр Коротков стал коммитером только в середине 2018 года, так что эти результаты он успел набрать за полгода.
Третья номинация — это «активность в переписке hackers» (порог >100 писем). В top мастеров эпистолярного жанра вошли:
Разработчик | Число писем |
---|---|
Александр Коротков | 301 |
Дмитрий Долгов | 226 |
Константин Книжник | 223 |
Андрей Бородин | 159 |
Фёдор Сигаев | 152 |
Артур Закиров | 111 |
Сергей Корнилов | 106 |
На этом все. До новых встреч!
Подписывайтесь на канал postgresso!
Идеи и пожелания присылайте на почту: news_channel@postgrespro.ru
Предыдущие выпуски: #12, #11 (спец), #10, #9, #8, #7, #6, #5, #4, #3, #2, #1
Автор: Igor_Le