Навигация управления данными Склады, озера и озерные домики – CodesCode

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

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

Database: The Foundation

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

Основные отличительные особенности баз данных:

  • Хранение структурированных данных. Базы данных отлично справляются с обработкой структурированных данных, обеспечивая целостность данных с помощью предварительно определенных схем.
  • Эффективные запросы по строкам. Базы данных оптимизированы для запросов по строкам, и когда запрос “правильный”, база данных может быстро извлечь одну или несколько записей, используя индексы.
  • Простое удаление и обновление. Базы данных эффективно обрабатывают обновление или удаление отдельной строки.

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

В качестве классических вариантов SQL можно отметить PostgreSQL и MySQL, а среди NoSQL примерами являются MongoDB и Cassandra. Сам термин “NoSQL” является общим и включает базы данных, ориентированные на различные сценарии использования.

изображение концепции базы данных

Data Warehouse: Structured Insights

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

Основные отличительные особенности хранилищ данных:

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

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

Некоторые известные примеры включают Snowflake, Amazon Redshift и Apache Hive.

изображение склада

Data Lake: A Flood of Possibilities

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

Основные отличительные особенности озер данных:

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

Хотя data-озера прекрасно подходят для хранения больших данных, они могут стать неуклюжими и превратиться в печально известные “болота данных”, если не обеспечить должное управление и каталогизацию данных. Типичное понятие data-озера не включает в себя инструменты для управления данными, управления или запросов. Некоторые компании решают эту проблему, введя концепцию “data-дома”, чтобы улучшить эти функциональности.

Изображение воды

Data-дом: лучшее из двух миров

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

Основные особенности data-домов включают:

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

Популярными примерами систем data-дома являются Delta Lake (от Databricks), слой хранения с открытым исходным кодом, предоставляющий ACID-транзакции и соблюдение схемы для data-озер, и проект Iceberg, открытый исходный код, сосредоточенный на эффективном и транзакционном формате таблиц для data-озер, предлагающий ту же простоту и надежность, что и data-хранилища.

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

Дом стоящий в воде

Data Mesh: Данные как продукт

Концепция data mesh предлагает новый взгляд на данные, рассматривая их как продукт, управляемый специализированными командами, ответственными за качество, время работы и многое другое. Этот продукт-ориентированный подход может принимать различные формы, от отобранных наборов данных до API, и бизнес-подразделения внутри компании могут независимо получать доступ и использовать эти данные.

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

Основные принципы data mesh включают:

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

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

Сочетание подходов

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

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

Поделиться этой статьей


Leave a Reply

Your email address will not be published. Required fields are marked *