Postgresso №7 (56)

33f7da2165ac3bfb7c8ef2f0fe36bc84.jpg

Конференции, битва за Ибицу

PGConf.СПб 2023

PGConf впервые пройдёт 25 сентября в Санкт-Петербурге. Конференция будет называться PGConf.СПб 2023. Место — Отель «Коринтия», Невский проспект., д. 57.

Регистрация открыта и заявки принимаются. Подать заявку можно в личном кабинете. Количество тем не ограничено.

PGConf.Сибирь 2023

Пройдёт на площадке Город ИТ 9-го сентября в Томске. Программа еще формируется, но общая канва известна: кроме собственно технической конференции по PostgreSQL, там будет:

  • пленарное заседаниес обсуждением IT-бизнеса региона,

  • тематические экспертные секции,

  • бизнес секции (региональный ИТ-бизнес),

  • Воркшопы для тимлидов и менеджеров,

  • Город IT Students (секции для молодых IT предпринимателей),

  • сертификация от Postgres Professional по администрированию PostgreSQL,

  • (Last but not least?) Afterparty (позиционируется как самая угарная вечеринка томского it-сообщества).

Зарегистрироваться на мероприятие можно уже сейчас. Участие в конференции доступно всем посетителям ГОРОД IT.

Добавлю, не могу удержаться: деревянный квартал Томска — это чудо света, я был очень впечатлён. И вообще город симпатичный.

PerfConf — конференция по нагрузочному тестированию

Эту конференцию уже в 9-й раз проводит «Перфоманс Лаб». Программа пока не объявлена, известно, что будет 3 площадки — онлайн, главная сцена и деловая гостиная, и что будут докладывать Александр Иванов (Яндекс), Татьяна Спиридонова (Ozon), что Андрей Зубков будет рассказывать о pg_profile/PWR, а Павел Толмачёв о том, как работает оптимизатор PostgreSQL на больших запросах (оба Postgres Professional). Конференция пройдет 13 сентября в Москве.

PGConf NYC 2023

Пройдёт в октябре. Недавно опубликована полная программа, в ней вступительное слово Энди Павло (Andy Pavlo), выступления Брюса Момджана (Bruce Momjian), Райана Буза (Ryan Booz), Клэр Джордано (Claire Giordano) и других.

pgday.uk 2023

Это первый пи-джи-дей в Соединённом Королевстве. Теперь будет проводиться каждый год в Лондоне. Ближайший — 12-го сентября, но программа уже известна. Выступят, например, Магнус Хагандер (Magnus Hagander, Redpill Linpro) с What’s new in PostgreSQL 16 и Томаш Вондра (Tom Vondra, EDB) с BRIN improvements and new opclasses. Регистрация здесь.

PASS Data Summit 2023 Sessions

Это мероприятие с MS-уклоном, поэтому много SQL Server, Power BI и Azure, но постгресовые доклады тоже есть. Например:

Есть в огромном списке и хорошо знакомые фамилии, но нам показались любопытными эти темы.

PGMeetup: 1С на Postgres Pro

Митап (вебинар) прошёл 26-го июля и вызвал немалый интерес. Видео и слайды можно посмотреть здесь. Там два доклада общей длительностью полтора часа. Первый:

Константин Сумкин, ИТ-директор Софтлайн Аутсорсинг:

  • Анализ конфигурации Postgres для решаемых задач. Внедрение различных сборок Postgres Pro для баз 1С;

  • Анализ запросов и кода 1С при переходе и внедрении Postgres Pro с различных СУБД;

  • Анализ быстродействия систем на базе СУБД Postgres Pro с использованием 1С: Корпоративный инструментальный пакет 8;

  • Возможности платформы 1С, начиная с версии 23, по миграции данных без выгрузки в *.dt;

  • План-фактный анализ переходов баз 1С с различных СУБД на Postgres Pro.

Второй — Андрей Забелин, старший технический консультант Postgres Professional:

  • Возможности Postgres Pro для платформы 1С

  • Сжатие данных

  • Резервное копирование и восстановление

  • Отказоустойчивость и катастрофоустойчивость

  • Производительность 1С на Postgres Pro

И очень много вопросов и ответов.

А также:

PGIbiza 2023: Postgres and Ecosystem

Но с ней не всё просто. Казалось бы, на Ибице есть всё, чтобы поработать и расслабиться последовательно или одновременно (насколько помню, там даже доклады на пляже). Но всплыл старый конфликт между Альваро Эрнандесом (Álvaro Hernández Tortosa) и старейшинами (Core Team) PostgreSQL. Поскольку есть риск многое истолковать неправильно, напомним предысторию. Альваро не рейдер, попытавшийся захватить торговые марки PostgreSQL. Он революцьонэр.

История началась ещё в 2021-м. В Postgresso 37 мы писали:

В абзаце Trademark Dispute речь об улаженном конфликте с Альваро Эрнандесом (Álvaro Hernández Tortosa). Торговые марки торговыми марками, но Альваро вообще-то критиковал команду сразу по нескольким вопросам, особенно ему не нравилась непрозрачность решений.

А в Postgresso 34 и вовсе много о революционности Альваро: он озаботился гендерным и расовым балансом (мол, в руководстве слишком высок % белых ЦИС-гендерных мужчин, нужны квоты). Большинство было против хотя бы по последним пунктам по принципу «не буди лихо, пока оно тихо» (почитайте комментарии под воззванием Альваро).

Желающие могут составить собственное мнение, причитав претензии сторон. Хронологически в 2023 это:

Есть ощущение, что эта вспышка сойдёт (или уже сошла) на нет, не омрачив это нестандартное сборище на Ибице.

Вкладчики

Список Вкладчиков — не денег, а строк кода в PostgreSQL обновился. Объявлено о новоприбывших:

Титул Major Contributors получили:

  • Жюльен Руо (Julien Rouhaud, VMWare) — хорошо знаком нам по конференциям PGDay.Russia;

  • Стейси Хейслер (Stacey Haysler, PGX);

  • Стив Сингер (Steve Singer, сам по себе).

Титул Contributors, тоже немало знакомых:

  • Аджин Чериан (не уверен в произношении — Ajin Cherian, Fujitsu);

  • Александр Кукушкин (Alexander Kukushkin, MS Citus);

  • Александр Лахин (Alexander Lakhin, теперь ?);

  • Дмитрий Долгов (Dmitry Dolgov, Zalando?);

  • Хоу Жиджи (не уверен — Hou Zhijie, Fujitsu);

  • Илья Космодемьянский (Ilya Kosmodemiansky, Data Egret);

  • Мелани Плейджман (Melanie Plageman, VMWare);

  • Михаэль Банк (Michael Banck, credativ);

  • Майкл Брюер (Michael Brewer, Franklin College of Arts and Sciences)

  • Пауль Юнгвирт (Paul Jungwirth, Illuminated Computing);

  • Питер Смит (Peter Smith, Fujitsu);

  • Вигнешваран Си (Vigneshwaran C, Fujitsu).

Активность Fujitsu впечатляет, не правда ли?

Деньги: Ligand Pro и Neon

Разработчик главной российской СУБД строит за полмиллиарда ИИ, в разы ускоряющий создание лекарств

CNews обнародовала не только планы по созданию стартапа, которой называется Ligand Pro (ООО «Лиганд про»), но и то, что 2023-м уже вложено 100 млн руб. Платформа будет построена на глубоком машинном обучении и реализована на Python с использованием библиотек PyTorch и JAX.

Учредители: сколтеховские Дмитрий Иванков (гендир, биолог, 18%),  Иван Оселедец(специалист по ИИ, 15%), Александр Шапеев (прикладной математик, 12%), Марина Пак (0%) с одной стороны, и Олег Бартунов,  Иван Панченко,  Федор Сигаев,  Антон Сушкевич и Андрей Флейта (все по 10%) со стороны Postgres Professional.

Об этом написал и Коммерсантъ:

Искусственный интеллект, который генерирует неизвестные человеку вещества

Замгендира PostgresProfessional Иван Панченко прокомментировал этот проект так: Ligand Pro — социально значимый отечественный проект, который положительно скажется на имидже российского научного сообщества на мировой арене, даст новый виток развитию фармацевтической отрасли и повысит доступность лекарств для потребителей. Мы рады помочь в этом деле.

Neon raises $46 Million to advance serverless PostgreSQL database for the AI era

О стартапе Neon мы и так нередко писали, но одну существенную новость пропустили: в круге первом Neon уже поднял примерно такую же сумму. Все инвестиции вместе уже составляют $104 млн. Новая порция получена благодаря Menlo Ventures, а участвуют в финансировании Founders Fund,  General Catalyst,  GGV Capital,  Khosla Ventures,  Snowflake Ventures и Databricks Ventures.

В новости на VentureBeat есть и любопытные технические подробности. Neon рассчитывает на успех в облаках для разработчиков, им ведь бессерверные базы очень нужны. Но другое важное направление продвижения — базы для хранения векторов эмбеддингов. У Neon есть своя разработка — расширение pg_embedding: в отличие от уже популярного расширения pgvector, неоновское даёт эффективный поиск по векторам и использует более современные алгоритмы — например, индекс HNSW. Гендир — Никита Шамгунов (Nikita Shamgunov) — уверяет, что против pgvector ничего не имеет, а общий враг (ок, конкурент) это Сосновая шишка —  Pinecone — и другие специализированные под вектора современные базы.

Кстати, вот заметка Рауфа Чебри (Raouf Chebri) и Дэниэла Прайса (Daniel Price) коротенькая, и не всё из неё ясно [?], хотя есть наглядная схема, иллюстрирующая эту довольно своеобразную архитектуру:

Introducing Same-Region Read Replicas to Serverless Postgres

Ясно, что реплики в понимании Neon не совсем реплики — данные не реплицируются так, как это делается обычно в Postgres. Это просто экземпляры (инстансы). Их дело вычислять запросы, передавать и получать данные, а сами данные хранятся в хранилищах, управляемых Pageserver, а за согласованностью следят Savekeepers.

Образование

PostgreSQL 14 Internals

Англоязычная PostgreSQL 14 Internals теперь доступна для печати по требованию на lulu.com. Ссылки на странице книги. UPD: Егор говорит, что меньше чем за месяц заказали уже 38 книжек.

1 и 2 места пока наши.

  1. POSTGRES: The First Experience Author: Pavel Luzanov, Egor Rogov, Igor Levshin (translated by Liudmila Mantrova)

  2. PostgreSQL 14 Internals. Egor Rogov

  3. PostgreSQL — Architecture et notions avancées. Guillaume Lelarge, Julien Rouhaud

Англоязычный курс «Introduction to PostgreSQL» обновлен до 15-й версии СУБД

Двухдневный курс Introduction to PostgreSQL обновили до 15 версии СУБД. Бесплатная программа разработана отделом образования Postgres Professional и включает вводную информацию по PostgreSQL. Познакомиться с курсами на русском языке можно на сайте в разделе Образование.

Заодно:

10 Postgres tips for beginners

Это не просто советы начинающим. Это советы, которые даёт Николай Самохвалов (Postgres.ai, DBLab, Postgres.FM и YouTube-версия). И это советы не совсем начинающим. В недавнем пятничном обсуждении с Майклом Кристофайдесом (Michael Christofides, pgMustard) их закидали вопросами, поэтому Николай решил развить тему.

В предисловии он философствует: PostgreSQL это не очередная база данных. Это больше, чем база, это система с возможностями, которые могут изменить ваш подход к работе с данными.

По каждому пункту есть пояснение из нескольких абзацев, где почти всегда можно найти что-то нетривиальное. А самое, быть может, полезное — не сами короткие советы, а ссылки под каждым на соответствующее пятничное обсуждение. Вот эти 10 пунктов:

  1. Поймите как можно раньше: кортежи это физические версии строк.

  2. EXPLAIN ANALYZE — всегда с BUFFERS!

  3. UI кроме pgAdmin.

  4. Логирование: настройте ASAP.

  5. Наблюдайте за происходящим (observability), пользуясь расширениями pg_stat_statements и другими.

  6. Воспользуйтесь клонированием (ветвлением) баз при разработке, используя DBLab.

  7. Убедитесь, что контрольные суммы включены.

  8. Настройте автовакуум для быстрого исполнения.

  9. Настройте конфигурацию для оптимизации запросов.

  10. Поддержка индексов: необходимый опыт.

Ретро

Импортозамещение, которое мы потеряли: советские языки программирования и их создатели — часть 1 (1950-е — 1960-е)

Это не пропаганда, а заинтересованное изложение Д.М. Смирновым из ЕАЕ-Консалт не всем известных вещей. В 50-х это «программирующая программа», она же ПП-1, APL (советский, адресный язык программирования), Алексей Ляпунов, Екатерина Ющенко и Владимир Королюк; в 60-х — Рефал Валентина Турчина.

Имеет ли это отношение к базам данных? Косвенное. Зато у того же автора есть часть II, которая почему-то появилась раньше этой части I:

Импортозамещение, которое мы потеряли (ч.2): АСУ ТП по телеграфному кабелю, нейронные сети и РСУБД в 60-х:

В 1961-м году на ЭВМ «Киев» реализовали первую советскую систему управления базами данных реляционного типа — »Автодиректор». Система позволяла сохранять данные в виде таблиц, которые были записаны на электронный магнитный носитель. Концептуальным «отцом» «Киева» был Сергей Алексеевич Лебедев.

Старина JSON и «Json будущего» (то есть pgvector)

Basics of JSON — можно было бы отнести в раздел Образование, это туториал с обучающими интерактивными примерами, всё в браузере. На самом деле там больше JSONB, чем JSON. Тема раскрывается довольно широко — там и операторы → →> и @@, и современная нотация (как у массивов), и об индексах btree и gin. И объясняются неочевидные эффекты при конвертации типов. Мне очень понравилось, молодцы Crunchy Data.

JSON vs JSONB in PostgreSQL

Житель Вероны — Франческо Тизьё (Francesco Tisiot, Aiven) решил сравнить эти типы. А что сравнивать? Почти по всем критериям jsonb удобней. Из сводной таблички в конце это тоже следует. У Франческо есть серия статей по JSON.

pgvector: Fewer dimensions are better

Уже сочинили и бенчмарк для pgvector. Пишут авторы из Supabase — Грег Ричардсон (Greg Richardson), Оливер Райс (Oliver Rice), Егор Романов (Egor Romanov). А на полмесяца раньше Егор писал на эту тему — pgvector 0.4.0 performance — с Павлом Борисовым (Pavel Borisov, тоже в Supabase).

Да, забыл пояснить: JSON будущего это отсюда.

В гонку включился Timescale:

PostgreSQL as a Vector Database: Create, Store, and Query OpenAI Embeddings With pgvector

Они даже анонсируют некий Timescale Vector: The fastest ANN search for vector embeddings on PostgreSQL.

Облачники включают pgvector в свои пакеты. Один за другим:

(NO)VACUUM

PostgreSQL: No More VACUUM, No More Bloat

Это об OrioleDB пишет Александр Коротков. Более того: в этой неистово маркетинговой статье есть такой подзаголовок: The Engine of the Future. Но есть и некоторые детали грубыми мазками: чтобы решить проблемы распуханий, в «движке будущего» реализованы undo-логи и на уровне строк, и на уровне блоков. Кроме того есть автоматическое слияние страниц.

Интересная и «критическая» часть статьи, где Александр описывает ужасы вакуума (The Terrifying Tale of VACUUM). Александр упоминает неудачи из-за вакуума и статью Рика Брэнсона 10 things I Hate In Postgres (альтернативная ссылка).

О ней мы писали в Postgresso 31 — там есть целый раздел Самокритика. Этот вопрос обсуждался и на незабываемых ruPostgres.Вторниках Николая Самохвалова и Ильи Космодемьянского. Тогда гостем был Андрей Зубков, а вторник так и называется — s02e15: Десять проблем PostgreSQL. Мониторинг запросов, pg_profile.

Статья очень известная: ещё раньше, в Postgreso 20 мы писали об этой статье, но тогда выделили другой мрачноватый вывод: масштабируемость процессов всё лучше и лучше с каждым мажорным релизом. Но в конце концов есть жесткий предел производительности, обусловленный архитектурой Postgres в сравнении с тем же MySQL с его один тред на соединение — тема, которая сейчас живо обсуждается (а об этом мы писали в прошлом выпуске).

Вакуум настолько больная тема, что компания pganalyze представляет даже специальный инструмент, который подсказывает оптимальные настройки на уровне отдельных таблиц:

Introducing the New pganalyze VACUUM Advisor for Postgres

А Роберт Хаас (Robert Haas) в статье Updating the Cost Limit On The Fly рассказывает, как теперь, после патча Мелани Плейджман (Melanie Plageman) можно влиять на автовакуум настройками стоимостей.

Миграция

Мигрируем в PostgreSQL, тестируем OLAP-кубы и разбираемся с валидацией T-SQL-кода: три доклада с митапа ЮMoney

Видеозаписи и главные мысли — по мотивам апрельского онлайн-митапа High SQL по работе с данными в DWH на Microsoft SQL Server.

  • Станислав Флусов (из Monopoly Online) поделился опытом, который получила их компания за три года миграции приложений из MS SQL в PostgreSQL.

  • Артём Коршунов (ЮMoney) рассказал об инструментах BI, сравнил два парсера TSQL (ANTLR и DacFx) и показал, как написать простейший валидатор.

  • Лена Сухих (ЮMoney) рассказала, как её команда тестировала OLAP-кубы и что из этого получилось

My Oracle to PostgreSQL Migration: The 7 Tools That Made It Possible

Вот они, эти семеро, о которых пишет Оудед Вейлин (Oded Valin, EverSQL):

  1. Ora2Pg

  2. AWS Database Migration Service (DMS)

  3. pgLoader

  4. Foreign Data Wrappers (FDW)

  5. pg_dump, pg_restore and additional built-in PG features

  6. EverSQL, for Post Migration Tuning

  7. Npgsql

По каждому пункту есть За и Против.

Кроме того обсуждаются неприятности миграции:

  1. Differences in SQL Syntax and Functionality

  2. Transaction Behavior

  3. Case Sensitivity

  4. Sequences and Auto-Incrementing

  5. 5. Data Types

  6. NULLы и пустые строки

  7. Date and Time Types

Ora2Pg 24.0

Ora2pg уже не совсем Ora: в этой версии официально добавлена возможность миграции и с SQL Server. Загрузить можно с гитхаба Жиля Дароля (Gilles Darold).

PostGIS и велосипедисты

PostGIS, ArcGIS Enterprise and the Tour de France route

Флориан Надлер (Florian Nadler, Cybertec) для прокладывания маршрута гонки использует PostgreSQL 14.5 + PostGIS 3.2, Ubuntu 22.04.02 и ESRI ArcGIS Pro 3.1.2. А ещё ArcGIS Pro ST_Geometry Libraries (PostgreSQL) с myesri.com. Ну и главный источник — Tour de France 2023: GPX (cyclingstage.com). Автора очень волнуют этапы, где большие и крутые подъёмы.

Флориан, кстати, публиковал и статью по авиаперевозкам и MobilityDB: Analyzing historical flight data with MobilityDB. К этой теме мы неравнодушны: демонстрационная база нашего Отдела образования тоже авиационная. А MobilityDB обсуждалась не раз в докладах на PGConf.Russia — Управление данными подвижных объектов с MobilityDB (2021), например.

На сегодня самая свежая версия PostGIS — 3.4.0rc1.

Пятнеца #11 Буза и протоПятнецы Шона

Райан Буз молодец: не даёт забыть о своей затее. По его календарю PGSQL Phridays очередь была за Томашем Гинтовтом (Tomasz Gintowt, Real-Time Data Team), и он предложил очень интересную и актуальную тему: #011 — partitioning vs sharding in PostgreSQL.

Поэтому откликнулись многие. Пересказывать не буду, вот ссылки:

Райан молодец, но мне каждый раз как-то даже немного обидно за Шона Томаса (Shaun Thomas, сейчас Postgres High Availability Performance Architect, EDB). Ведь его Пятнецы тоже были хороши. Например PG Phriday: Around the World in Two Billion Transactions. Или:

The Do’s and Don’ts of Postgres High Availability Part 1: Great Expectations; Part 2: Architecture Baseline; Part 3: Tools Rules.

А вот это ещё 2022:

PG Phriday: Do«s and Don«ts of Postgres High Availability Q&Aи PG Phriday: Defining High Availability in a Postgres World.

А это ещё в 2021:

High Availability, PostgreSQL, and more: The Return of PG Phriday — возрождение его Пятнец в рамках EDB.

На сегодня всё.

© Habrahabr.ru