Компании, стремясь извлекать все больше и больше из своих данных, вкладывают значительные средства в инициативы в области исследования данных (Data Science), инструменты бизнес-аналитики, решения на основе искусственного интеллекта и организационные усилия по поддержке принятия решений с опорой на данные. Некоторые из них разрабатывают приложения, внедряя визуализацию данных в веб- и мобильные системы, собирая данные новых типов с датчиков и устройств Интернета вещей, носимых устройств или при помощи сторонних API. Другие извлекают знания из неструктурированных источников — документов, изображений, видео, разговорной речи.

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

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

Поэтому DataOps включает в себя всю работу с исходными данными, обработку, очистку, хранение и управление данными, что подразумевает предоставление различных средств интеграции данных, обработки данных, ETL (Extract/Transfer/Load — «извлечение, преобразование, загрузка»), подготовки данных, обеспечения качества данных, управления мастер-данными, маскировки данных и управления тестовыми данными.

Но всякий механизм — нечто большее, чем совокупность его частей. DataOps – это относительно новый собирательный термин для обозначения практик управления данными, призванных помочь бизнес-пользователям (включая руководителей) и исследователям данных в извлечении бизнес-ценности из данных.

Как DataOps соотносится с другими технологическими практиками

DataOps следует общим принципам Agile в управлении итерационными улучшениями в метриках обработки данных и качестве данных, а также принципам DevOps, особенно в области автоматизации потоков данных предприятия, что позволяет оперативнее изменять возможности обработки данных и сокращать время восстановления при реагировании на инциденты в сфере эксплуатации систем управления данными.

Существует даже DataOps Manifesto с 20 принципами, охватывающими культуру (постоянно удовлетворяйте своего клиента), динамику команды (самоорганизуйтесь, ежедневно взаимодействуйте), технические методы (создавайте одноразовые среды) и качество (контролируйте качество данных и производительность их обработки).

Можно задаться вопросом, почему этот новый термин так необходим или полезен. Ответ: он упрощает обсуждение и определяет роль для соответствующей важной бизнес-функции, помогая управлять инвестициями, выстраивать команды и задавать приоритеты, увязывая их с результатами бизнеса.

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

С DataOps связано несколько ролей.

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

— Конечные пользователи данных, специалисты по анализу данных, разработчики панелей мониторинга, авторы отчетов, разработчики приложений, непрофессиональные исследователи данных и другие сотрудники, которые используют данные для предоставления тех или иных результатов с помощью приложений, визуализации данных, API или других инструментов.

— Те, кто непосредственно вовлечен в обеспечение DataOps — инженеры баз данных, инженеры по подготовке данных и другие специалисты, которые управляют потоками данных и инструментами работы с базами данных.

— Администраторы баз данных, которые отвечают за качество данных, их определение и связи.

— Владельцы бизнеса, которые обычно являются заказчиками услуг передачи данных и самостоятельно принимают решения о поиске, финансировании, создании политик и обработке (цепочки поставок данных).

Потоки данных, процессы разработки и операционные процессы

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

Один из аспектов DataOps представляет потоки данных от источника к потребителя. Это производственный процесс, управляемый с помощью DataOps и процессов эксплуатации баз данных. Потоки (или конвейеры) данных могут быть выстроены при помощи разных технологий интеграции и очистки данных и платформ управления данными. Соответствующие процессы не только манипулируют доставкой данных, но и предоставляют инструменты для управления исключениями, позволяют создавать каналы передачи данных, администрировать метаданные, а также выполнять процедуры архивирования и удаления данных.

Второй аспект DataOps – это процесс разработки. Он включает в себя несколько этапов: «песочница», разработка, оркестровка, тестирование, развертывание и мониторинг. Часть из них похожа на аналогичные этапы в CI/CD-цепочке, предусмотренной DevOps.

И наконец еще один аспект DataOps – управление инфраструктурой. Как и в DevOps, часть этой работы связана с управлением производственными потоками данных и обеспечением их надежности, безопасности и производительности. Поскольку процессы исследования данных очень изменчивы, существует также более сложная задача разработки масштабируемых, высокопроизводительных сред разработки и обработки данных для поддержки различных рабочих нагрузок.

***

Идеи DevOps возникли из напряженности между коллективами разработчиков приложений, предпочитавшими гибкие процессы разработки и вынужденными часто выпускать новый код, и группами системного администрирования, которые замедляли работу, стремясь обеспечить надежность, производительность и безопасность. Команды DevOps объединились, чтобы сделать возможными как автоматизацию выпусков нового кода, включая CI/CD и автоматизированное тестирование, так и централизованный мониторинг.

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

Создаваемая ими конкурентная ценность определяется не только общим результатом анализа данных, но и тем, насколько успешно команды DataOps справляются со сложностями обработки данных. Как быстро данные проходят через потоки данных? Какой объем данных и какой уровень качества поддерживается? Насколько быстро команда может интегрировать новый источник данных и насколько универсальны платформы баз данных для поддержки растущего разнообразия потребностей в аналитических моделях?

Инструментальный ящик DataOps

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

Вот только самые заметные из них.

Amazon Web Services предлагает, по крайней мере, семь типов баз данных: от обычных реляционных баз данных до хранилищ документов и баз данных с ключевыми значениями. В Microsoft Azure также доступно несколько типов баз данных.

Доступно большое количество инструментов, которые помогают создавать потоки данных, включая интеграцию данных и потоковую передачу данных (работа с потоками данных включает, наряду с другими задачами, управление качеством данных и управление мастер-данными).

Существует также множество инструментов, связанных с разработкой, наукой о данных и аспектами тестирования. Многие используют Jupyter, но есть и другие варианты, например Delphix и QuerySurge.

Alteryx, Databricks и Dataiku обеспечивают сквозную аналитику и платформы машинного обучения, которые сочетают возможности DataOps, науки о данных и DevOps.

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