При рассмотрении платформ данных может быть немного сложно рассмотреть все доступные сервисы и архитектурные варианты.
Платформа корпоративных данных часто состоит из хранилищ данных, моделей данных, озер данных и отчетов, каждый из которых имеет определенную цель и набор необходимых навыков. Напротив, за последние несколько лет появился новый дизайн под названием «домик у озера».
Универсальность озер данных и управление данными хранилища данных объединены в революционной архитектуре хранения данных, получившей название «хранилище данных».
В этом посте мы подробно рассмотрим хранилище данных, включая его компоненты, функции, архитектуру и другие аспекты.
Что такое Data Lakehouse?
Как следует из названия, хранилище данных — это новый тип архитектуры данных, который объединяет озеро данных с хранилищем данных для устранения недостатков каждого из них по отдельности.
По сути, система озерного домика использует недорогое хранилище для хранения огромных объемов данных в их исходной форме, подобно озерам данных. Добавление слоя метаданных поверх хранилища также дает структуру данных и расширяет возможности инструментов управления данными, подобных тем, которые можно найти в хранилищах данных.
Он хранит огромные объемы организованных, частично структурированных и неструктурированных данных, которые они получают из различных бизнес-приложений, систем и гаджетов, используемых в их организации.
В большинстве случаев озера данных используют недорогую инфраструктуру хранения с файловым интерфейсом прикладного программирования (API) для хранения данных в открытых общих форматах файлов.
Это позволяет многим командам получать доступ ко всем данным компании через единую систему для различных инициатив, таких как наука о данных, обучение с помощью машиныи бизнес-аналитика.
Особенности
- Недорогое хранение. Озеро данных должно иметь возможность хранить данные в недорогом объектном хранилище, таком как Google Cloud Хранилище, хранилище BLOB-объектов Azure, Amazon Simple Storage Service или изначально с использованием ORC или Parquet.
- Возможность оптимизации данных. Оптимизация макета данных, кэширование и индексирование — вот несколько примеров того, как хранилище данных должно иметь возможность оптимизировать данные, сохраняя при этом исходный формат данных.
- Слой транзакционных метаданных. В дополнение к необходимому недорогому хранилищу это обеспечивает возможности управления данными, которые имеют решающее значение для производительности хранилища данных.
- Поддержка декларативного API-интерфейса DataFrame: большинство инструментов ИИ могут использовать DataFrames для извлечения необработанных данных хранилища объектов. Поддержка декларативного API-интерфейса DataFrame расширяет возможности динамического улучшения представления и структуры данных в ответ на конкретную задачу обработки данных или искусственного интеллекта.
- Поддержка транзакций ACID: аббревиатура ACID, обозначающая атомарность, согласованность, изоляцию и надежность, является важным компонентом в определении транзакции и обеспечении согласованности и надежности данных. Раньше такие транзакции были возможны только в хранилищах данных, но Lakehouse предлагает возможность использовать их с озерами данных. также. При наличии нескольких конвейеров данных, включая одновременное чтение и запись данных, это решает проблему низкого качества последних данных.
Элементы Data Lakehouse
Архитектура хранилища данных разделена на два основных уровня на высоком уровне. Прием данных уровня хранилища контролируется платформой Lakehouse (т. е. озером данных).
Без необходимости загружать данные в хранилище данных или преобразовывать их в закрытый формат, уровень обработки может напрямую запрашивать данные на уровне хранения, используя ряд инструментов.
Затем эти данные смогут использовать приложения бизнес-аналитики, а также технологии искусственного интеллекта и машинного обучения. Экономика озера данных обеспечивается этой схемой, но, поскольку любой механизм обработки может считывать эти данные, предприятия могут свободно делать подготовленные данные доступными для анализа рядом систем. Производительность процессора и стоимость могут быть улучшены с помощью этого метода обработки и анализа.
Благодаря поддержке транзакций базы данных, которые соответствуют следующим критериям ACID (атомарность, непротиворечивость, изоляция и устойчивость), архитектура также позволяет многим сторонам одновременно получать доступ и записывать данные в системе:
- валентность относится к тому факту, что либо полная транзакция, либо ни одна из них не завершается успешно. В случае прерывания процесса это помогает избежать потери или повреждения данных.
- Согласованность гарантирует, что транзакции происходят предсказуемым и последовательным образом. Он поддерживает целостность данных, гарантируя, что все данные являются законными в соответствии с заранее определенными правилами.
- Isolation гарантирует, что до ее завершения никакая транзакция не может быть затронута какой-либо другой транзакцией в системе. Это позволяет нескольким сторонам одновременно читать и писать из одной и той же системы, не мешая друг другу.
- Долговечность гарантирует, что изменения в данных в системе продолжают существовать после завершения транзакции, даже в случае сбоя системы. Любые изменения, вызванные транзакцией, сохраняются в файле навсегда.
Архитектура Data Lakehouse
Databricks (новатор и разработчик концепции Delta Lake) и AWS — два основных сторонника концепции хранилища данных. Таким образом, мы будем полагаться на их знания и проницательность, чтобы описать архитектурную планировку домиков у озера.
Система хранилища данных обычно имеет пять уровней:
- Слой приема
- Уровень хранения
- Слой метаданных
- Уровень API
- Слой потребления
Слой приема
Первый уровень системы отвечает за сбор данных из различных источников и отправку их на уровень хранения. Уровень может использовать несколько протоколов для подключения к многочисленным внутренним и внешним источникам, включая объединение возможностей пакетной и потоковой обработки данных, таких как
- базы данных NoSQL,
- общий доступ к файлам
- CRM-приложения,
- веб-сайты,
- Датчики Интернета вещей,
- социальные медиа,
- Программное обеспечение как услуга (SaaS) и
- системы управления реляционными базами данных и др.
На этом этапе можно использовать такие компоненты, как Apache Kafka для потоковой передачи данных и Amazon Data Migration Service (Amazon DMS) для импорта данных из реляционных СУБД и баз данных NoSQL.
Уровень хранения
Архитектура Lakehouse предназначена для хранения различных типов данных в виде объектов в недорогих хранилищах объектов, таких как AWS S3. Используя открытые форматы файлов, клиентские инструменты могут считывать эти элементы непосредственно из хранилища.
Это позволяет многим API и компонентам уровня потребления получать доступ и использовать одни и те же данные. Уровень метаданных хранит схемы для структурированных и полуструктурированных наборов данных, чтобы компоненты могли применять их к данным по мере их чтения.
Платформа распределенной файловой системы Hadoop (HDFS), например, может использоваться для создания сервисов облачных репозиториев, которые разделяют вычисления и хранилище в локальной среде. Lakehouse идеально подходит для этих услуг.
Слой метаданных
Уровень метаданных — фундаментальный компонент хранилища данных, который отличает этот дизайн. Это единый каталог, который предлагает метаданные (информацию о других фрагментах данных) для всех элементов, хранящихся в озере, и позволяет пользователям использовать такие возможности администрирования, как:
- Консистентная версия базы данных видна параллельным транзакциям благодаря транзакциям ACID;
- кэширование для сохранения файлов облачного хранилища объектов;
- добавление индексов структуры данных с помощью индексации для ускорения обработки запросов;
- использование клонирования с нулевым копированием для дублирования объектов данных; а также
- для хранения определенных версий данных и т. д. используйте управление версиями данных.
Кроме того, уровень метаданных позволяет реализовать управление схемой, использовать топологии схемы хранилища данных, такие как схемы «звезда/снежинка», а также предоставлять возможности управления данными и аудита непосредственно в озере данных, повышая целостность всего конвейера данных.
Функции для развития и применения схемы включены в управление схемой. Отклоняя любые записи, которые не соответствуют схеме таблицы, принудительное применение схемы позволяет пользователям поддерживать целостность и качество данных.
Эволюция схемы позволяет модифицировать текущую схему таблицы, чтобы приспособиться к изменяющимся данным. Благодаря единому интерфейсу администрирования над озером данных также есть возможности контроля доступа и аудита.
Уровень API
Теперь присутствует еще один важный уровень архитектуры, содержащий ряд API-интерфейсов, которые все конечные пользователи могут использовать для более быстрого выполнения задач и получения более сложной статистики.
Использование API метаданных упрощает идентификацию и доступ к элементам данных, необходимым для данного приложения.
Что касается библиотек машинного обучения, некоторые из них, такие как TensorFlow и Spark MLlib, могут читать открытые форматы файлов, такие как Parquet, и напрямую обращаться к слою метаданных.
В то же время API-интерфейсы DataFrame предлагают больше возможностей для оптимизации, позволяя программистам упорядочивать и изменять разбросанные данные.
Слой потребления
Power BI, Tableau и другие инструменты и приложения размещаются на уровне потребления. Благодаря дизайну домика у озера все метаданные и все данные, хранящиеся в озере, доступны клиентским приложениям.
Дом у озера может использоваться всеми пользователями компании для выполнения всех видов работ. аналитические операции, включая создание информационных панелей бизнес-аналитики, выполнение SQL-запросов и задач машинного обучения.
Преимущества Data Lakehouse
Организации могут создать хранилище данных, чтобы унифицировать свою текущую платформу данных и оптимизировать весь процесс управления данными. Демонтируя разрозненные барьеры, соединяющие различные источники, хранилище данных может заменить потребность в отдельных решениях.
По сравнению с курируемыми источниками данных эта интеграция обеспечивает значительно более эффективную сквозную процедуру. Это имеет несколько преимуществ:
- Меньше администрирования: вместо того, чтобы извлекать данные из необработанных данных и подготавливать их для использования в хранилище данных, хранилище данных позволяет любым источникам, связанным с ним, иметь свои данные доступными и организованными для использования.
- Повышение рентабельности: Озера данных строятся с использованием современной инфраструктуры, которая разделяет вычисления и хранилище, что упрощает расширение хранилища без увеличения вычислительной мощности. Только использование недорогого хранилища данных приводит к экономически эффективной масштабируемости.
- Лучшее управление данными: Озера данных имеют стандартизированную открытую архитектуру, позволяющую лучше контролировать безопасность, метрики, доступ на основе ролей и другие важные компоненты управления. Объединяя ресурсы и источники данных, они упрощают и улучшают управление.
- Упрощенные стандарты: поскольку в 1980-х годах подключение было сильно ограничено, когда впервые были разработаны хранилища данных, стандарты локализованных схем часто разрабатывались внутри предприятий и даже отделов. Озера данных используют тот факт, что многие типы данных теперь имеют открытые стандарты для схемы, за счет приема многочисленных источников данных с перекрывающейся единой схемой для оптимизации процедур.
Недостатки Data Lakehouse
Несмотря на всю шумиху вокруг домиков на озере данных, важно помнить, что идея все еще очень нова. Обязательно взвесьте все недостатки, прежде чем полностью погрузиться в этот новый дизайн.
- Монолитная конструкция: Комплексный дизайн домика у озера предлагает несколько преимуществ, но также вызывает некоторые проблемы. Монолитная архитектура часто приводит к ухудшению обслуживания всех пользователей и может быть жесткой и сложной в обслуживании. Как правило, архитекторам и дизайнерам нравится более модульная архитектура, которую они могут настраивать для различных вариантов использования.
- Технология еще не совсем там: конечная цель влечет за собой значительный объем машинного обучения и искусственного интеллекта. Прежде чем домики у озера смогут работать так, как предполагалось, эти технологии должны развиваться дальше.
- Незначительный прогресс по сравнению с существующими структурами: До сих пор существует значительный скептицизм в отношении того, насколько большую ценность на самом деле принесут домики у озера. Некоторые недоброжелатели утверждают, что конструкция «озеро-склад» в сочетании с соответствующим автоматизированным оборудованием может обеспечить сопоставимую эффективность.
Проблемы Data Lakehouse
Может быть сложно внедрить метод «дома на озере данных». Из-за сложности составляющих его частей неправильно рассматривать хранилище данных как всеобъемлющую идеальную структуру или «одну платформу для всего».
Кроме того, из-за растущего внедрения озер данных предприятиям придется перемещать в них свои текущие хранилища данных, полагаясь только на обещание успеха без очевидной экономической выгоды.
Если в процессе передачи возникнут какие-либо проблемы с задержкой или сбои, это может оказаться дорогостоящим, трудоемким и, возможно, небезопасным.
По словам некоторых поставщиков, которые прямо или косвенно продают решения как хранилища данных, бизнес-пользователи должны использовать узкоспециализированные технологии. Они могут не всегда работать с другими инструментами, связанными с озером данных в центре системы, что усугубляет проблемы.
Кроме того, может быть сложно обеспечивать круглосуточную аналитику при выполнении критически важных для бизнеса рабочих нагрузок, что требует инфраструктуры с экономически эффективной масштабируемостью.
Заключение
Новейшая разновидность дата-центров за последние годы — Data Lakehouse.. Он объединяет различные области, такие как информационные технологии, программное обеспечение с открытым исходным кодом, облачных вычисленийи протоколы распределенного хранения.
Это позволяет предприятиям централизованно хранить все виды данных из любого места, упрощая управление и анализ. Data Lakehouse — довольно интригующая концепция.
Любая фирма имела бы значительное конкурентное преимущество, если бы у нее был доступ к универсальной платформе данных, которая была бы такой же быстрой и эффективной, как хранилище данных, и в то же время такой же гибкой, как озеро данных.
Идея все еще развивается и остается относительно новой. В результате может потребоваться некоторое время, чтобы определить, может ли что-то стать широко распространенным.
Нам всем должно быть любопытно, в каком направлении движется архитектура Lakehouse.
Оставьте комментарий