27 лет с Postgres — от разработчиков-первопроходцев до крупнейшего вендора СУБД в России
Свободное ПО (СПО, open source) - важная составная часть отечественных информационных технологий. О том, как создается российская open source индустрия, и о «российском следе» в мировом сообществе СПО TAdviser рассказал Олег Бартунов, генеральный директор компании Postgres Professional.
О начале пути в open source
TADVISER: Олег, по образованию и роду деятельности вы не являетесь ИТ-профессионалом. Что послужило тем «спусковым крючком», который задал траекторию вашего профессионального пути в области СУБД и в мире свободного ПО?
ОЛЕГ БАРТУНОВ: Да, я астроном, продолжаю заниматься наукой, и по сию пору являюсь научным сотрудником Государственного астрономического института им. П.К. Штернберга (ГАИШ), одного из научных подразделений МГУ им. М.В. Ломоносова. Но вся моя профессиональная жизнь прошла рука об руку с информационными технологиями, так как астрономия - это в первую очередь наблюдения, работа с данными. В начале 90-x я работал в университете UCSC в городе Санта-Круз, США, где местные астрономы мне рассказали про технологию баз данных и сильную научную группу по базам данных профессора Майкла Стоунбрейкера, создателя СУБД Ingres, которые работали над новым проектом, СУБД Postgres. Я был поражен, насколько эти разработки подходят для моих задач после того, как стал использовать Ingres, вместо написания своих небольших баз данных для каждой задачи. Когда в 1995 году Postgres был отдан в open source под именем Postgres95, я уже активно его использовал, в рассылке нас было тогда меньше 400 человек, и фактически это было американское сообщество. В том числе – известные сегодня постгрессисты - Ян Вик и Брюс Момджян.
Надо сказать, что опенсорс-сообщество продемонстрировало хорошую организованность: быстро подняли свои сервера с системой версионирования ПО и т.д. Я быстро перешел на PostgreSQL - так стал называться опенсорсный Postgres, и начал использовать его в своей работе. Это был момент бурного развития Postgres, и так получилось, что я оказался в самом эпицентре событий.
О российском следе в мировом сообществе Postgres
TADVISER: После возвращения в Москву сотрудничество не прервалось?
ОЛЕГ БАРТУНОВ: Вернушись в Москву, я стал использовать PostgreSQL для подработки. Например, создал базу данных для PointJob, одного из первых полностью цифровых хедхантерских агентств в России. А проект создания цифрового архива «Учительской газеты» стал, как потом оказалось, важнейшим шагом в моей Postgres-эволюции. Это было, в целом, революционное событие для 1996 года – создание цифрового архива газеты с полнотекстовым поиском. И тут выяснилось, что база данных Postgres не поддерживает кириллицу и показывает пользователю «кракозябру» вместо букв. Раньше я на это не обращал внимания, потому что в научных разработках русским языком не пользовался. А тут осознал, что там используется ASCII — 7-разрядный стандарт кодировки символов, а для работы с кириллицей мне тогда была нужна восьмибитовая кодовая страница КОИ-8R. Что делать?
Я применил один из главных принципов опенсорса, который гласит: если чего-то не хватает, сделай это сам. А потом поделись с другими. Так что, пара недель работы – и я это сделал, а созданный патч раздал друзьям в стране, чтобы они также могли использовать русскоязычные тексты в Postgres. И они же предложили поделиться этим патчем с международным сообществом.
TADVISER: Сообщество оценило?
ОЛЕГ БАРТУНОВ: Сообществу, которое в те годы было, в основном, англоязычное, честно говоря, это было не нужно, но принцип открытости сыграл свою роль. Я смог их убедить, что локализация будет способствовать тому, что Postgres станет доступным гораздо большему количеству людей. В общем, этот маленький патч приняли. Это был самый маленький патч в моей жизни. Но, как выяснилось потом, он был самым важным моим патчем в Postgres, потому что с ним Postgres стал реально международным и им начали активно пользоваться в России, Германии, Японии, других странах.
TADVISER: Это была не только русификация?
ОЛЕГ БАРТУНОВ: Конечно. Я сделал поддержку интернационализации в виде, как это было сделано в Linux, то есть внес необходимые изменения в код Postgres для работы с locale, которая описывает правило сортировки символов языка: какие символы являются буквами, а какие разделителями, и разные другие параметры. Некоторый опыт в этом плане у меня уже был – примерно в то же время я принимал участие в интернационализации языка Perl, работал вместе с Ларри Уоллом, создателем этого языка. Тот мой маленький патч, по сути, реализовал поддержку системной локализации. Потом японец Татсуо Ишии добавил поддержку мультибайтных кодировок, и Postgres стал по-настоящему всемирным. Но были и проблемы.
Дело в том, что появление поддержки локалей снизило производительность некоторых операций с текстами в несколько раз, так как вместо стандартного вызова системной функции сравнения строк strcmp надо было использовать более медленную функцию strcoll, которая учитывала текущую locale. И надо отдать должное сообществу Postgres - важнейшим приоритетом для него стала доступность для людей по всему миру, нежели производительность. Когда появилась необходимость поддержки юникода, это также привело к увеличению размеров базы данных. Но, понимая важность стандартизации, пошли и на это. Впоследствии, конечно, производительность улучшили за счет дальнейших доработок.
На мой взгляд, самое главное: в сообществе Postgres понимают, насколько важно продукту быть максимально доступным для всех. Именно это позволило Postgres вырасти из маленькой локальной базы университета, крошечного американского англоязычного сообщества в международное сообщество. Я горжусь тем, что стоял в начале этого процесса, хотя тогда, конечно, не отдавал себе этом отчета.
Кстати, в 2000 году меня пригласили стать акционером первой постгресовой компании Great Bridge – это была первая попытка делать коммерцию на опенсорсе. Там работали все ведущие разработчики Postgres, в частности, Том Лейн, Ян Вик и Брюс Момджян. Но бизнес не взлетел, потому что Postgres еще не был базой данных уровня Enterprise. Задумка была хороша, но опередила свое время, поэтому компания просуществовала всего год.
О знаковых проектах Postgres в России
TADVISER: Это уже стало основной деятельностью?
ОЛЕГ БАРТУНОВ: Нет.
TADVISER: От звезд отказаться трудно?
ОЛЕГ БАРТУНОВ: Конечно! Звезды - это работа всей жизни. А вечерами, после работы на кухне занимался Postgres-ом. Как и было принято в то время в опенсорсе, бесплатно. Более того, я в глаза не видел тех, с кем я работаю, - все общение шло по почте. Это была такая ламповая атмосфера опенсорса, которой мне иногда очень не хватает сейчас: темно, ребенок спит, на кухонном столе горит лампа, и я переписываюсь с Postgres-разработчиками. Кстати, с тех самых времен кухонный стол – мое любимое рабочее место. Тем временем уже начало зарождаться российское сообщество пользователей Postgres. Вот тогда я, пожалуй, окончательно прочувствовал суть открытого сообщества: ты что-то сделал сам, и вот уже коллеги из сообщества этим пользуются. Пишут письма, если что-то не работает, и ты начинаешь общаться с сообществом. Причем, я четко ощутил разницу между лицензией GPL и BSD-подобной лицензией, принятой в Postgres.
GPL предполагает свободу в использовании, модифицировании ПО, но свои результаты ты обязан отдать сообществу под той же лицензией. А в Postgres лицензия такая, что можно использовать, модифицировать, распространять ПО и при этом закрыть разработку, оставить ее только у себя. Это дает возможность разработчикам использовать свой код в коммерческих приложениях, фактически строить бизнес. Мой мозг «прошился» более системным подходом к опенсорсу. Представляете? Я работаю в России, но при этом меня знают во всем мире, люди используют те хорошие вещи, которые я сделал, и это ко мне когда-нибудь вернется. Наверное, это резонировало с традиционными религиозными верованиями калмыков – буддизмом. И хотя я современный ученый, я осознаю позитивную действенность кармы: если делаешь что-то хорошее, оно тебе обязательно вернется.
TADVISER: Какие знаковые Postgres-проекты в России Вы отметите?
ОЛЕГ БАРТУНОВ: Один из серьезных шагов распространения Postgres в России – создание портала научных новостей. К этой идее меня подтолкнул старший сын, которому я рассказывал о пользе интернета. На тот момент не было ресурсов, где специалисты могли бы сами рассказывать о своей научной работе понятным языком, и была строгая научная модерация, потому что для неподготовленного читателя нет хуже смеси нормальных научных статей и «жареных фактов».
Так получилось, что и в жизни, и в работе многое из того, что я делаю, это делаю для себя, а потом это становится нужным и другим, и кое-что перерастает в большие общественные дела. Я договорился с друзьями из разных научных направлений - астрономии, математики, физики, геологии, биологии и т.д. – о том, что мы будем обмениваться новостями через центральный портал для научных новостей Nature.ru. Авторами новостей были сами научные сотрудники, все материалы проходили модерацию научных редакторов. В основу нашей технологии - она называлась Discovery – была положена база данных Postgres. Наш проект в виде распределенной редакции научных новостей был поддержан грантом РФФИ. Кстати, один из сайтов Научной Сети до сих пор существует – это портал об астрономии Астронет.
О нашем новостном проекте узнали основатели «Рамблера», с которыми я был знаком по Пущино, где я снимал квартиру, и они захотели сделать всероссийский новостной портал, который сможет обслуживать миллионы посетителей в день. Я самонадеянно ответил, что, конечно же, смогу это сделать, ведь я очень люблю такие вызовы, и мы ударили по рукам с инвестором. Так получилось, что я и мои друзья, мои сегодняшние коллеги по Postgres Pro – Иван Панченко, Федор Сигаев – стали работать над порталом «Рамблера». Так что у нас проверенная временем сплоченная команда Postgres-разработчиков.
Тогда – в начале 2000-x «Рамблер» входил в пятерку ведущих сайтов мира с миллионами посещений в день. Были информационные поводы типа гибели подводной лодки «Курск», пожара на Останкинской башне, которые провоцировали резкие пики нагрузок, и «Рамблер» эти пиковые нагрузки выдержал. То есть Postgres их выдержал.
TADVISER: Инвестор «Рамблера» легко согласился использовать малоизвестную СУБД Postgres?
ОЛЕГ БАРТУНОВ: Инвестор спрашивал: может, сделаем портал на СУБД Oracle? Как в лучших европейских домах? Он даже приглашал экспертов PricewaterhouseCoopers провести аудит технологий «Рамблера». Postgres этот аудит прошел на отлично, я и коллеги еще дополнительно консультировали этих специалистов по особенностям данной СУБД.
И вот за что я особенно благодарен «Рамблеру», так это за то, что нам не запрещалось делиться разработками, сделанными для этого проекта, с сообществом Postgres. И мы с Федором Сигаевым приобрели такую известность в сообществе, что нам предложили сделать два ключевых доклада на первой международной конференции разработчиков PostgreSQL в Торонто в 2006 году и даже оплатили поездку.
Это была первая международная конференция постгреcиcтов, когда за 10 лет совместной работы все развиртуализировались и увидели друг друга в реальной жизни, а не в электронной переписке. Пожалуй, с этого момента следует отсчитывать наше совсем уже профессиональное включение в Postgres.
О создании российской коммерческой версии Postgres
TADVISER: Когда реально начался свой «российский путь» Postgres?
ОЛЕГ БАРТУНОВ: Российские разработчики Postgres были в числе лидеров сообщества с самого начала, включая Вадима Михеева из Красноярска, который входил в состав первого управляющего комитета Postgres. Поэтому «российский путь» берет начало от истоков, с 1996 года. А, уже начиная с 2000-х, стало активно формироваться именно российское сообщество Postgres. Я активно выступал на конференциях, опыт «Рамблера» звучал убедительно.
Postgres открыл нам дорогу в большой мир опенсорса. Мы там выросли, повзрослели, прониклись этой идеологией. Мы не просто сидели в России, а на волне развивающихся интернет-технологий работали по всему миру и со всем миром. Вот тогда в середине нулевых я уже начал понимать, что нам в России не хватает своей базы данных.
Oracle и Microsoft SQL на роль лидера СУБД в России, на мой взгляд, не годились. Политика этих компаний предполагала, что они выращивают в России потребителей и пользователей, но не разработчиков СУБД. А мне всегда казалось, что правильно иметь своих разработчиков СУБД, в советское время существовало больше десятка своих СУБД. К сожалению, перестройка привела к потере научных команд, разрабатывать свои СУБД стало некому, и единственным быстрым и эффективным способом создания своих технологий стал опенсорс, в частности Postgres. Опыт использования Postgres в разных больших проектах показал, что эта СУБД может очень хорошо справляться с самыми разными задачами. А поскольку это опенсорс, значит, такие решения доступны любому научному институту, любой некоммерческой компании. Да, и хорошие коммерческие системы стали появляться: Avito, газета «Из рук в руки», Яндекс и другие стали использовать Postgres.
И вот несколько лет я с энтузиазмом бегал по министерствам, правительствам с этой идеей. Выступал на конференциях, рассказывал, как нам создать мощную отечественную СУБД. Помню, еще в 2011 году на одной из крупных представительных ИТ-форумов убеждал уважаемых участников, что единственный эффективный путь – это взять Postgres и присоединиться к большому опенсорсному проекту. Поскольку отечественная школа по технологии баз данных была утрачена, начинать путь с нуля – это значит потерять огромное количество времени без гарантии получения результата. Самое правильное – воспользоваться тем, что есть в доступе прямо сейчас, внедрить туда своих разработчиков, обогатиться опытом и на базе Postgres создавать свою, российскую базу данных. Мир ведь активно развивается, идет вперед, и пока мы будем создавать на коленке собственную школу, он продвинется еще дальше. Однако, несмотря на то, что к моему предложению все относились положительно, реальной помощи я не получил.
TADVISER: И карма настигла?
ОЛЕГ БАРТУНОВ: Я понял, что придется самому создавать компанию для разработки российской СУБД. Хотя я, конечно, научный сотрудник, и статус бизнесмена никогда особо не привлекал. Но сработал принцип, о котором я уже рассказывал: если что-то нужно, сделай сам. Кроме того, друзья давно убеждали, что пора преобразовать мое увлечение в нечто более серьезное. Решающим фактором стало рождение дочери и необходимость обеспечить будущее семьи. Так что карма меня настигла, да. Принялся организовывать компанию.
Кстати, вначале я хотел работать по найму, используя свою экспертизу и идеи одновременно и для работы внутри коммерческой компании, и для обогащения опенсорса. Но оказалось, что все хотят получить собственную закрытую разработку. А меня эти переговоры лишь укрепили в уверенности, что я хочу развивать российский Postgres не только ради денег, но и для развития в России индустрии СУБД-строения. Я хотел быть независимым, а не придворным разработчиком в какой-нибудь компании. К этому времени мы сделали в Postgres поддержку ормата бинарного хранения JSONB и стали еще более известными в сообществе Postgres. Я хотел создать компанию, которая выполняла бы роль буфера между коммерческими заказчиками и международным сообществом: с одной стороны, использовать все наработки сообщества для крупных клиентов, а с другой – отдавать в сообщество то, что было нами разработано для коммерческих заказчиков, плюс оказывать техническую поддержку PostgreSQL в России.
И тут цепочка контактов привела к встрече с нынешним инвестором Антоном Сушкевичем. Он тоже пребывал в похожем состоянии: искал людей и идеи, чтобы сделать хороший и полезный для общества проект. И опять карма - мы встретились и буквально за пять минут договорились. Это было зимой 2014 года.
СУБД Postgres Pro в контексте конкуренции на российском рынке СУБД
TADVISER: Почему Вы были уверены в успехе задуманного? Есть, например, опыт компании «Релэкс», которая тоже начинала с Postgres, имела амбиции, но не смогла стать лидирующей СУБД российского масштаба и возглавить импортозамещение в области СУБД?
ОЛЕГ БАРТУНОВ: Знаете, слово «импортозамещение» мне никогда не нравилось, потому что имеет негативную окраску – заместить что-то. Это сразу ставит в позицию отстающего. А мы по своей натуре не догоняющие, а лидеры, поэтому говорить нужно не об импортозамещении, а о технологической состоятельности страны.
На самом деле, российских поставщиков СУБД на нашем рынке немало. Потому что ниш для специализации достаточно. Некоторые из них ориентированы только на свои внутренние сервисы, как, например, Сбербанк. Некоторые занимаются тем, что называется переклейкой шильдиков. И даже умудряются со своим продуктом попасть в реестр отечественного ПО. Там сейчас таких штук восемь Postgres под разными названиями. И, кстати, в свободном постгресовом мире они имеют право на жизнь, наше сообщество положительно относится к коммерческим СУБД, являющимся модификациями Postgres, так как такие проекты обычно являются хорошими друзьями сообщества – помогают проводить конференции, делятся своими наработками, привлекают в сообщество дополнительных пользователей. Однако совсем другое дело, когда в коммерческой СУБД на основе Postgres новым фактически является только название и какие-то дополнительные опенсорсные утилиты без какого-либо значительного вклада в сообщество.
Можно ли с таким продуктом называть себя вендором и выдержать реальную рыночную конкуренцию? В ней побеждают реальные самостоятельно разработанные фичи, реальная команда, которая не только их создает, но еще умеет поддерживать и обучать пользователей.
В этом качестве Postgres Pro – это универсальная СУБД, разработчики которой имеют большое количество благодарностей от мирового сообщества за вклад в развитие ядра Postgres. Например, в заметках к большим ежегодным релизам PostgreSQL вы всегда можете увидеть целый список сотрудников Postgres Pro, которые вносят свой вклад в открытый код. Только в этом году — больше 25 фамилий тех, кто сделал патчи для 15-й версии Postgres. Мы поддерживаем все основные операционные системы и архитектуры, используемые у нас в России. Это означает, что наша ферма серверов постоянно собирает и тестирует наши продуктовые релизы, мажорные и минорные, которых в году набирается многие десятки, а это означает, что нашим клиентам всегда доступны актуальные релизы.
Почти все основные российские разработчики ядра Postgres, которых, к слову, не очень много в России, работают у нас в компании. Было очень важно собрать их вместе, потому что такая синергия во многом помогает делать продукт. Фактически мы сейчас стали «Ораклом» на российском рынке баз данных: и по охвату рынка, и по объемам договоров мы лидеры. Я считаю, что в нынешнее время очень важно не распылять столь ценные ресурсы, какими являются разработчики PostgreSQL, на так называемые Postgres-совместимые СУБД, а объединиться в одну сильную команду, которая сможет делать продукты мирового уровня.
Что касается СУБД «Линтер», которую Вы упомянули, то, действительно, первую свою систему компания создала на базе Postgres. Но потом они сосредоточились на разработке собственной проприетарной СУБД. И это была их большая ошибка: они перестали быть открытыми и не вырастили сообщество. Кто будет ее использовать, если нет соответствующих специалистов? Если ты хочешь, чтобы твоя СУБД массово использовалась, значит, тебе нужны люди, которые ее знают и продвигают в своих компаниях. То есть вопрос сообщества – центральный в проблематике российского СУБД-строения. Поэтому и получилось, что почти 30 лет я занимался воспитанием сообщества: выступал на конференциях, помогал в реальных проектах, создал форумы разработчиков в соцсетях и крупнейший чат сообщества в Телеграм, где сейчас уже больше 9000 человек.
Поэтому самой первой нашей задачей в рамках только что созданной компании Postgres Professional стало создание образовательного отдела. Фактически мы создали образовательный рынок по Postgres-у, включая разработку уникального образовательного контента, который полностью доступен на нашем сайте в разделе «Образование». По предварительным оценкам, начиная с 2015 года, мы вложили более 100 млн. руб в обучение специалистов и развитие постгресового сообщества.
Это большая нагрузка для компании. География нашей образовательной деятельности – вся Россия. Мы ездим по стране, читаем лекции и курсы. В том числе, в вузах. У нас есть программа стажировки для студентов ВМК, мехмата МГУ. Работаем над созданием школы системного программирования. Для тех, кто интересуется Postgres, уже работает с ним или только планирует развиваться в этом направлении, мы ежегодно проводим технические конференции и митапы.
Мало того, мы создали систему сертификации специалистов, чтобы навести порядок в отрасли и задать единые стандарты, в том числе для работодателей. Наши эксперты разрабатывают целые курсы, и эти курсы читают авторизованные партнеры. Мы выпускаем русскоязычные книги по Postgres, не имеющие аналогов в мире. Сейчас начали переводить их на английский язык по запросам из сообщества. Так как мы опенсорсное сообщество, все образовательные материалы размещаем в открытом доступе – пожалуйста, берите и пользуйтесь.
А продажами занимаются наши партнеры, и контракты - по всей стране. Но этого недостаточно, должны еще создаваться компании, которые будут обслуживать средний и мелкий бизнес.
О возможностях замены Oracle на Postgres
TADVISER: Сегодня можно сказать, что любая большая система на базе Oracle может быть реализована на Postgres?
ОЛЕГ БАРТУНОВ: Конечно. Нет никаких ограничений. Все ограничения - в головах у людей. Не нужно понимать это как возможность одномоментно взять и заменить Oracle на Postgres в конкретной системе. Но если создавать систему с учетом возможностей и достоинств Postgres, можно решить любую задачу. В мире есть много примеров такого подхода, например, биллинг Skype или WeeСhat. Что касается именно России, то страна в силу сложившихся обстоятельств сегодня является одним из крупнейших потребителей Postgres на уровне больших федеральных систем. Некоторые из них, кстати, перешли на Postgres именно с Oracle и весьма успешно. Это знаковое явление, которое пока мало кто оценивает – что Россия дала Postgres-у. Больше нигде в мире большие федеральные системы масштаба России не работают на опенсорсном Postgres. И тут мы как раз можем увидеть принцип опенсорса в действии – когда выигрывает не только заказчик, но весь постгресовый мир обогащается практикой работы в крупнейших высоконагруженных системах федерального масштаба.
TADVISER: Сейчас у вас период активного замещения Oracle в ИТ-системах крупных предприятий и госструктур?
ОЛЕГ БАРТУНОВ: Да, это так. Вы же знаете, что Марк Ривкин, эксперт по СУБД в компании Oracle, перешел к нам на должность руководителя отдела технического консалтинга? Причем, пришел со своей командой из Oracle. Главные ораклисты России пришли к нам в Postgres Professional с искренним желанием помочь нам. Enterprise-сегмент оценил, что маститая команда пришла именно к нам, а не в другую компанию.
TADVISER: У Oracle есть популярные программно-аппаратные комплексы типа Oracle Exadata. Как обстоит дело с их заменой?
ОЛЕГ БАРТУНОВ: Об этом нас часто спрашивают. В этом направлении идет проект сотрудничества с компанией «Скала». Речь идет о поставке программно-аппаратного комплекса «Машина СУБД», у которой внутри СУБД Postgres Pro.
Кроме того, работаем над кластерным вариантом Postgres. Мы работаем над встроенным шардингом, технологией горизонтального масштабирования кластера, при которой части одной базы данных размещаются на разных шардах (нескольких хостах-репликах), важной разработкой является встроенный отказоустойчивый Postgres. Это то, чего от нас ждут многие заказчики.
TADVISER: С поставщиками российского железа сотрудничаете?
ОЛЕГ БАРТУНОВ: Мы постоянно с ними взаимодействуем. Ведь одно дело, когда ты сделал небольшую обвязку ПО. И совсем другое – гарантировать своим клиентам, что наш софт отлично работает на всех платформах: на всех операционных системах, на всех архитектурах. У нас стоит целый «зоопарк» различных машин, на которых непрерывно крутятся тесты. Более того, ни один релиз не выйдет на рынок до тех пор, пока все тесты не пройдут на всех машинах. Это очень серьезная часть работы вендора, которая требует больших финансовых вложений и людских ресурсов. Одной из первых наших работ был перевод на русский язык всей документации, а это тысячи страниц. И мы для каждого релиза обеспечиваем перевод всей документации. Кстати, это один из самых посещаемых разделов на нашем сайте, ведь Postgres стал массовым продуктом.
О совместном развитии открытой и проприетарной версии Postgres
TADVISER: Вы продолжаете поддерживать и опенсорсный вариант PostgreSQL наряду с коммерческой системой Postgres Pro. Как они уживаются вместе в одной компании?
ОЛЕГ БАРТУНОВ: Мы не стремимся привязывать клиента к коммерческой Enterprise-версии. Заказчик может продолжать пользоваться опенсорсной СУБД Postgres. Но в Postgres Pro мы внедрили различные фичи, которые улучшили опенсорсный Postgres. Можно сказать так: опенсорсный Postgres, в первую очередь, рассчитан на сообщество, на небольшие проекты. А Enterprise-версия обеспечивает такие важные для корпоративного уровня характеристики, как повышенная надежность, отказоустойчивость, производительность, гарантии уровня обслуживания (SLA), техническая поддержка, обучение сотрудников и т.д. Если кратко, то для корпоративного сегмента мы полноценный вендор, а для сообщества – равноправный партнер.
Таким образом, мы развиваем сообщество, а корпоративные заказчики понимают, что они вполне могут найти нужных сотрудников на рынке труда. Кстати, раньше предложений работы с Oracle было на порядок больше, чем с Postgres. Когда на рынке появилась наша компания, мы сравнялись, а потом «наших» стало больше. На настоящий момент вакансий Oracle практически нет.
TADVISER: Как взаимодействие двух ипостасей осуществляется на практическом уровне?
ОЛЕГ БАРТУНОВ: С одной стороны, мы работаем с клиентами, предлагаем им и тестируем на них новые фичи, доказываем их жизнеспособность, производительность, надежность. С другой стороны, отдаем фичи сообществу. Это взаимовыгодный процесс, ведь сообщество развивается, там постоянно появляются новые возможности.
А еще есть интересный момент. В постгресовом сообществе каждая компания и каждый отдельный специалист может ссылаться на все, что сделано сообществом. Это такой своеобразный взгляд на вещи. Например, когда мы сделали поддержку JSONB, одна американская компания выпустила пресс-релиз об этом, причем, никак не упомянув наших фамилий. Это нормально. И я также могу от имени своей компании рассказать про какую-то новинку, над которой сейчас работает сообщество. Планы сообщества — это и наши планы тоже, мы полностью совместимы. В этом смысле наша компания – это гораздо больше, чем 170 человек в штате – у нас целое сообщество за спиной. И поддержку осуществляет не только наша компания, но и все сообщество тоже.
Мы же, со своей стороны, возвращаем в сообщество все, что было нами сделано для Enterprise-сегмента. Да, собственно, не только мы, но и все остальные участники, которые из отдельных разработчиков-энтузиастов давно выросли в постгресовые компании и занимаются созданием собственных доработанных версий и, тем самым, развивают опенсорс. А сообщество выполняет роль тестеров, причем не только разработок, но и самих идей, принимая решение об их включении в Postgres.
TADVISER: Каковы планы ближайшие развития компании?
ОЛЕГ БАРТУНОВ: Ближайшее будущее – это, конечно, кластеры и еще поддержка облаков. Сейчас у нас идет проект DBaaS (Data Base as a Service). Надеемся в следующем году его продемонстрировать рынку. Еще одно стратегическое направление разработок – функциональность NoSQL. Мы и так являемся авторами всех NoSQL-фич в Postgres и стараемся отзываться на все запросы пользователей.
Понимаем, перед каким вызовом сегодня оказывается человечество в связи с нынешним развитием OLTP- и OLAP- систем. Времена, когда транзакционная база данных OLTP существовала отдельно от OLAP-базы, уходят в прошлое. Сегодня важна не только онлайн-аналитика, но и real time-аналитика. Аналитика реального времени подразумевает, что вам нужно одно хранилище данных, с которым будут работать программные инструменты. И мы тоже работаем над этим вызовом. Стараемся ускорять транзакционные операции, но так, чтобы та же база могла быстро работать для целей аналитики.
И еще остро ощущаем непродуктовый вызов: мы хотим, чтобы СУБД-строение появилось в нашей стране как отрасль ИТ. Это означает, что должны появиться стартапы, которые создают различные базы данных. Было бы еще лучше, если бы в стране появились другие опенсорсные компании, подобные нашей. Сейчас наблюдается некоторая изоляция, связанная с геополитическими потрясениями, а опенсорс является той дорожкой, которая нас связывает со всем миром. Это один из инструментов гражданской дипломатии, и им нужно пользоваться. А конкуренция всегда нужна, потому что она подгоняет нас.
Мы работаем над тем, чтобы поделиться с сообществом такими нашими успехами, как реализация 64-битных счетчиков транзакций и гибкая технология для хранения объемных значений полей базы данных. Это серьезный труд, поскольку надо не только решить задачу, но и убедить многих людей в том, что наше решение является наиболее оптимальным.
TADVISER: Что Вы со своим почти тридцатилетним опытом open source посоветуете тем, кто только делает первые шаги в Postgres?
ОЛЕГ БАРТУНОВ: У молодежи всегда есть прерогатива на ошибки. И пока они не отягощены какими-либо обязательствами, надо пробовать реализовать свои проекты, вдруг что-то «выстрелит», ну а в случае неудачи, появится опыт. И это непременно нужно делать, иначе, как ты узнаешь, к чему у тебя лежит душа? Побольше прислушиваться к себе и поменьше к другим. Не бояться пробовать и рисковать, тем более сейчас возможности находятся на расстоянии вытянутой руки. Знаете, я в свое время я пришел в Postgres «сбоку». А сейчас у молодежи имеется прямой путь в опенсорс, например, через нашу компанию. В Postgres Pro уже давно существует практика стажировки студентов, которые работают с нашими реальными опенсорсными задачами и делают дипломные работы на их основе. Многие потом остаются в компании. Мы запустили конкурс «Код для всех» - студенты могут заявить свои работы по Postgres прямо нам, и мы поддержим, даже выплатим денежное вознаграждение. Это такой шанс, который грех не использовать. А вдруг ты сделаешь что-то интересное и станешь участником этой интересной международной жизни? Тебя будут знать люди. Твое имя останется в логах Postgres как человека, внесшего значительный вклад в развитие этой СУБД. Вы бы видели восторг одной нашей девочки, патч которой закоммитил сам Том Лейн! Для разработчика это очень важно. Это вдохновляет!
Мы как истинные приверженцы опенсорса хотим быть доступными для всех. И эта позиция дает нам силы и уверенность в том, что мы делаем!