Недавно мы провели опрос пользователей Kubeflow осенью 2019 года, чтобы попытаться лучше понять тенденции и проблемы, которые были наиболее важны для нашего сообщества и пользователей. Переходя к Kubeflow 1.0, мы думали, что для нас имеет смысл обратиться к нашей аудитории, чтобы услышать от них, чтобы результаты могли быть доступны сообществу Kubeflow для разработки функций и лучшего понимания наших приоритетов.

Это наш второй опрос в этом году, на который было получено более 75 ответов. Результаты по первому можно посмотреть здесь. В этом анализе мы решили сосредоточиться на 50 ответах людей, которые используют Kubeflow в своем текущем рабочем процессе. Мы рады сообщить, что полные графики были очищены и доступны здесь.

Кто наши пользователи?

Большинство респондентов опроса - специалисты по обработке данных и инженеры по машинному обучению, за которыми следуют DevOps и инженеры-программисты. Кроме того, у нас есть небольшой процент нетехнических людей, таких как менеджеры по продуктам, которые ответили на наш опрос и заинтересованы во внедрении Kubeflow.

Мы также хотели узнать, как респонденты в настоящее время связаны с Kubeflow. Оказалось, что около 60% из них являются пользователями Kubeflow и около 30% - интеграторами Kubeflow.

Респонденты представляют два четко различимых типа организаций: корпоративные компании с более чем 5000 сотрудников и средний бизнес с 50–500 сотрудниками. Для дальнейшего назовем их "Предприятия" и "Дестабилизаторы".

Каков их опыт работы в Ops?

Хотя Kubeflow является собственной платформой Kubernetes, все же важно было понять, какой тип инфраструктуры используется нашими пользователями. В этой области 3 лидера: 50% локально, 46% GCP и 42% пользователей AWS.

В выпуске 0.6 Kubeflow перешел с посла на Istio. Для нас как сообщества было крайне важно понять, насколько это решение нашло отклик у наших последователей. Результаты оказались многообещающими. Таким образом, 70% людей согласны с нашим решением и только 20% не планируют использовать Istio в ближайшем будущем.

Жизненный цикл машинного обучения всегда привязан к использованию и использованию данных. Респондентов опросили спросить об их решениях для хранения обучающих данных. Было неожиданно, что почти 60% наших пользователей используют хранилище облачного провайдера для своих наборов данных по сравнению с 30% тех, кто предпочитает локальное хранилище.

Еще один ключевой аспект обучения и развития моделей - это высокая потребность в вычислительной мощности. Очевидно, что наша аудитория в полной мере использует аппаратные ускорители, 72% из которых используют графические процессоры для своих рабочих нагрузок AI / ML.

Предприятия против разрушителей

Как было указано выше, существует две группы пользователей: компании с 5000+ сотрудниками (предприятия) и компании с 50–500 сотрудниками (Disruptors). Итак, мы решили более внимательно изучить данные, чтобы определить разницу между двумя типами.

Первый вопрос заключался в том, есть ли различие в типах их инфраструктуры? Сначала мы предполагали, что количество локальных ресурсов в Enterprise должно быть выше, чем в организациях среднего размера. Как ни странно, результаты рисуют нам иную картину - настройка на месте осталась одинаковой в обеих группах. Что касается использования облака, предприятия склонны использовать GCP, в то время как Disruptors предпочитают использовать AWS.

Следующий вопрос заключался в том, в чем разница в использовании компонентов Kubeflow между 5000+ и 50–500 организациями. Как и ожидалось, Pipelines и Notebooks оставались главным приоритетом для обеих групп. Однако предприятия стремятся использовать все компоненты Kubeflow, тогда как Disruptors фокусируются на меньшем наборе компонентов.

В Kubeflow 0.6 и 0.7 мы начали работать над RBAC и много обсуждали, какой технологический стек использовать и какой тип архитектуры сделает Kubeflow доступным для различных поставщиков удостоверений. Как мы видим на гистограмме ниже, большинство респондентов используют AD / LDAP (в основном используется Enterprise) и Github (в основном используется Disruptor).

С точки зрения масштабируемости совершенно очевидно, что более крупным организациям требуется поддерживать больше пользователей на кластер для своих рабочих нагрузок, чем организациям меньшего размера.

Однако тенденция в отношении ноутбуков и конвейеров более или менее одинакова и показывает нам, что большинство пользователей ожидают одновременного запуска в среднем 50 ноутбуков и конвейеров в одном кластере.

Kubeflow сегодня

Чтобы понять, какие компоненты наиболее часто используются в Kubeflow, респондентам было предложено выбрать 3 основных компонента в их текущей рабочей нагрузке, а в следующем вопросе им было предложено выбрать 3 основных компонента, которые они планируют использовать в будущем.

Безусловными лидерами оказались Pipelines и Notebooks - 82% и 70% соответственно. Далее следует примерно равное распределение по остальным компонентам.

Документация является жизненно важной частью проекта с открытым исходным кодом. Участников опроса попросили предоставить список разделов документации, которые, по их мнению, нуждаются в улучшении. Результаты показали, что людям требуется больше руководств по сквозному использованию kubeflow и больше руководств по конвейерам. Интересно, что раздел «Другое» оказался на 3-м месте, так что давайте посмотрим, что там:

  • Выборочная установка, т. Е. С использованием VPC
  • Архитектура и установка
  • Локальная установка Kubeflow
  • Рабочие нагрузки CI / CD, например Gitlab

Как видно, документация для установки - это область, в которой Сообщество нуждается в улучшении, и мы позаботимся о том, чтобы обратиться к добровольцам в нашем предстоящем Спринте Документов. Возможно, больше сквозных руководств с различными сценариями использования частично восполнят этот пробел.

Резюме

Есть определенно положительные признаки того, что мы, как сообщество, движемся в правильном направлении. В версии 0.7 был проделан огромный объем работы, которая приближает нас к ожиданиям конечных пользователей. Мы продолжим работать над качеством и улучшением Kubeflow.

Ключевые выводы:

  • Специалисты по обработке данных и инженеры по машинному обучению остаются нашей основной целевой аудиторией.
  • Локальный опыт Kubeflow должен быть на том же уровне, что и в наши дни в облаке.
  • Конвейеры и Блокноты - ключевые компоненты для пользователей Kubeflow. Но пользователи Kubeflow планируют в будущем использовать более целевые компоненты Kubeflow.
  • Кластер Kubeflow должен поддерживать в среднем 50 конвейеров и 50 ноутбуков.
  • Для сквозных обучающих программ требуются дополнительные инвестиции, а установка должна быть интуитивно понятной и достаточно простой, чтобы снизить входной барьер.
  • Kubeflow необходимо поддерживать интеграцию с графическими процессорами, и Сообщество должно инвестировать в улучшенные операции и документацию для графических процессоров.

Спасибо Джошу Боттуму (Аррикто), Гаураву Карнатаки (Google), Кэти О'Лири (Google), Тее Ламкин (Google) и Абхишеку Гупте (Google) за участие в публикации и огромную работу над опросом.

Если вы найдете эту статью полезной и хотите узнать больше о возможностях Kubeflow или стать участником, не стесняйтесь: