- PVSM.RU - https://www.pvsm.ru -
Мы продолжаем знакомить вас с самыми интересными новостями по PostgreSQL.
Релиз-кандидат PostgreSQL 12
В релизе-кандидате [1] вся функциональность идентична грядущему официальному релизу. Если вновь выявленные и недоисправленные баги будут закрыты в срок, то официальный релиз выйдет 3 октября. По сравнению с PG 12 beta 4 исправлено несколько багов, в основном связанных с ECPG [2] — SQL, встраиваемом в C. Релиз-кандидат доступен [3].
Очередной коммитфест завершился
Напомним, что сентябрьский коммитфест [8] перешел в фазу Closed. Это значит, что новые патчи в него [8] не могут быть добавлены. Следующий, ноябрьский коммитфест [9] в фазе Open. Он активно заполняется.
Pgpool-II 4.0.6
Вышли также версии [10] 3.7.11, 3.6.18, 3.5.22 и 3.4.25. Среди новшеств есть изменение поведения shutdownall
: теперь он ждет завершения работы Pgpool-II. Исправлено много багов. Об изменениях можно прочитать здесь [11].
dbForge Studio for PostgreSQL 2.2
Не далее как вчера вышел этот релиз [12] со встроенным SQL форматтером, Generate Script AS CREATE for Source objects, поддержкой PostgreSQL 12 и другими изменениями (см. по ссылке).
Ajqvue 3.0
В новой версии [13] этой графической среды для работы с различными СУБД переделаны библиотеки JRE в соответствии с новыми версиями Java. Теперь можно выбирать директорию для JDBC-драйверов для JAR-файлов. Все библиотеки, имеющие отношение к работе с базой, обновлены и протестированы с PostgreSQL 11. Про Ajqvue можно прочитать здесь [14].
PGXN Client 1.3
Это написанный на Python клиент [15] к PostgreSQL Extension Network [16], то есть к он-лайновой библиотеке опен-сорсных расширений, где можно найти, например, citus 8.3.0 или PostgreSQL_Anonymizer 0.3.0.
pgAdmin 4 v 4.13
В последней версии 46 исправленных багов и добавленных пунктов. Среди изменений:
Gather Merge, Named Tuple Store Scan
и Table Function Scan
;В предыдущей версии были добавлены:
Подробности последней версии здесь [17]. Пакеты для Windows, macOS, Python Wheel, Docker Container, а также исходные коды в тарболах уже доступны [18].
PostGIS 3.0.0beta1
Этот релиз [19] уже рассчитан на работу с (или, в кулинарной лексике авторов: «лучше всего подавать с») PostgreSQL 12RC1 и GEOS 3.8.0beta1, но работает с PostgreSQL не древнее 9.5 и GEOS начиная с версии 3.6.
Отличия [20] от вышедшей чуть больше месяца назад beta4: ускорена, например, конверсия геометрических типов в/из GEOS. Напомним, что по сравнению с 2.x изменения серьёзные: вся растровая функциональность вынесена в отдельное расширение.
temboard 4.0
Вышла новая версия temboard, утилиты управления и мониторинга PostgreSQL, которую поддерживает Dalibo. Инструкции по установке здесь [21], а почитать можно на этой странице [22].
pg_probackup 2.1.5
В версии pg_probackup 2.1.5 (разработчик — Postgres Professional) появились новые возможности: теперь метаданные обновляются каждые 10 секунд в процессе бэкапа, поэтому можно следить за его выполнением. Раньше метаданные обновлялись только при старте и окончании бэкапа; SSH-соединение закрывается после передачи всех файлов данных. Документацию к последней версии можно [23] найти на GitHub.
barman 2.9
Менеджер бэкапа и восстановления barman (2ndQuadrant), обзавёлся [24] нативной поддержкой PostgreSQL 12 и теперь конфигурировать PITR надо по-другому (некоторые подробности здесь [25]). А вывод можно теперь получить в форме JSON для удобной интеграции со специализированными средствами мониторинга.
pg_dumpbinary 1.0
Вышел первый официальный релиз этой программы [26] Жиля Дароля (Gilles Darold). Она использует команду SQL COPY для дампа в двоичном формате. Восстановление происходит с прилагающейся утилитой pg_restorebinary
. pg_dumpbinary
полезна, когда:
pg_dump
, так как общий объем в представлении escape/hex превысит 1ГБ;pg_dump
не справится с этой ситуацией.Slony 2.2.8
Старейший инструмент репликации (работает на триггерах) теперь поддерживает [27] PostgreSQL 12. slonik
конфигурируется не совсем как раньше, о чем можно прочитать в файле документации [28]. Исправлены ошибки. Скачивать слонов можно отсюда [29].
PgBouncer 1.11.0
Главная новость — поддержка SCRAM-аутентификации. Также этот пулер соединений научился работать с GSSENCRequest, появившимся в PostgreSQL 12. Подробнее в чейнджлоге [30]. Ссылка для скачивания здесь [31].
pg_partman 4.2.0
В этой версии [32] появилась (предварительная) поддержка PostgreSQL 12. Теперь pg_partman по-другому работает с нелоггируемыми секциями (партициями). Если секция создана как нативная и у нее статус UNLOGGED, то этот статус не меняется [33] в соответствии с изменением статуса родительской таблицы, как было раньше. Еще разработчиком (то есть Crunchy Data) объявлено [34], что, как только выйдет официальная версия PG12, поддержка PostgreSQL 9.4 будет прекращена. Чейнджлог здесь [35], скачать можно отсюда [36].
pgBadger 11.1
Эта версия [37] популярного анализатора логов Жиля Дароля считается минорной, но кроме исправлений багов, накопившихся за 3 месяца, в ней [38] есть и новое:
--month-report
включает режим ежемесячных инкрементальных отчетов.pgCluu 3.0
На острове Бали, где проходила конференция PGConf.Asia (о чем ниже), была представлена 3-я версия pgCluu — утилиты, написанной на Perl, расшифровывающейся как PostgreSQL Cluster Utilization и претендующей на полный аудит PG-кластера. В этой версии [39] отчеты по заданным промежуткам времени теперь можно получать в режиме CGI (фича проходит бета-тестирование), а в пакетах Debian этот режим установлен уже по умолчанию. Другая новость — инкрементальный режим отчетов. Есть новое в конфигурировании и в опциях. Автор всё тот же — опять Жиль Дароль [40].
cryptokey
Брюс Момжан (Bruce Momjian) пишет [41] в своем блоге о том, что 9 месяцев назад начал разрабатывать расширение, которое будет контролировать работу криптографического расширения pgcrypto в Postgres. И вот инструмент, который он назвал pgcryptokey, готов к бета-тестированию. В нем двухуровневое шифрование: для использования криптоключей нужен пароль. Ключей может быть несколько, их можно ротировать и уничтожать. Пароль передается от клиента на сервер без появления в текстовом виде внутри SQL-запросов.
ldap2pg 5.0
Новая версия утилиты, для синхронизации ролей и привилегий PG и LDAP-совместимых каталогов. Для конфигурирования используется файл в формате YAML. Относительно версии 4.0: появилась поддержка PG 9.3, 9.4, улучшилась совместимость с Active Directory и RDS, появился официальный имидж-файл для Docker. Об изменениях есть в чейнджлоге [42].
Postgre Pro Enterprise появилась в облаках Яндекс [43] и Azure [44]. В обоих случаях предлагаются версии 11.x.x. В каталоге Яндекс-облака всего две СУБД. В Ажуре Postgres Pro Enterprise 11 среди многих и многих.
PostgreSQL 12: A Few Special-Case Performance Enhancements
Статья в блоге 2ndQuadrant. Речь идет [45] о TOAST, конвертации float
в text
, распараллеливании запросов на уровне изоляции SERIALIZABLE.
Why you need plpgsql_check
В своем блоге Павел Штехуле (Pavel Stehule) рассказывает [46] о своем расширении plpgsql_check [47], которое умеет анализировать исходный код PL/pgSQL. Павел показывает, как, используя plpgsql_check_function()
, валидировать SQL-идентификаторы; как его расширение работает профайлером; как оно сообщает о причинах плохой производительности, в том числе советует поменять VOLATILE на IMMUTABLE, когда это возможно. plpgsql_check
еще и помогает с защитой от SQL-инъекций. А plpgsql_show_dependency_tb()
разбирается в зависимостях.
Блокировки в PostgreSQL: 4. Блокировки в памяти
Егор Рогов (Postgres Professional) завершил [48] серию статей про блокировки. В этой статье есть ссылки на предыдущие статьи этой серии. Другие его серии на Хабре ищите здесь [49].
pgBackRest to Backup PostgreSQL
В блоге Cybertec по шагам расписано [50], как установить, сконфигурировать, настроить серверы PostgreSQL, чтобы запустить бэкап под управлением pgBackRest. В том числе дифференциальный бэкап.
OLTP workload performance improvement in Greenplum 6
На сайте Greenplum выложили графики [51] производительности на OLTP версии 6 на фоне версии 5. Разница впечатляет. Революционные изменения связывают с переходом на ядро 9.4(!), что помогло оптимизировать блокировки;
Есть и абзац о будущих планах.
Compute day working hours in PL/pgsql
Заметка [52] Луки Феррари (Luca Ferrari), пропагандиста open source и человеческого существа (так он представляет сам себя в блоге), предлагает его вариант задачки, ставшей своеобразным конкурсом в рассылке [53] pgresql-general
. Там предлагалось посчитать рабочие часы, используя PL/pgsql. Решение Луки не самое короткое, но настраиваемое.
Managing High Availability in PostgreSQL – Part III: Patroni
Мадан Кумар (Madan Kumar) из ScaleGrid разбирает плюсы/минусы [54] и тестирует Patroni, делает выводы по HA. А до этого, в ч.I и ч.II разбирал Corosync/Pacemaker [55] и repmgr [56]. Он в том числе ухитряется загнать Patroni в состояние split brain
(оставаясь в целом сторонником этих кластеров).
Time series данные в реляционной СУБД.
Расширения TimescaleDB и PipelineDB для PostgreSQL
Олег Бунин предлагает [57] послушать доклад руководителя отдела разработки в «Первой Мониторинговой Компании» Ивана Муратова о том, как получить полноценную темпоральную БД, установив в Postgres два этих расширения. Доклад с уклоном в обработку данных и аналитику time series
в экосистеме PG, без сторонних решений.
Cloud Vendor Deep-Dive: PostgreSQL on Google Cloud Platform (GCP)
В блоге Severalnines Вьёрель Табара (Viorel Tabara) рассказывает [58] об этом облачном Postgres, довольно своеобразном. Из серверных языков есть PL/pgSQL, но есть и гугловский интерфейс — Cloud SQL, который рекомендуется использовать при написании приложений. Некоторые возможности отключены из-за соображений безопасности: superuser недоступен, некоторые параметры нельзя менять. Некоторые расширения Postgres поддерживаются, некоторые — нет. О совместимости с классическим Postgres есть отдельная главка. Также рассказывается о построении HA-кластеров, о репликации и бэкапе, о многом другом.
Setting up PostgreSQL 12 Beta 3 for Testing in Amazon RDS
Джигнеш Шах (Jignesh Shah), которого многие запомнили по конференции PGConf.Russia 2019, рассказывает [59], как подготовить PostgreSQL 12 к работе в облаках RDS.
Advanced SQL — window frames
Большая статья [60] Михаля Конарски (Michał Konarski) из Стокгольма. Он пишет про оконные функции, останавливаясь на особенностях режимов ROWS, GROUPS и RANGE.
Using “Row Level Security” to make large companies more secure
Ханс-Юрген Шёниг (Hans-Jürgen Schönig) в блоге Cybertec разбирает [61] RLS на примерах из жизни.
Comparing Distributed SQL Performance – Yugabyte DB vs. Amazon Aurora PostgreSQL vs. CockroachDB
Производительность этих трех баз сравнивают [62] люди заинтересованные: представители проекта Yougabyte – базы, «построенной под впечатлением Google Spanner» и совместимой (с исключениями) с Postgres. Но данные интересные.
Time series данные в реляционной СУБД. Расширения TimescaleDB и PipelineDB для PostgreSQL
Иван Маратов в колонке Олега Бунина на хабре советует забыть об InfluxDB и обо всех темпоральных БД, если есть PostgreSQL с расширениями TimescaleDB и PipelineDB. Речь в основном об аналитике прямо в экосистеме PostgreSQL.
New version of PostgreSQL Anonymizer and more...
Это не формальная сводка багов и фич, а развернутая статья о том, зачем нужен анонимайзер Postgres и на что он способен. Проект [63], затеянный год назад Дамьеном Клошаром (Damien Clochard), взяла под крыло Dalibo. Дамьен рассказывает [64], например, как и при помощи чего в новой версии делать анонимный дамп; как надевать на данные маску, на которую разные роли реагируют по-разному, и еще много интересных вещей.
PGConf.Asia на Бали
Эта уже вторая «пляжная» конференциия в этом сезоне (первая — на Ибице), прошла 8-9 сентября. Предыдущие PGConf.Asia [65] проходили в Токио. Нынешнюю открывал заместитель губернатора Бали, его сменил министр связи и информации Индонезии.
Из России прилетел зам. ген. дира Postgres Professional Иван Панченко и рассказал о том, какие проблемы решают разработчики Postgres в наши дни, когда конкурировать приходится уже на рынке индустриальных СУБД. Программу можно изучить на этой странице [66]. Деловая часть пляжной конференции была вполне насыщенной: многие из релизов, представленных выше, были обнародованы именно на этой конференции.
PostgresConf South Africa 2019
8-9-го октября эта конференция пройдет [67] в Йоханнесбурге. В программе [68] есть хорошо нам знакомые докладчики (Ханс-Юрген Шёниг, например), но много и новых имен.
PostgreSQL Conference Europe 2019
Конференция, на которой выступит немало докладчиков живущих в России, или родом из России, пройдет [69] 15-18 октября в Милане. В программе двое из Data Egret, двое из Zalando, по одному из credativ и JetBrains и аж четверо из Postgres Professional.
pgDay Santiago 2019
Эта конференция [70], организована чилийской юзергруппой PostgreSQL. Она пройдет 29 октября. Спонсоры 2ndQuadrant и Vigigo.
PGConf.Сибирь 2019
11-12 ноября в Красноярске состоится [71] третья региональная конференция PGConf.Сибирь 2019. Участие бесплатное, но нужна регистрация [72] на сайте. Заявки на доклады принимаются [73] до 10 октября.
2Q PGConf 2019
Эта конференция пройдет [74] 4-5-го декабря в Чикаго.
PgConf.Russia 2020
Как и в прошлом году, на Экономфаке МГУ в Москве состоится [75] PgConf.Russia 2020 (3-5 февраля). Регистрация [76] открыта. Сейчас программа еще формируется, а заявки на доклады принимаются [77] до 10 декабря.
PGConf India 2020
Пройдет [78] 26-28 февраля в Бангалоре.
Nordic PGDay 2020
Нордический PGDay состоится в Хельсинки 24-го марта. Заявки можно присылать [79] до последних дней сего года.
pgDay Paris 2020
В конце марта, 26-го в Париже, состоится [80] еще одна конференция – День Постгреса.
Сертификация Postgres, запущенная в мае этого года, набирает обороты. Теперь можно получить сертификат «Администратор PostgreSQL 10. Эксперт», но для этого нужно уже иметь сертификат «Администратор PostgreSQL. Профессионал» и сдать три теста – DBA2-10 (настройка и мониторинг PostgreSQL), DBA3-10 (резервное копирование и репликация PostgreSQL) и QPT-10 (оптимизация запросов). Подробности [81] можно прочитать на сайте компании Postgres Professional.
Подготовиться помогут курсы. Сейчас выложены [82] и общедоступны все видеоуроки по курсам
Курс по оптимизации — PostgreSQL 10. Оптимизация запросов — доступен в виде слайдов, демо и ответов на вопросы.
Также стали полностью доступны все видео курсов "Основы технологий баз данных [87]" Бориса Асеновича Новикова, доктора физико-математических наук, профессор департамента информатики Высшей школы экономики в Санкт Петербурге.
The Art of PostgreSQL
Вышло 2-е издание книги Mastering PostgreSQL in Application Димитри Фонтейна. Теперь книга [88] называется The Art of PostgreSQL. В новом издании новая глава целиком посвящена PostgreSQL-расширениям. Написана эта глава автором команды CREATE EXTENSION.
Идеи и пожелания присылайте на почту: news_channel@postgrespro.ru
Предыдущие выпуски: #16 [90], #15 [91], #14 [92], #13 [93], #12 [94], #11 (спец) [95], #10 [96], #9 [97], #8 [98], #7 [99], #6 [100], #5 [101], #4 [102], #3 [103], #2 [104], #1 [105]
Автор: Igor_Le
Источник [106]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/postgresql/331910
Ссылки в тексте:
[1] релизе-кандидате: https://www.postgresql.org/about/news/1975/
[2] ECPG: https://postgrespro.ru/docs/postgrespro/11/ecpg
[3] доступен: https://www.postgresql.org/download/
[4] здесь: https://www.postgresql.org/developer/beta/
[5] относительно: https://www.postgresql.org/docs/12/static/release-12.html
[6] Open Issues: https://wiki.postgresql.org/wiki/PostgreSQL_12_Open_Items#resolved_before_12rc1
[7] сообщить: https://www.postgresql.org/account/submitbug/
[8] коммитфест: https://commitfest.postgresql.org/24/
[9] ноябрьский коммитфест: https://commitfest.postgresql.org/25/
[10] версии: http://pgpool.net/mediawiki/index.php/Downloads
[11] здесь: http://www.pgpool.net/docs/latest/en/html/release-4-0-6.html
[12] этот релиз: http://blog.devart.com/standardize-your-sql-code-with-dbforge-studio-for-postgresql-2-2.html
[13] новой версии: https://github.com/danap/ajqvue
[14] здесь: http://ajqvue.com/docs/Release/readme.html
[15] клиент: https://github.com/pgxn/pgxnclient/releases/tag/v1.3
[16] PostgreSQL Extension Network: https://pgxn.org/
[17] здесь: https://www.pgadmin.org/docs/pgadmin4/dev/release_notes_4_13.html
[18] уже доступны: https://www.pgadmin.org/download/
[19] Этот релиз: https://postgis.net/2019/09/28/postgis-3.0.0beta1/
[20] Отличия: https://git.osgeo.org/gitea/postgis/postgis/raw/tag/3.0.0beta1/NEWS
[21] здесь: https://github.com/dalibo/temboard
[22] странице: https://temboard.readthedocs.io/en/master/
[23] можно: https://postgrespro.github.io/pg_probackup
[24] обзавёлся: https://www.pgbarman.org/barman-2-9-released/
[25] здесь: https://www.pgbarman.org/barman-2-9-released/#release-notes
[26] программы: https://github.com/darold/pg_dumpbinary
[27] теперь поддерживает: http://www.slony.info/
[28] в файле документации: http://main.slony.info/downloads/2.2/source/slony1-2.2.8-docs.tar.bz2
[29] отсюда: http://www.slony.info/downloads/2.2/source/slony1-2.2.8.tar.bz2
[30] чейнджлоге: https://pgbouncer.github.io/changelog.html#pgbouncer-111x
[31] здесь: https://pgbouncer.github.io/2019/08/pgbouncer-1-11-0
[32] версии: https://github.com/pgpartman/pg_partman
[33] не меняется: https://www.postgresql.org/message-id/flat/15954-b61523bed4b110c4%40postgresql.org
[34] объявлено: https://www.postgresql.org/about/news/1964/
[35] здесь: https://github.com/pgpartman/pg_partman/blob/master/CHANGELOG.txt
[36] отсюда: https://github.com/pgpartman/pg_partman#installation
[37] версия: https://github.com/darold/pgbadger/blob/master/ChangeLog
[38] в ней: https://github.com/darold/pgbadger/releases/
[39] этой версии: https://github.com/darold/pgcluu
[40] опять Жиль Дароль: http://www.darold.net/
[41] пишет: https://momjian.us/main/blogs/pgblog/2019.html#August_31_2019
[42] чейнджлоге: https://dali.bo/ldap2pg_changelog_5_0
[43] Яндекс: https://cloud.yandex.ru/marketplace/products/f2e0bp8j5ot2hgqcnf4f
[44] Azure: https://azuremarketplace.microsoft.com/en-us/marketplace/apps/postgres-pro.postgres-pro-enterprise-11?tab=Overview
[45] Речь идет: https://www.2ndquadrant.com/en/blog/pg12-a-few-special-case-performance-enhancements/
[46] рассказывает: http://okbob.blogspot.com/2019/08/why-you-need-plpgsqlcheck-if-you-write.html
[47] plpgsql_check: https://github.com/okbob/plpgsql_check
[48] завершил: https://habr.com/ru/company/postgrespro/blog/466199/
[49] здесь: https://habr.com/ru/users/erogov/posts/
[50] расписано: https://www.cybertec-postgresql.com/en/pgbackrest-to-backup-postgresql/
[51] выложили графики: https://greenplum.org/oltp-workload-performance-improvement-in-greenplum-6/?fbclid=IwAR0Jq9XrIf8mQNGInGAUsQsHKhEB4oRWU9GvMeSyHcMB2jnbdkyzHzK6WfA
[52] Заметка: https://fluca1978.github.io/2019/08/30/postgresql_working_hours.html
[53] в рассылке: https://www.postgresql.org/message-id/20190827222741.GB19306%40panix.com
[54] разбирает плюсы/минусы: https://scalegrid.io/blog/managing-high-availability-in-postgresql-part-3/
[55] разбирал Corosync/Pacemaker: https://scalegrid.io/blog/managing-high-availability-in-postgresql-part-1/
[56] repmgr: https://scalegrid.io/blog/managing-high-availability-in-postgresql-part-2/
[57] предлагает: https://habr.com/ru/company/oleg-bunin/blog/464303/?fbclid=IwAR2naQY--aEKEbC-nPGIjtjNNAWq6Cpv7gHsw5QVudvX4CUJBd5vpk_MobU
[58] рассказывает: https://severalnines.com/database-blog/cloud-vendor-deep-dive-postgresql-google-cloud-platform-gcp
[59] рассказывает: http://jkshah.blogspot.com/2019/08/setting-up-postgresql-12-beta-3-for.html
[60] статья: https://mjk.space/advances-sql-window-frames/
[61] разбирает: https://www.cybertec-postgresql.com/en/using-row-level-security-to-make-large-companies-more-secure/
[62] сравнивают: https://blog.yugabyte.com/comparing-distributed-sql-performance-yugabyte-db-vs-amazon-aurora-postgresql-vs-cockroachdb/
[63] Проект: https://gitlab.com/dalibo/postgresql_anonymizer
[64] рассказывает: https://blog.taadeem.net///english/2019/09/23/new_version_of_PostgreSQL_Anonymizer_and_more
[65] Предыдущие PGConf.Asia: https://www.pgconf.asia/EN/
[66] странице: https://2019.pgconf.asia/#program
[67] пройдет: https://postgresconf.org/conferences/SouthAfrica2019
[68] программе: https://postgresconf.org/conferences/SouthAfrica2019/schedule/events
[69] пройдет: https://2019.pgconf.eu/
[70] конференция: https://www.pgday.cl/2019/
[71] состоится: https://pgconf.ru/201911
[72] регистрация: https://pgconf.ru/login?go=/user/201911
[73] принимаются: https://pgconf.ru/login?go=/user/201911/presentations
[74] пройдет: https://www.2qpgconf.com/
[75] состоится: https://pgconf.ru/2020
[76] Регистрация: https://pgconf.ru/login?go=/user/2020
[77] принимаются: https://pgconf.ru/login?go=/user/2020/presentations
[78] Пройдет: http://pgconf.in/
[79] присылать: https://2020.nordicpgday.org/cfp/
[80] состоится: http://2020.pgday.paris/
[81] Подробности: https://postgrespro.ru/education/cert
[82] выложены: https://postgrespro.ru/education/courses
[83] DBA1: https://postgrespro.ru/education/courses/DBA1
[84] DBA2: https://postgrespro.ru/education/courses/DBA2
[85] DBA3: https://postgrespro.ru/education/courses/DBA3
[86] DEV1: https://postgrespro.ru/education/courses/DEV1
[87] Основы технологий баз данных: https://postgrespro.ru/education/university/dbtech
[88] книга: https://theartofpostgresql.com/
[89] postgresso: https://t.me/postgresso
[90] #16: https://habr.com/ru/company/postgrespro/blog/456790/
[91] #15: https://habr.com/ru/company/postgrespro/blog/445544/
[92] #14: https://habr.com/ru/company/postgrespro/blog/436352/
[93] #13: https://habr.com/ru/company/postgrespro/blog/434760/
[94] #12: https://habr.com/company/postgrespro/blog/428275/
[95] #11 (спец): https://habr.com/company/postgrespro/blog/426745/
[96] #10: https://habr.com/topic/edit/422527/
[97] #9: https://habr.com/company/postgrespro/blog/420283/
[98] #8: https://habr.com/company/postgrespro/blog/415675/
[99] #7: https://habr.com/company/postgrespro/blog/413419/
[100] #6: https://habr.com/company/postgrespro/blog/358560/
[101] #5: https://habr.com/company/postgrespro/blog/353736/
[102] #4: https://habrahabr.ru/company/postgrespro/blog/351650/
[103] #3: https://habrahabr.ru/company/postgrespro/blog/349100/
[104] #2: https://habrahabr.ru/company/postgrespro/blog/347858/
[105] #1: https://habrahabr.ru/company/postgrespro/blog/345652/
[106] Источник: https://habr.com/ru/post/466065/?utm_source=habrahabr&utm_medium=rss&utm_campaign=466065
Нажмите здесь для печати.