Регистрация
Отчет Участники Партнеры

16 июня 2020
18:00

Вебинар "Отечественная СУБД, о которой вы не знали" с Игорем Туркановым

23 июня 2020 3947 0

16 июня состоялся вебинар "Отечественная СУБД, о которой вы не знали", организованный Клубом 4CIO. Спикером выступил Игорь Турканов (Концерн "Гранит", директор научно-исследовательского центра), а приглашёнными экспертами стали Дмитрий Алтухов, Евгений Колесников и Григорий Сапунов.

Презентацию Игоря Турканова можно скачать здесь.

Игорь начал свой доклад с описания предпосылок погружения концерна в тему создания СУБД: появилась потребность в хранилище, обладающем рядом особенностей, к примеру, возможности сертификации под нужды государственных органов. Также информация должна храниться в зашифрованном виде, причём шифрование должно было иметь криптографическую стойкость куда выше того же биткоина. СУБД должна была обеспечить безостановочную работу 24/7, причём "переброска" работ на копии и зеркала не рассматривалась. И, конечно, четвёртым базовым требованием стала скорость работы.

Далее в докладе шло описание процесса выбора языка для написания "Квант-Гибрида" — к нему, конечно, также имелся ряд требований, например, открытые библиотеки, близость непосредственно к машинным кодам, жёсткая функция контроля над памятью и способность адекватно работать в параллельных процессах. Это только основной набор требований — по факту их, конечно, было намного больше. В результате был выбран Rust, работа над которым стартовала в 2006 году, а в 2011 им вплотную занялась корпорация Mozilla, известная большинству своим браузером Firefox. По словам Игоря, Rust вынуждает программиста при написании кода задумываться о том, что будет с памятью по завершении программируемого процесса, ещё до компиляции — благодаря этому работа с ошибками памяти становится куда легче и быстрее.

Спикер описал преимущества выбора Rust: распараллеливание, слежение за памятью, прозрачность и отсутствие проблем с C и "заплаток", предложенных для решения этих проблем. Как известно, это мультипарадигмальный язык, в котором поддерживаются функицональное, параллельное, процедурное и объектно-ориентированное программирование, т.е. почти весь спектр реально используемых в прикладном программировании парадигм.

Понятно, что в XXI веке писать систему управления базами данных с нуля — неблагодарное занятие, поскольку на рынке существует масса вариантов под самые разные условия задач. Специалисты "Гранита" не стали изобретать велосипед и взяли за основу для вдохновения Postgres — зрелую, изученную, понятную, распространённую и открытую объектно-реляционную систему управления базами данных. Однако стандартной поставки оказалось недостаточно — проблемы с памятью, слабая консоль, сложности в развитии... Также у этой СУБД существуют определённые проблемы в работе с разными платформами ("Гранит" за платформу уверенно выбрал Linux), а одной из главных проблем оказалось отсутствие независимых корпоративных тестов в сравнении, например, с Oracle. Было очевидно, что Postgres в "сыром" виде не годится для решения задач концерна, и нужна доработка.

В результате в 2019 году в качестве форка Postgres появилась СУБД "Квант-Гибрид", собственная разработка концерна, уже вошедшая в реестр отечественного ПО, проходящая еженедельные нагрузочные тесты и испытываемая в пилотных проектах. Сейчас база рассчитана исключительно на Linux (что особенно актуально для РФ в условиях импортозамещения) и располагает открытой версией для сообщества, вдобавок к trust-версии, предназначенной для работы в госорганах и защищённой от каких-либо закладок.

Переходя к технической части презентации, Игорь обрисовал основные принципы действия QCP (балансировщика сетевой нагрузки для оптимального использования серверных подключений) и продемонстрировал схемы его работы.

Также описывалась и функция QDL, позволяющие напрямую загружать большие объёмы данных в страницы БД, готовя данные для новых таблиц ещё на этапе парсинга (здесь спикер продемонстрировал сравнение скорости вставки привычным способом из CSV и с использованием QDL — второй способ оказался почти втрое быстрее).

TARQ — самобалансирующийся менеджер кэша дисковых блоков, способный в реальном времени отслеживать загрузку кэша прямо в работающем окружении, не создавая при этом дополнительной нагрузки на систему.

RBYTEA — функция, позволяющая хранить большие бинарные объекты не в страницах СУБД, а прямо в разделе файловой системы, причём обращения к ним будут такими же, как к страницам базы данных (такие решения в СУБД сами по себе считаются редкостью, однако стабильный спрос для них есть). 

QSS — прозрачное шифрование значимых таблиц с использованием алгоритма ГОСТ Р 3412-15 "Кузнечик", причём защищается также и журнал упреждающей записи, а сами таблицы могут защищаться выборочно, не затрагивая разделы целиком.

Презентация Игоря содержала ещё массу интересной технической информации, и по её завершении приглашённые эксперты начали задавать вопросы — к примеру, в каком состоянии сейчас продукт, как выглядят репозитории кода, какие существуют планы на партнёрскую экосистему, как именно должно собираться то сообщество, на которое рассчитывает вендор, и главное — с чем CIO есть этот продукт? Завязалась интересная дискуссия на тему применимости продукта на сегодняшний день и его перспективами в современном российском бизнесе.

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

 

Нажимая на кнопку "Подписаться", Вы соглашаетесь с условиями Политики в отношении обработки персональных данных и даете согласие на обработку персональных данных