Автор — Майк Фергюсон, управляющий директор компании Intelligent Business Strategies. Оригинал статьи можно найти здесь.

Data Mesh («сетка данных») — это концепция архитектуры данных, впервые описанная в вышедшей в 2019 году статье Жамак Дехгани «Как выйти за пределы монолитного озера данных и перейти к распределенной сетке данных». С тех пор интерес к концепции Data Mesh стремительно растет, что объясняется заложенным в нее децентрализованным подходом, ориентированным на управление данными из конкретных предметных областей бизнеса. Этот подход можно использовать для создания продуктов данных — надежных, заслуживающих доверия многократно используемых наборов данных. Наиболее целесообразная сфера их применения — аналитические среды.

В основе концепции Data Mesh лежат четыре основных принципа:

  • децентрализованное владение данными и архитектура, ориентированная на конкретные предметные области (домены) бизнеса;
  • данные как продукт;
  • инфраструктура данных как платформа, предоставляющая пользователям возможности для самообслуживания;
  • федеративное управление данными в вычислительных системах.

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

Ценность виртуализации данных в Data Mesh

Рис. 1. Что представляет собой Data Mesh.

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

КАКУЮ ПРОБЛЕМУ ПЫТАЕТСЯ РЕШИТЬ DATA MESH?

Справедливо задать вопрос: какую проблему пытается решить Data Mesh? Чтобы ответить на него, нужно взглянуть на то, что происходит с данными.

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

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

Ценность виртуализации данных в Data Mesh

Рис. 2. Что сегодня происходит с данными и аналитикой.

Эти аналитические системы являются централизованными: прежде чем данные будут очищены, преобразованы, интегрированы и проанализированы, они передаются в некую центральную систему. Однако по мере роста числа новых источников шансы на сбор в ней всех, абсолютно всех данных сильно снижаются. Кроме того, работающие централизованно инженеры по данным, будь то ИТ-специалисты или специалисты Data Science, едва ли смогут всегда поспевать за требованиями бизнеса, поэтому во многих случаях их уже рассматривают как узкое место. Кроме того, централизованные инженеры по работе с данными зачастую слишком мало знают об источниках данных, относящихся к конкретной предметной области (см. рис. 3).

Ценность виртуализации данных в Data Mesh

Рис. 3. Ключевая проблема при использовании централизованных аналитических систем.

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

Ценность виртуализации данных в Data Mesh

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

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

ЧТО ТАКОЕ ПРОДУКТЫ ДАННЫХ?

В основе концепции Data Mesh лежит термин «продукты данных». На рисунке 5 показан пример формирования конвейеров интеграции данных для создания продуктов данных в страховой компании. Эти продукты основаны на таких понятиях, как «клиенты», «продукты», «соглашения» («политики»), «премиальные платежи», «претензии» и т.д. Готовые продукты данных публикуются в маркетплейсе данных (каталоге), благодаря чему они становятся доступными для использования в аналитических системах. Эти системы могут поддерживать различные типы аналитических нагрузок, в том числе разработку моделей Data Science, хранилища данных для бизнес-аналитики и базы данных графов, поддерживающие анализ графов (например, для выявления мошенничества). Идея продуктов данных состоит в многократном повторном использовании однажды сформированных наборов данных.

Ценность виртуализации данных в Data Mesh

Рис. 5. Идея заключается в том, чтобы созданные однажды продукты данных многократно использовать в различных аналитических нагрузках.

Продукты данных определяются как имеющие следующие характеристики:

  • обнаруживаемые (их можно найти);
  • адресуемые;
  • заслуживающие доверия;
  • способные предоставлять свои описания;
  • интероперабельные;
  • безопасные.

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

ТИПЫ ПРОДУКТОВ ДАННЫХ В DATA MESH

В Data Mesh могут располагаться различные типы продуктов данных:

  • физические продукты данных;
  • виртуальные продукты данных;
  • хранимые запросы к данным.

Физические продукты данных — это постоянно хранимые наборы данных, которые были созданы, сохранены, опубликованы и поэтому доступны для использования.

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

Хранимые запросы как сервисы обычно представляют собой SQL-запросы или SQL-скрипты, которые можно публиковать как сервисы и запускать по мере необходимости, по требованию, например, через REST API или GraphQL. Запущенный в работу хранимый запрос создает продукт данных и обеспечивает его обслуживание. Хранимые запросы потенциально могут интегрировать данные из одного или нескольких источников данных, в том числе из других продуктов данных. Например, они могут обращаться к виртуальным продуктам данных.

ИСПОЛЬЗОВАНИЕ ПРОДУКТОВ ДАННЫХ И СОЗДАНИЕ НОВЫХ В DATA MESH

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

Ценность виртуализации данных в Data Mesh

Рис. 6. У потребителей данных, работающих в своих предметных областях, есть возможность использовать продукты данных, созданные специалистами из других предметных областей, создавать на основе этих продуктов данных новые и добавлять их в Data Mesh.

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

ФАКТОРЫ, ИМЕЮЩИЕ КРИТИЧЕСКИ ВАЖНОЕ ЗНАЧЕНИЕ ДЛЯ УСПЕХА DATA MESH

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

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

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

Цель Data Mesh состоит в том, чтобы создавать продукты данных, которые можно использовать в различных аналитических проектах всего предприятия. Для этого сотрудники должны иметь возможность понять, как имеющиеся данные интерпретирует бизнес. Следовательно, необходимо, чтобы в бизнес-глоссарии появился общий словарь имен и описаний данных, которыми пользуется бизнес, чтобы с помощью этого словаря описать значения атрибутов данных в каждом из продуктов данных. Это даст потребителям данных возможность обращаться к глоссарию, чтобы уточнять, как те или иные данные следует интерпретировать, и затем правильным образом их использовать.

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

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

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

РОЛЬ ВИРТУАЛИЗАЦИИ ДАННЫХ В DATA MESH

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

Виртуализация данных может применяться в следующих сценариях:

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

Обсудим их ниже более подробно.

ОРИЕНТИРОВАННАЯ НА КОНКРЕТНЫЕ ПРЕДМЕТНЫЕ ОБЛАСТИ РАЗРАБОТКА ПРОДУКТОВ ДАННЫХ С ИСПОЛЬЗОВАНИЕМ ВИРТУАЛИЗАЦИИ ДАННЫХ

Гибкое создание продуктов данных

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

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

Бизнес-определение продуктов данных

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

Чтобы быстро приступить к созданию бизнес-глоссария и определению возможных продуктов данных, можно использовать концептуальную модель данных. Она предоставляет объекты бизнес-данных, которые используются всеми бизнес-подразделениями: «клиенты», «поставщики», «заказы», «отгрузки», «платежи» и т. д. Каждому конкретному объекту данных можно назначить владельцев данных. Каждый из них может сформировать рабочую группу по управлению данными, собрав в нее экспертов из конкретных предметных областей, которые работают с этими данными (например, данными клиентов), и вместе с ними завершить работу по определению всех атрибутов, описывающих те объекты данных, за которые эти владельцы отвечают. Разные владельцы данных и рабочие группы, ориентированные на разные предметные области, могут трудиться над разными объектами данных. После того, как будет завершено определение объектов данных в бизнес-глоссарии, становится возможным создание базовых продуктов данных, на основе которых будут строиться многие другие.

Создание виртуальных представлений данных для продуктов данных

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

  • брать в качестве входных данных при создании других виртуальных продуктов данных;
  • быстро собирать из них различные виртуальные схемы, оптимизированные для разных видов аналитических нагрузок;
  • строить запросы к виртуальным продуктам данных, чтобы на их основе создавать модели машинного обучения;
  • работать с ними через разные интерфейсы, например SQL, REST, ODATA, GraphQL.

Ценность виртуализации данных в Data Mesh

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

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

Развитие ориентированных на предметные области схемы продуктов данных на основе виртуализации данных

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

Публикация продуктов данных в Data Mesh с использованием маркетплейса данных

Если на предприятии работает несколько команд, ориентированных на свои предметные области, которые создают надежные и понятные продукты данных, то у них должна быть возможность публиковать где-то информацию об этих продуктах, чтобы потребители могли видеть, какие готовые данные есть в их распоряжении, и многократно использовать их в различных аналитических проектах. Для этого нужен внутренний маркетплейс данных. Он реализуется как одна из возможностей каталога данных, обеспечивающая доступ к готовым продуктам данных: в маркетплейсе данных потребители могут искать и находить размещенные в Data Mesh готовые продукты данных и использовать их в своих целях (см. рис. 8). Кроме того, для каждого продукта данных необходимо указать информацию о владельце данных, чтобы потребители смогли запрашивать у него разрешение на доступ и использование продуктов данных, за которые он отвечает.

Ценность виртуализации данных в Data Mesh

Рис. 8. Публикация продуктов данных в корпоративном маркетплейсе данных.

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

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

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

ИСПОЛЬЗОВАНИЕ ПРОДУКТОВ ДАННЫХ С ПРИМЕНЕНИЕМ ВИРТУАЛИЗАЦИИ ДАННЫХ

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

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

Использование каталога данных систем виртуализации данных для поиска готовых продуктов данных

Каталог данных, предоставляемый сервером виртуализации данных, можно применять как маркетплейс данных. С его помощью пользователи могут найти в Data Mesh готовые продукты данных вместе со следующими метаданными, которые к ним относятся:

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

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

Использование продуктов данных в децентрализованной архитектуре Data Mesh с применением виртуализации данных

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

Авторизованные потребители могут воспользоваться продуктами данных из Data Mesh, получая доступ к ним посредством SQL-запросов или API-интерфейсов веб-сервисов. В любом случае данные предоставляются виртуальным образом, без создания и предоставления копий данных, которые нужно где-то хранить и которыми надо последовательно управлять. Извлечь данные из виртуального продукта данных можно путем выполнения SQL-запросов. Кроме того, можно публиковать хранимые запросы как веб-сервисы и вызывать их через REST API. Также есть возможность получить доступ к продуктам данных через другие интерфейсы, например, GraphQL.

Потребителями данных могут быть другие инструменты, например, BI-серверы, предназначенные для задач Data Science средства разработки и тестирования (notebooks), аналитические приложения и различные конвейеры интеграции данных.

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

Создание новых продуктов данных на основе других продуктов данных

Созданием новых продуктов данных, которые затем можно добавлять в Data Mesh (см. рис. 6), могут заниматься пользователи, работающие в различных предметных областях бизнеса. Сформировать новый продукт на сервере виртуализации данных можно путем комбинации одного или нескольких имеющихся продуктов данных с данными, взятыми из других источников, и создания на их основе нового виртуального представления (см. рис. 9). Чтобы воспользоваться данными из нового продукта данных, нужно запустить запрос, который обеспечит выполнение шагов, требуемых для предоставления нужных данных. Запрос к новому продукту данных позволяет эффективно использовать данные из других продуктов данных, размещенных в Data Mesh.

Ценность виртуализации данных в Data Mesh

Рис. 9. Потребители данных могут находить продукты данных, использовать содержащиеся в них данные, создавать новые продукты данных и публиковать их в маркетплейсе.

ВНЕДРЕНИЕ ФЕДЕРАТИВНОГО УПРАВЛЕНИЯ ДАННЫМИ С ИСПОЛЬЗОВАНИЕМ ВИРТУАЛИЗАЦИИ ДАННЫХ

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

Вместе с тем, некоторые данные, такие как мастер-данные (основные данные) и справочники НСИ, используются во всех предметных областях. А, например, конфиденциальная информация (в том числе персональные и финансовые данные) может располагаться в распределенном ландшафте данных, охватывающем не только локальные системы, но также облака и приложения SaaS. Эти данные тоже могут использоваться в разных предметных областях, поэтому необходимо, чтобы к этим данным применялись «глобальные» политики управления, обеспечивающие соответствие требованиям законодательства и регулирующих органов. Ключевая идея Data Mesh состоит в том, чтобы создавать продукты данных, которые можно широко использовать в рамках всего предприятия. Эти продукты данных должны отвечать изначально установленным требованиям и правилам политик. Ответственность за то, чтобы продукты данных, не отвечающие этим правилам, не публиковались в маркетплейсе данных, лежит на командах, работающих в отдельных предметных областях.

Если продукты данных создаются не зависящими друг от друга группами, работающими в разных предметных областях, то управление данными с помощью нескольких разрозненных инструментов становится проблемой. Для ее решения необходимо, чтобы как политики, действующие в рамках всего предприятия, так и политики, касающиеся отдельных предметных областей бизнеса, создавались с использованием общей платформы — тогда все эти политики можно легко использовать и применять совместно. Для данных, которые используются во всех предметных областях бизнеса (например, основных данных, персональных данных), нужны «глобальные» политики управления данными и спецификации правил. А для данных, за которые отвечают децентрализованные группы, работающие в разных предметных областях и создающие свои продукты данных, нужны «локальные» политики управления данными.

Таким образом, необходимо обеспечить выполнение следующего ряда требований в отношении управления данными в Data Mesh:

  • Должны быть и «глобальные» политики для управления данными, которые используются во всех предметных областях, и «локальные» политики для управления данными из конкретных областей бизнеса, в том числе связанных с безопасностью доступа к данным и конфиденциальностью данных.
  • Децентрализованным командам разрешено наследовать политики, используемые во всех предметных областях, если при создании продукта данных для конкретной предметной области берутся общеиспользуемые данные.
  • Децентрализованным командам предоставлена возможность устанавливать политики управления для продуктов данных, которыми они владеют и которые они создают. Эти политики могут быть унаследованы другими пользователями этих данных.
  • Обмениваться продуктами данных можно без перемещения данных.
  • Все обращения к совместно используемым продуктам данных и факты их применения фиксируются.
  • Предусмотрена возможность блокировать трансграничный обмен персональными данными, чтобы обеспечить требования регулирующих органов.

Общий подход к управлению данными в Data Mesh

Благодаря тому, что технологии виртуализации данных позволяют централизованно контролировать «глобальные» и «локальные» политики в отношении данных, появляется возможность управлять данными. В архитектуре Data Mesh предпочтение отдается децентрализации команд и владельцев данных, работающих в разных предметных областях и определяющих «локальные» политики управления данными, которые могут выполняться на сервере виртуализации данных.

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

Ценность виртуализации данных в Data Mesh

Рис. 10. Виртуализация данных обеспечивает управление данными и упрощает доступ к ним.

Рисунок 10 демонстрирует несколько важных моментов. Первый — создание совместно используемых сервисов данных на основе хранимых запросов, размещенных на сервере виртуализации данных, путем их публикации в виде веб-сервисов, что позволяет стандартизировать доступ к данным. Второй момент заключается в подключении сервера виртуализации данных к интегрированной системе управления мастер-данными и ее использовании в качестве источника данных — это упрощает интеграцию данных и обеспечивает согласованное виртуальное предоставление продуктов мастер-данных всем, кто работает в отдельных предметных областях бизнеса. Наконец, использование вложенных виртуальных представлений помогает управлять данными, поскольку представления, создаваемые на основе других представлений данных, можно использовать для разграничения доступа к данным он будет предоставляться только тем, у кого есть для этого необходимые полномочия. Эта возможность обеспечивает гибкость, поскольку несколько уровней вложенности позволяют предоставлять множество различных представлений интегрированных данных в соответствии с потребностями различных пользователей и приложений, защищая при этом конфиденциальные данные.

«Глобальное» и «локальное» управление данными

Управление «глобальными» и «локальными» данными позволяет управлять общеиспользуемыми продуктами данных (в том числе мастер-данными и разными видами конфиденциальных данных), применяя к ним «глобальные» политики, действующие в рамках всего предприятия, а также продуктами данных отдельных предметных областей, используя для этого «локальные» политики, определенные владельцами данных, которые работают в этих предметных областях. Мастер-данные при этом могут выступать в качестве источников для систем виртуализации данных — это дает возможность публиковать физические продукты мастер-данных (такие как «клиенты», «поставщики» и т. д.), опираясь только на виртуализацию данных, и использовать их, не создавая копий данных. Кроме того, такой подход позволяет публиковать подмножество мастер-данных в виде виртуальных продуктов мастер-данных. Поскольку они являются общеиспользуемыми данными, в каталоге сервера виртуализации данных можно определить глобальные политики для управления доступом к мастер-данным. Эти политики будут действовать, даже если эти данные используются в других виртуальных продуктах данных или применяются для создания новых продуктов.

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

Управление доступом к источникам данных

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

Совместное использование данных без их перемещения

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

Виртуализация данных позволяет все это реализовать, не прибегая к перемещению данных. При создании виртуальных продуктов данных интеграция данных осуществляется по мере необходимости, по требованию, при этом данные предоставляются без их копирования. Международным компаниям решения для виртуализации данных помогают обеспечивать соблюдение требований местного законодательства и регулирующих органов в отношении персональных данных — например, европейского регламента GDPR, действующего в Калифорнии законодательного акта CCPA или принятого в ЮАР закона POPI. Сохраняя данные в той стране или регионе, где они были созданы, и предоставляя управляемый доступ к источникам, можно обеспечить соответствие трансграничного обмена данными требованиям регуляторов.

Защита персональных и конфиденциальных данных

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

Управление доступом к продуктам данных

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

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

ОСНОВНЫЕ ВЫВОДЫ

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

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

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

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

Кроме того, этот подход позволяет быстро создавать новые продукты данных, легко развивать схемы продуктов данных и поддерживать управление их версиями. Каталог данных, работающий на сервере виртуализации данных, может использоваться для поиска продуктов данных, выяснения смысловых значений данных в бизнес-глоссарии и изучения их происхождения, давая возможность понять, каким образом и из чего эти продукты данных были созданы. Наконец, упрощается доступ и открывается широкий круг возможностей по использованию SQL, REST, ODATA и GraphQL без репликации данных.

Учитывая все эти преимущества, при внедрении Data Mesh стоит пристально присмотреться к платформе виртуализации данных компании Denodo.