Быть или не быть Национальной СУБД ?

Jun 08, 2014 23:14

На конференцию в Абрау-Дюрсо я подал вот такие тезисы. Тему я выбрал неслучайно, дело в том, что сейчас после американских санкций опять начала муссироваться тема национальной программной платформы (которую благополучно завалили в прошлом), ну и одновременно всплыла тема национальной СУБД. Ко мне стали обращаться разные лица с предложением подумать над этим вопросом (памятуя о моем выступлении в 2011 году), так что я решил выступить перед научным айтишным сообществом. Так что, это только тезисы и они не претендуют на полное освещение проблемы.

================================================================================================

На повестке дня периодически поднимается вопрос о Национальной Программной Платформе (НПП), ее целях и задачах. В то время как вопрос о НПП представляется очень интересным, ее масштабы мешают подойти к более практическому изучению проблемы. Мне, как разработчику свободной СУБД PostgreSQL с большим стажем, хочется поразмышлять на тему Национальной СУБД. Действительно ли нам нужна Национальная СУБД ?

Во-первых, до сих пор никто еще не озвучил требования к Национальной СУБД (НСУБД), а именно, какими такими национальными особенностями должна обладать эта СУБД ? В эпоху глобализации трудно представить уникальные операции, специфические для России, скорее можно описать требования по безопасности данных к СУБД от специфических органов, которые есть не только в России. Например, поддержка мандатного доступа, интеграция с ОС, ограничения доступа к данным на различных уровнях. Однако, похожие требования отнюдь не специфичны для России и существуют СУБД, которые либо уже поддерживают эти требования на том или ином уровне, или ведется работа по реализации соответствующего функционала. Современный мир СУБД является сильно разнородным - это и NoSQL базы данных, традиционные реляционные СУБД, возникающие NewSQL, общим количеством сильно больше сотни и каждый месяц мы читаем про очередную новую СУБД. Появление новых СУБД является закономерным процессом и отражает тот факт, что трудно найти одну универсальную базу данных. Стоит ли тратить ресурсы на разработку новой СУБД, да еще без внятных требований ?

Во-вторых, представим, что у нас появились требования к СУБД и даже открылось финансирование на разработку. Означает ли, что мы соберем команду ученых и квалифицированных разработчиков, которые смогут за конечное время (2-3 года) сделать такой грандиозный проект ? На самом деле, во всей большой России практически нет научной школы по теории и практике технологий баз данных (для этого достаточно посмотреть на DBLP) и команды сильных разработчиков, имеющих опыт разработки СУБД с нуля. Единственным выходом в такой ситуации является ориентация на свободные СУБД, которые имеют большое сообщество пользователей и разработчиков. Наиболее продвинутая и открытая СУБД PostgreSQL имеет хорошую и долгую историю, ведущую из известной школы баз данных в Беркли, а также, лицензию BSD, которая не накладывает никаких ограничений на использование исходных кодов. Богатство функциональности, качество кода и открытость PostgreSQL проявляется не только в большом количестве пользователей, но и в количестве открытых и коммерческих форков. Серьезным аргументом в пользу PostgreSQL является наличие российских разработчиков, которые входят в международную команду разработчиков, в которой занимают серьезное положение. Кроме того, PostgreSQL уже давно используется в силовых структурах и входит в отечественные дистрибутивы Linux, версия 9.0 сертифицирована министерством обороны под именем СУБД Заря. Крупные интернет-проекты также используют PostgreSQL, например, Rambler, Yandex. Mail.ru, avito.ru и другие. Если мы пустим финансирование на подготовку разработчиков, которых направим на разработку важнейших подсистем PostgreSQL, то мы получим со временем, не только команду квалифицированных разработчиков, но и большое сообщество пользователей, которое очень эффективно для тестирования и поддержки. Кроме того, большое количество российских разработчиков может играть важную роль в выборе приоритетов развития базы данных, например, если придется защищать важную для России функциональность.

Помимо разработчиков и исследователей, необходимо иметь инфраструктуру по подготовке администраторов и пользователей, которая в настоящее время в России практически отсутствует. Именно ее отсутствие сдерживает распространение PostgreSQL и других открытых СУБД, так как государственным организациям и коммерческим компаниям требует качественная поддержка, возможность обучения их сотрудников. Требуется организовать перевод документации на русский язык с поддержкой версионности, разработать курсы для администраторов, разработчиков, менеджеров.

Итак, нам не нужна Национальная СУБД ! Нам нужны люди, способные включиться в разработку свободной и развитой СУБД и вырасти, нам нужны люди, которые могут организовать процесс поддержки и обучения, нам нужна внятная государственная политика по поддержке своих разработчиков.

PS.
Видео моего выступления

npp, ppg

Previous post Next post
Up