Всем привет!
Нас (PermLUG) пригласили быть информационным партнёром новой большой IT конференции Merge в Иннополисе, которая состоялась 13—14 ноября 2021 г., я летал туда и здесь поделюсь заметками с трёх докладов секции Open Source, показавшихся мне наиболее интересными:
Технологии и тенденции в мире open source баз данных в 2021 году — Пётр Зайцев (Percona, Durham, NC, USA, Co-founder & CEO)
Как не попасть в ловушку open source — Мария Азизова (Percona, Ульяновск, Staff Executive to CEO)
Как создавать и внедрять open source решения в банке — Андрей Ганин (Альфа-Банк, Санкт-Петербург, QA Head)
Здесь приводится вольный краткий тезисный пересказ, не претендующий на цитаты, а в конце будет фотобонус и про ещё один интересный доклад.
Статья на мой взгляд рассчитана в первую очередь на тех, кто имеет опыт работы в Open Source, остальным такой краткий формат подачи может быть не очень хорошо понятен.
Это необычный формат выпуска FOSS News, но если всё получится, он станет постоянным и подобным образом будут освещаться все значимые IT конференции с Open Source секциями в России и не только (у нас есть очень хороший спецкор в Лос-Анджелесе).
В статье для краткости вместо Open Source будет использоваться сокращение «OS», не путать с операционными системами.
Технологии и тенденции в мире open source баз данных в 2021 году. Пётр Зайцев (Percona, Durham, NC, USA, Co-founder & CEO)
Percona 15 лет занимается OS СУБД и на основе своего опыта может сказать, что для бизнеса в OS:
можно деплоить сколько угодно без дополнительных затрат;
широкий выбор вендоров;
возможность улучшения.
Если посмотреть на графики роста популярности СУБД, то OS решения достаточно быстро захватили рынок и прочно занимают лидирующие позиции.
На StackOverflow из OS СУБД больше всего вопросов про MySQL и с ней есть ещё один интересный факт — больше всего на ней зарабатывает не владелец Oracle, а AWS.
Среди OS компаний есть уже не единичные представители, достаточно много мультимиллиардных и это показывает зрелость этого подхода к разработке и построению бизнеса (хотя OS это не бизнес-модель).
Очень важный фактор в развитии OS — cloud, в нём важны:
упрощение применения
изменение возможностей монетизации
GPL не работает для облаков. AGPL, казалось бы, должна работать, но есть сложности с применением в случае конфликтов. Пример: mongoDB.
В ведении серьёзных OS-проектов есть два подхода:
Фонды: им облака вполне выгодны.
Вендоры: они находятся в жёсткой конкуренции с большими облачными провайдерами, такими как AWS.
Одновендорность ведёт к ослаблению или вовсе отказу от принципов OS и есть такой негативный тренд.
OS+DBaaS+один вендор — по сути тот же проприетарный продукт.
Но есть и мощный позитивный тренд в развитии OS инструментов и фреймворков. Если вспомнить ситуацию начала 00-х с множеством закрытых и платных решений, то сейчас мы будто живём в другом мире. Linux победил и открыл путь для множества близких по духу решений.
С облаками начинает происходить подобное. Несмотря на то, что AWS является одним из главных участников CNCF, эти две организации по сути предлагают кардинально различные подходы.
Если, грубо говоря, вы заказываете «электричество» у AWS, то вам вдобавок предложат на удобных условиях ещё телевизор, холодильник, микроволновку, посудомойку, робота-пылесоса и много чего ещё. Вот только если вы захотите перейти к другому поставщику, всё это «превратится в тыкву».
OS DBaaS пока нет, но есть движение в эту сторону, и огромную роль здесь играет Kubernetes.
Примеры проектов, близких этому направлению:
Astra;
Altinity;
Influxdata;
MariaDB;
crunchydata;
planetscale.
И от Percona есть PMM.
Общие тренды СУБД:
развитие дата пайплайнов для нескольких источников;
многомодельность;
распределённые СУБД;
hybrid-cloud, multi-cloud;
serverless;
object-store backend;
использование AI для настройки СУБД под требуемую модель нагрузки (пример: OtterTune);
необходимость соответствия новым security&compliance требованиям, таким как, например, data residency;
одни СУБД могут использоваться как бэкенд для других.
PostgreSQL оценивается как СУБД с наибольшим потенциалом развития.
Как не попасть в ловушку open source* — Мария Азизова (Percona, Ульяновск, Staff Executive to CEO)
* на мой взгляд докладу бы больше подошло название «Как не попасть в ловушку псевдо open source»
Что важно знать при использовании OS:
какая лицензия;
что произойдёт при прекращении отношений с поставщиком;
каковы альтернативы;
насколько возможно внесение своего вклада.
Ловушка №1 — Source Available
Примеры:
mongoDB;
redis;
confluent;
elastic.
По сути такой подход применяется владельцами для создания собственной монополии и защиты от облачных провайдеров.
Ловушка №2 — Open Source, Eventually
В OS передаётся устаревший код.
Код может не поддерживаться и иметь уязвимости.
Заявляется как Open Core, только лучше (но это не точно).
Ловушка №3 — Open Core
Бесплатная часть может быть слишком урезанной.
Действительно полезные расширения и улучшения могут быть только в платной версии.
Рекламируется как Open Source, но может быть на самом деле весьма далёк от «настоящего» Open Source.
Enterprise версии больше похожи на OS Compatible.
Ловушка №4 — OS Compatible
Легко перейти на проприетарную версию, но сложно вернуться обратно.
OS, развёрнутый в облаке, имеет проприетарный интерфейс управления.
Ловушка №5 — Source Only «Open Source»
Бинарники, сопроводительная документация или даже полный сценарий сборки и конфигурации окружения может быть не OS.
Дифференциация сборок.
Что с этим делать
Главная защита — внимательное изучение лицензии и практики применения рассматриваемого продукта в отрасли.
Дополнительные ловушки из прозвучавшего в вопросах к докладчику
Бывает, с собственниками или разработчиками проекта настолько сложно общаться, что единственный возможный вариант использования — сделать форк (пример: OpenOffice и LibreOffice).
Недавно созданная в России Государственная открытая лицензия.
«Правильный» OS
Только такой, лицензия на который одобрена Open Source Initiative.
Как создавать и внедрять open source решения в банке — Андрей Ганин (Альфа-Банк, Санкт-Петербург, QA Head)
Начнём с вводным слов, о том, почему вообще полезен OS.
Плюсы OS:
снижение затрат;
сокращение t2m;
осознанный выбор;
единые процессы;
сотрудничество;
развитие бренда.
Минусы OS:
могут быть проблемы с лицензированием, в том числе с совместимостью между разными лицензиями;
административные вопросы;
репутация в случае использование старых проектов;
проблемы с безопасностью (но к счастью появился OpenSSF).
Очевидно, что не всё можно вывести в OS. Бизнес-логика, всё что под строгим NDA и является критичным в вопросах обеспечения конкурентоспособности, остаётся в компании.
Чтобы «продать» решение о выводе кода в OS, нужно показать:
ценность;
лёгкость;
повышение стандартизации;
улучшение архитектуры.
Необходимые составляющие успешного OS:
сообщество;
core-команда;
документация;
roadmap.
Чек-лист вывода в OS:
согласование с отделом ИБ (может быть весьма сложным);
выбор лицензий;
тесты;
документация (да, снова).
Рекомендуются copyleft лицензии, подобные GPL, так как они позволяют получить обратно все сделанные изменения и сформировать более прочные связи с разработчиками.
Ещё раз о плюсах OS:
свобода выбора;
повышение скорости развития;
инновационность.
«Мир без OS был бы грустнее и хуже».
У Alfa Digital около 40 OS проектов, первый проект был запущен примерно 10—12 лет назад, это была библиотека для унификации UI.
Фотобонус
Ещё
На конференцию мы летали вместе с Мишей @sakhnyuk и у него был крутой доклад про оптимизацию скорости загрузки и размера SPA приложения на основе опыта Miro, где мы работаем, про это он сам напишет — ждите, рекомендую.
Полезные ссылки
Подписывайтесь на наш Telegram канал наш Telegram канал или RSS чтобы не пропустить новые выпуски FOSS News. Также мы есть во всех основных соцсетях:
[←] Предыдущий выпуск
На этом всё, до следующего воскресенья!
Вы можете принять участие в отборе материалов для дайджестов, используя нашего Telegram бота [→]. Почитать про него и вообще про процесс подготовки дайджестов можно в недавнем спецвыпуске FOSS News [→].
Предложение об оказании поддержки проекту. Для подготовки дайджестов мы чуть ли не с самого начала используем свои средства автоматизации, которые с недавнего времени развиваем коллективом из 6 человек на хакатонах. Сейчас по большей части оплата расходов на хакатоны уже покрывается донатами читателей. Ещё нужно платить за хостинг сервера с ботом-сборщиком, базой и с Telegram ботом. Мы будем рады, если вы тоже примете участие в поддержке нашего проекта и проявите солидарность. Уточню, в текущем виде дайджесты будут выпускаться независимо от финансового вопроса, а вот то, насколько лучше они станут и как быстро — зависит уже во многом от финансов. Куда переводить, можно увидеть по нажатию Хабра-кнопки «Задонатить» в конце статьи. О расходах привлечённых средств обязуемся отчитываться не реже раза в год. По вопросам финансовой поддержки и другим вариантам поддержки пишите по указанным в профиле контактам или в комментарии.
LinuxCertifiedInstructor
Очень хорошая классификация не opensource подходов (второй доклад) — кратко и доходчиво