Что такое PaaS и кому это нужно
PaaS — самый сложный и интересный сегмент облачных сервисов. Он занимает особое положение между IaaS («инфраструктура как услуга») и SaaS («программное обеспечение как услуга»). Само объяснение того, что такое PaaS и как работают такие сервисы — нетривиальная задача.
Принципы IaaS и SaaS, в целом, просты и понятны. IaaS — это процессоры, оперативная память, хранилища данных, только не физические, а виртуальные, создаваемые в дата-центре поставщика облачных услуг.
С SaaS все еще проще. Так, например, все веб-приложения — почта, мессенджеры, видео/аудио плееры, навигаторы — это и есть SaaS. Работа приложения выполняется на удаленном сервере, а на экране компьютера, смартфона или планшета пользователя отображается ее результат.
Сервисы PaaS работают несколько иначе и носят более комплексный характер. В рамках модели PaaS поставщик дает доступ к облачной среде, в которой можно создавать, тестировать, масштабировать и обновлять собственные приложения. При этом пользователь PaaS-сервисов получает в готовом виде все инструменты, которые нужны для разработки, — операционную систему, промежуточное ПО, базы данных и многое другое.
До появления таких сервисов ИТ-командам приходилось самостоятельно выбирать, закупать, настраивать, интегрировать и обслуживать целый набор продуктов. Это длительная, сложная и дорогая работа. Только после ее завершения разработчики могли заняться непосредственно созданием приложений.
Теперь почти все необходимое можно найти на одной платформе. Специалистам остается только написать код и протестировать новое приложение.
Один из ведущих мировых поставщиков облачных SaaS-решений, компания SaleForce, описывает свою платформу Force.com как Development as a Service, подчеркивая ее полезность для разработки. В этом есть логика: если выбирать между основными вариантами облачных сервисов, то PaaS действительно лучше всего подходит для разработки собственных программных продуктов.
В случае с IaaS пользователь получает доступ только к инфраструктуре — хранилищу, сетям, серверу и другим вычислительным мощностям. Прежде чем приступить к созданию продукта, здесь требуется много подготовительной работы. SaaS — это уже готовое приложение, которое может подойти для решения определенной бизнес-задачи, но… может и не подойти.
Если представить, что компании нужно не разработать приложение, а приготовить новое блюдо, то по модели PaaS он получил бы хорошо оборудованную кухню с полным набором посуды, продуктов и специй. В рамках IaaS ему бы предоставили помещение с холодильником, плитой и духовкой. А в формате SaaS — уже приготовленный ужин.
Таким образом PaaS — это сервис для тех, кто решил «готовить» сам, но не хочет слишком глубоко погружаться в технические детали и тратить время, трудовые и финансовые ресурсы на создание среды разработки.
Что предлагают поставщики услуг
По итогам прошлого года аналитики из Gartner насчитали на мировом рынке PaaS более 360 операторов, которые предлагают свыше 550 разных облачных платформ. Эксперты уверены, что к 2022 году этот сегмент вырастет более чем на треть по отношению к прошлогодним показателям и достигнет $34 млрд.
Услуги PaaS сегодня предоставляют как крупнейшие игроки облачного рынка — Amazon Web Services и Microsoft Azure, так и национальные поставщики облачных услуг. В России это такие технологические компании как SberCloud, «Яндекс», Mail.Ru, МТС, а также системные интеграторы, имеющие облачные компетенции.
Российские поставщики PaaS лишь относительно недавно стали предлагать широкий и универсальный ассортимент сервисов. Ранее бизнес-пользователям были доступны в основном нишевые решения для разработчиков.
Сегодня среди российских поставщиков облачных PaaS-услуг самый широкий набор сервисов предлагает платформа SberCloud.Advanced компании SberCloud. Она объединяет 40+ интегрированных между собой IaaS/PaaS сервисов, которые можно использовать как по отдельности, так и объединять в единое решение разработки, развертывания и контроля работы приложений.
Помимо базовых облачных услуг, здесь есть такие сервисы как бессерверные вычисления (Functiongraph), брокер сообщений (Distributed Message Service), услуга развертывания приложений в облаке (Application Orchestration Service), поддержка микросервисов (Service Stage) и многие другие PaaS-инструменты. Это позволяет создать на основе платформы продукты любого уровня сложности — от простой системы резервного копирования до «умной» электронной коммерции и решений с использованием искусственного интеллекта. Можно, к примеру, запустить «умный» и надежный интернет-магазин, который выдержит любой наплыв покупателей в «черную пятницу» и обеспечит продавца полноценной бизнес-аналитикой. А можно использовать облачные PaaS-cервисы для работы с big data, как это сделала компания Mediascope.
Наиболее активно PaaS используют компании с высоким уровнем ИТ-экспертизы, а также бизнес, работающий на высококонкурентных рынках — от ретейла до HR-индустрии и других компаний сферы услуг. По словам экспертов SberCloud, одним из последних трендов в области применения облачных решений стало более широкое использование сервисов для автоматизации развертывания, масштабирования и управления приложениями на основе технологии контейнеризации и микросервисной архитектуры.
Элементы платформы
Из чего состоит готовая программная среда, которую получают пользователи PaaS:
- Операционные системы
- Инструменты для разработки и тестирования (frameworks)
Сюда входят, например, редактор исходного кода, отладчики и компиляторы. Конкретный набор инструментов зависит от платформы.
- Промежуточное программное обеспечение / ПО промежуточного уровня (Middleware)
Конечный пользователь не взаимодействует с таким ПО, но оно необходимо для разработки новых приложений. В последнее время это направление все чаще выделяют в самостоятельный сегмент — Middleware as a Service (MWaaS). В состав сервиса обычно входит сервер приложений и интегрированные функции безопасности.
- Базы данных и инструменты для управления ими
Благодаря этой услуге пользователь получает доступ к базам данных любого типа. Поставщик обеспечивает администрирование и поддержку БД, снимая нагрузку с ИТ-специалистов компании. Эта услуга — одна из самых популярных на рынке. Ее также иногда выделяют в самостоятельный сегмент платформенных сервисов — Data Base as a Service (DBaaS).
Что PaaS дает компаниям
Поскольку поставщик PaaS берет на себя большую часть задач и предоставляет готовые инструменты, использование таких сервисов резко упрощает процесс и повышает скорость разработки. На облачной платформе ИТ-команда может практически одновременно тестировать разные конфигурации, проверяя совместимость и производительность решений.
В результате значительно сокращается показатель time-to-market: компания получает возможность максимально быстро выводить новые услуги и продукты на рынок. Это важно не только для ИТ-индустрии, но практически для любого бизнеса.
«До сих пор существует некоторый стереотип, что PaaS нужны в основном разработчикам и ИТ-компаниям, но сейчас cитуация изменилась. Среди пользователей SberCloud.Advanced — самые разные компании из самых разных отраслей, — говорит генеральный директор SberCloud, вице-президент «Сбера» Евгений Колбин. — По многим причинам им часто нужны не готовые SaaS-приложения, а более кастомизированные решения — для работы с Big Data, для сложной аналитики, графовые базы данных, микросервисы и другие. Мы предлагаем клиентам протестировать варианты, состоящие из того или иного набора IaaS/PaaS продуктов SberCloud.Advanced, а они уже подбирают оптимальное решение для своей бизнес-модели. Главное, что в облаке разработка, тестирование и развертывание бизнес-приложений происходит на прядок быстрее создания аналогичного решения традиционными методами».
Еще одно важное преимущество — оптимизация расходов. С одной стороны, компаниям не нужны капитальные вложения в собственную инфраструктуру. Пользователи платформ получают сервис за относительно небольшую абонентскую плату, а многие провайдеры предлагают модель оплаты по мере потребления. В результате снижение расходов, особенно на стартовом этапе, может доходить до 90%.
С другой стороны, готовая программная среда и автоматизация процессов разработки сокращает количество человеко-часов, необходимых для создания продуктов. Как правило, за счет PaaS компании экономят до 50-70% рабочего времени ИТ-команды.
Но такое сокращение затрат не ограничивает возможности пользователей. Напротив, имея на руках готовые инструменты, компании могут сосредоточиться на продукте и посвятить больше времени его проработке. И, что не менее важно, делать это необязательно в головном офисе. Облачные платформы позволяют работать удаленно (что сейчас особенно актуально), привлекать распределенные команды и собирать разработчиков со всего мира.
Какие возможности скоро появятся
По мере возникновения новых потребностей у бизнеса облачные платформы наполняются новыми опциями и функциями. «Тенденции, которые мы наблюдаем в PaaS, одновременно и отражают, и определяют непрерывную трансформацию облачных вычислений и цифрового бизнеса», — говорит вице-президент по исследованиям Gartner Ефим Натис.
Это означает, что набор доступных на платформах инструментов будет расширяться за счет самых востребованных и перспективных технологий — больших данных, нейросетей, искусственного интеллекта и машинного обучения. Компании смогут использовать их, не погружаясь в тонкости программирования и администрирования.
В публичных облаках инфраструктурой пользуются тысячи разных компаний, а управление берет на себя провайдер. Такой подход проще и дешевле для клиента и все чаще используется для разработки и тестирования приложений.
Кроме того, крупнейшие операторы облачных сервисов сейчас предлагают клиентам мощные облачные вычислительные кластеры для работы с искусственным интеллектом. Они нужны, чтобы оперативно обрабатывать большие и сложные массивы данных, быстро обучать ИИ-модели и запускать на их основе различные решения, базирующихся на машинном и глубоком обучении. Так, в конце 2019 года SberCloud запустила самый мощный в России суперкомпьютер — «Кристофари» — и облачную платформу AI Cloud. На платформе реализовано два важных сервиса — Model Training и Model Inference. Первый позволяет тренировать модели машинного и глубокого обучения на базе «Кристофари». Второй — разворачивать и использовать модели искусственного интеллекта.
По сути, они объединяют IaaS (мощности суперкомпьютера) и PaaS (привычные для дата-сайентистов среды разработки и инструменты). И теперь у любой компании, появился доступ к супервычислениям и разработкам на базе ИИ, которые раньше были доступны только крупным корпорациям.