Иван Панченко: «PostgreSQL совершенствуется, и 1С тоже идет навстречу»

10.02.2023     

На конференции Infostart Event 2022 редакция Инфостарта пообщалась с заместителем генерального директора Postgres Professional Иваном Панченко. Иван рассказал о том, как опыт совместного использования PostgreSQL и 1С повлиял на развитие этой открытой СУБД. И поделился соображениями, почему PostgreSQL смог стать самой перспективной СУБД для стартапов.

 

 

Сотрудничество фирмы «1С» и Postgres Professional сложилось давно. И сейчас так получилось, что PostgreSQL осталась единственной СУБД, которая поддерживается для 1С. Какие планы у вашей компании относительно этого сотрудничества?

Да, наше сотрудничество началось еще даже раньше, чем мы сформировались как компания. Postgres Professional основана в 2015-м году, а фирма «1С» начала поддерживать PostgreSQL где-то с 2010 года.

Оказалось, что это провидческое решение, потому что с каждым годом на PostgreSQL переходили все больше и больше компаний. И если несколько лет назад на PostgreSQL было около 10% от всех инсталляций 1С, то сейчас, я думаю, уже треть.

Использование PostgreSQL растет. Это связано с тем, что и сам он совершенствуется, начинает лучше работать с 1С. И 1С тоже идет навстречу, и тоже лучше работает с PostgreSQL. Особенно в последних версиях.

Сейчас пользователям 1С доступно несколько сборок PostgreSQL: ванильная, дистрибутивы, публикуемые 1С, и коммерческие продукты, в том числе ваш. Какие преимущества дают сборки Postgres Pro по сравнению с дистрибутивами из сервиса «Обновление программ»?

Наша компания выпускает продукт Postgres Pro, который имеет Standard и Enterprise-версии. Enterprise-версия Postgres Pro очень сильно отличается от обычного опенсорсного PostgreSQL, потому что там есть несколько важных фич, которые очень важны, в том числе, для 1С.

Прежде всего, это дисковая компрессия, о которой в своих докладах уже несколько раз рассказывал Антон Дорошкевич. Она позволяет 1С-ные базы сократить в несколько раз. Он говорил о том, что базу можно ужать до 7 раз. Понятно, что и ввод-вывод тоже за счет этого уменьшается. Поэтому все работает еще быстрее.

Там есть инкрементальный бэкап. И есть 64-разрядный счетчик транзакций, который позволяет полностью избежать проблемы, связанные с переполнением этого счетчика – так называемый Wraparound. Это если говорить об Enterprise версии.

Также у нас на сайте есть сборка свободного PostgreSQL с патчами для 1С. Она отличается от того, что выложено на портале 1С – там более оптимальные настройки для того, чтобы все работало «из коробки».

 

 

У Postgres Professional есть опция платной сервисной поддержки. Можете рассказать о преимуществах этой подписки, зачем покупать отдельный сервис?

Мы рекомендуем приобретать Postgres Pro Enterprise, где лицензии идут с сервисной поддержкой. Там для 1С – льготные цены, это обойдется в несколько раз дешевле, чем для не 1С. Поэтому самое выгодное и простое – брать Enterprise-версию, потому что голая поддержка Postgres стоит практически столько же, сколько с Enterprise-версией. А что касается сути самой поддержки, то как известно, из закона Мерфи следует, что каждая программа содержит как минимум один баг. Когда этот баг обнаруживается, возникает вопрос – кто его исправит?

Исправить баг могут только разработчики – те, кто умеет разрабатывать. Эти люди умеют также и исправлять ошибки, и они могут сделать это быстро. Практически все основные разработчики PostgreSQL, которые есть в России, работают в нашей компании. Они могут исправить любую ошибку. Поэтому быстрый доступ к фиксам и профессиональную консультацию высокого уровня по сколь угодно сложным проблемам можно получить только у тех, кто связан с разработкой продукта. А это – как раз компания Postgres Professional.

 

 

Вы на докладе рассказывали о возможностях 14-й и 15-й версии PostgreSQL. Какие преимущества есть в этих версиях для использования с 1С?

По поводу 15-й версии у нас пока не так много материалов по ее тестированию на реальных кейсах. Она еще должна пройти процедуру одобрения в фирме «1С».

Но что касается 14-й версии, там есть очень много оптимизаций. Например, в докладе я рассказывал про оптимизацию, связанную с тем, что не растет индекс сильно при массовых апдейтах одной и той же записи. Раньше индекс рос весьма заметно. Еще есть несколько оптимизаций, связанных с планировщиком, с сортировкой больших таблиц. Лучше посмотреть весь мой доклад, я сейчас не могу все пересказать.

Судя по отзывам, которые мы получаем от пользователей, с каждой версией PostgreSQL в среднем работает все быстрее и быстрее. К сожалению, скорость работы базы данных очень сильно зависит от того, какая нагрузка, какая конкретно прикладная система работает с базой. Поэтому нельзя сказать, что PostgreSQL работает на 20-30% быстрее. У всех результат будет свой.

У некоторых может быть он даже медленнее будет работать, особенно, когда вы еще не поняли, какие настройки нужно менять в связи с тем, что вы поставили новую версию. Но со временем вы разберетесь с настройками, а разработчики, опять же, могут исправить какие-то баги, и новая версия точно окажется быстрее предыдущей.

 

Доклад Ивана Панченко «Новое в 14-й и 15-й версиях Postgres».

 

Сейчас очень актуальна проблема перехода на PostgreSQL, миграции с MS SQL. Есть ли существующие сценарии для такого перехода, отработанные инструменты, методики?

Тут нужно поблагодарить платформу 1С, потому что для прикладного разработчика совершенно не важно, с какой базой он работает. Все эти вопросы решаются на уровне платформы. Миграция выглядит так – выгрузил базу в dt-ник, загрузил его обратно в другую базу. Вот и все.

Другое дело, что после этого могут потребоваться какие-то настройки, связанные с производительностью. Но опыт такой работы в сообществе 1С уже накоплен. Есть люди, которые хорошо владеют этим, делятся на конференциях. Много есть и в документации.

Так что технически процедура миграции для 1С очень проста – те, кто работают не на платформе 1С, здесь завидуют тем, кто работает на платформе 1С.

Тем не менее при типовом переходе люди сталкиваются с необходимостью доработки запросов, с потерями производительности. Какие вы можете дать рекомендации – на что нужно обратить внимание?

В PostgreSQL есть общепринятое стандартное средство анализа производительности запросов. Например, есть логирование длинных запросов, с помощью которого можно легко узнать, какие запросы у вас исполняются долго. Посмотреть на них с точки зрения SQL, понять, чего им не хватает.

Вы можете использовать средство сбора статистики (о нем был доклад у Екатерины Соколовой), которое позволяет в реальном времени анализировать исполняющийся запрос – смотреть, в какой стадии он сколько времени проводит, где он сейчас находится, далеко ли он вообще до завершения.

Такие средства есть. Их много. Важно, что вам, 1С-никам повезло. У вас хорошая платформа, она решает за вас большую часть проблем. Миграция сравнительно безболезненна по сравнению с тем, что испытывают другие люди, у которых нет платформы 1С. Вам действительно повезло.

 

 

Люди, которые привыкли работать с MS SQL, привыкли к определенному уровню удобства интерфейса, к тому, что все инструменты находятся в единой экосистеме, а в сообществе PostgreSQL очень много консольных утилит, написанных разными авторами, и в основном приходится собирать весь этот пазл самостоятельно.

Это действительно так. Это связано с глубокими философскими отличиями PostgreSQL от MS SQL. Потому что PostgreSQL создавался как свободно распространяемый продукт сообщества. А MS SQL – это продукт, который создавался коммерческой компанией для того, чтобы продавать. Это разный путь. С другой стороны, PostgreSQL не мог бы быть другим. Будь он другим, он не был бы PostgreSQL, был бы еще один MS SQL.

Поэтому – да, никуда не денешься, он такой. Но есть компании, вроде нашей, которые работают над тем, чтобы пользователям стало лучше. В частности, мы разрабатываем средство, которое позволит облегчить администрирование. Я бы не сказал, что будет как у MS SQL. Будет по-другому. Мне кажется, что лучше. Но с этим подождем до следующей конференции Инфостарта. Пока еще этот продукт не готов для показа публике.

Когда ваша компания получила дополнительный спрос, связанный с импортозамещением, это как-то сказалось на необходимости расширения, масштабирования самой компании?

Наша компания действительно растет. Но прежде всего, нужно сказать, что переход с MS SQL, с Oracle на PostgreSQL – это не только наше российское импортозамещение. Это вообще мировой технологический тренд. Во всем мире сейчас все больше и больше новых компаний начинают делать свои продукты именно на PostgreSQL. Если вы поищете стартапы, которые начали работать с Oracle или MS SQL, вы таких не найдете. Все берут PostgreSQL или какие-то другие нереляционные базы. Но из реляционных баз выбирают именно PostgreSQL. Большая часть компаний.

А в чем причина? В бурном росте и развитии возможностей СУБД?

Причина в том, что, во-первых, PostgreSQL как свободный софт имеет низкую стоимость масштабирования, что крайне важно для стартапов. Во-вторых, он по своему технологическому уровню вполне достиг того, что нужно людям от Oracle и MS SQL. В большинстве случаев он им не уступает.

Можно посмотреть на то, что очень крупные компании достаточно давно используют PostgreSQL в качестве основной базы. Известно, например, что биллинг такой крупной системы как Skype изначально был создан на PostgreSQL, и он до сих пор, по-видимому, на PostgreSQL.

Компания Microsoft, между прочим, тоже является одним из разработчиков PostgreSQL. В частности, предоставляет PostgreSQL в своем облаке.

В Китае существует самый крупный в мире чат, который называется WeChat. Его биллинг тоже крутится на PostgreSQL. Того, что хватило WeChat, и того, что хватило Skype, точно хватит для вашей бухгалтерии.

 

 

Мне кажется, главная сложность перехода на PostgreSQL для 1С в том, что те запросы, которые исполнялись без проблем на MS SQL (например, обращение к срезу последних в регистре сведений), требуют переработки для адаптации.

Некоторые запросы – да. Но как рассказывают наши пользователи-1С-ники, с каждым годом проблем все меньше и меньше. Я все-таки смотрю на это оптимистично, думаю, что все это можно преодолеть.

Мы активно работаем над этим. Мы получаем довольно много фидбека от пользователей, в частности, от пользователей 1С. И делаем некие оптимизации в нашем планировщике запросов специально по запросам, которые приходят к нам от 1С-ников.

Довольно много изменений было сделано именно нашими российскими разработчиками в компании Postgres Pro, многие из которых попали потом и в опенсорсный PostgreSQL. И инициаторами этих изменений (генераторами этих проблем) как раз были именно случаи с 1С.

Поэтому – да, мы над этим работаем. И важно, что и со стороны фирмы «1С» тоже есть определенный прогресс в сторону PostgreSQL. По мере того как все больше и больше народу им пользуются, разработчики платформы 1С понимают, что это для них – важная СУБД.

И если в первые годы они учитывали совместимость с PostgreSQL по остаточному принципу, то в последние несколько лет фирма «1С» тоже предпринимает очень много усилий, чтобы запросы, которые генерирует платформа, были лучше адаптированы к PostgreSQL. Т.е. это путь, по которому мы идем навстречу друг другу.

 

https://infostart.ru/events/


Автор:
Виктория Дорохина Аналитик


Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. quazare 3800 10.02.23 18:05 Сейчас в теме
Очень странно читать про «стартапы» и применение в них posgresql. A как же MariaDB (MySql)

Какое соотношение применения баз данных mysql и postgresql сейчас?
2. kns77 103 10.02.23 21:00 Сейчас в теме
Думаю профессионально начат изучать продукт, после оракла мне это надеюсь буде не слишком сложно. Сейчас пару клиентов работа.т на нем, вроде неплохо.
3. als315 13.02.23 09:24 Сейчас в теме
Там для 1С – льготные цены, это обойдется в несколько раз дешевле, чем для не 1С

Было бы интересно посмотреть на статистику странички сайта, на которой про цену написано - пишите, узнавайте. Какой процент уходит с этой страницы, не запросив цену. Внятная стоимость лицензирования, конфигураторы лицензий - это очень важно. Уже достали компании, которые первым делом задают вопрос - "А какой у вас бюджет внедрения?"
user891207; Darklight; megaauto; tazhitkov; +4 Ответить
4. PVM007 64 13.02.23 13:07 Сейчас в теме
(3) Добрый день! Цены на продукт открыты и зафиксированы. Ознакомиться с ними Вы можете по ссылке: https://infostart.ru/public/1389860/
5. siamagic 13.02.23 13:42 Сейчас в теме
Ох уж этот постгрес ....что 5 лет назад не лежал рядом с мс что сейчас не лежит. Инструментов действительно много, но толку от них когда мс из коробки отлично работает и применяя все инструменты такого для 1с вы не добейтесь.

Ну оно всё в мире линукса так сделано. Ничего не работает номрально но есть костыль(инструмент)
6. als315 14.02.23 08:58 Сейчас в теме
(4) Спасибо, хотя было бы логичнее видеть цены на сайте компании, как минимум - ссылку на эту страничку.
Еще хотелось бы получить если не конфигуратор лицензий, то подробное описание лицензирования.
Что нам нужно купить: серверная лицензия + клиентские? Cерверная лицензия + лицензии на ядра сервера? Только клиентские лицензии? Совмещены ли эти лицензии с лицензиями 1С? Являются ли клиентские лицензии конкурентными? Если они конкурентные, есть ли возможность какие-то лицензии жеско закрепить за пользователями?
Было бы неплохо привести пару примеров лицензирования с разными вариантами. Например: Один 2-х процессорный сервер с 12 ядрами в каждом процессоре + 100 клиентов, из них одновременно подключаются 40. Два таких же сервера в кластере + 200 клиентов, из них 60 одновременно.
Что входит в техподдержку:
переход на новую версию в течение срока?
сколько часов в месяц (год)?
это телефонные консультации или удаленная настройка сервера покупателя?
i132; mapt; +2 Ответить
7. mixsture 22.02.23 14:16 Сейчас в теме
А с какой версии постгреса не придется переписывать части конфигурации под него? Вот, имхо, главный вопрос.
Оставьте свое сообщение
Видеозаписи всех дней и потоков:
101 доклад с презентациями спикеров