BI Consult Desktop Logo BI Consult Mobile Logo
  • Russian BI Исследование российских bi
  • Перейти на Fine BI
  • Контакты
  • +7 812 334-08-01
    +7 499 608-13-06
  • Отправить сообщение
  • Главная
  • Продукты Эксперт-BI
    • Дистрибуция
    • Розничная торговля
    • Производство
    • Операторы связи
    • Страхование
    • Банки
    • Лизинг
    • Логистика
    • Нефтегазовый сектор
    • Медицина
    • Сеть ресторанов
    • E-Commerce
    • Сельское хозяйство
    • Энергетика
    • FMCG
    • Девелоперы
    • Маркетплейсы
    • Пищевая промышленность
    • Фармацевтика
    • Построение Data Platform
    • Цифровая трансформация
    • Управление по KPI
    • Финансы
    • Продажи
    • Склад
    • HR
    • Маркетинг
    • Внутренний аудит
    • Категорийный менеджмент
    • S&OP и FP&A
    • Геоаналитика
    • Цепочки поставок (SCM)
    • AutoML
    • Process Mining
    • IBP
    • ИТ (CIO)
    • Закупки
  • Платформы
    • Системы бизнес-анализа (BI)
    • Интегрированное бизнес-планирование (IBP)
    • Хранилища данных (DWH / Lakehouse)
    • Каталоги данных (Data Catalog)
    • Системы ETL и ELT
    • AI / Исскуственный интеллект
    • Шина данных (ESB)
    • Система управления мастер-данными (MDM)
    • Семантический слой
  • Услуги
    • Переход на отечественные BI и DWH системы
    • Консалтинг
    • Пилотный проект
    • Обучение и сертификация
    • Бесплатное обучение
    • Поддержка
    • Технические задания
    • Сбор требований для проекта внедрения BI-системы
    • CI/CD для DWH
    • Аудит BI приложений и DWH
    • Выделенная команда
    • Настойка и поддержка баз данных
    • Разработка BI Стратегии
    • Styleguide для BI-системы
    • Как выбрать BI-систему
  • Курсы
    • Учебный курс Информационная грамотность (Data Literacy)
    • Учебный курс для бизнес-аналитиков
    • Учебный курс для системных аналитиков
    • Учебный курс по Data Governance
    • Учебный курс Как стать CDO
    • Учебный курс Современная архитектура хранилища данных
    • Учебный курс по Fine BI
    • Учебный курс по FineReport
    • Учебный курс по DWH
    • Учебный курс по Data Science (ML, AI)
    • Учебный курс по PostgreSQL
    • Учебный курс по Greenplum
    • Учебный курс по Apache Airflow и NiFi
    • Учебный курс по Open-source BI
    • Учебный курс по ClickHouse
    • Учебный курс по DataLens
    • Учебный курс по Loginom
    • Учебный курс по Modus BI и ETL
    • Учебный курс по Visiology
    • Учебный курс по dbt (Data Build Tool)
  • Компания
    • Руководство
    • Новости
    • Клиенты
    • Карьера
    • Скачать
    • Контакты

BI

  • FineBI
  • FineReport
  • FineDataLink
  • FineChatBI (FineAI)
  • Коннекторы данных из 1С в BI
  • Airflow / Nifi
  • Visiology
  • PIX BI
  • Modus BI
  • Yandex.DataLens
  • Open-source BI: Superset/Metabase
  • Luxms BI
  • AW BI + Alpha BI
  • FlyBI + Форсайт. Аналитическая Платформа
  • Loginom
  • Триафлай
  • AI / Исскуственный интеллект
  • Optimacros
  • Навигатор BI
  • Семантический слой

СУБД

  • Arenadata
  • ClickHouse
  • Greenplum
  • Postgres Professional
  • TData

Другое

  • Построение Data Platform
    • Аналитическое хранилище данных
    • Data Lake и Data Engineering
    • Подробнее про Data Lake
    • Внедрение Lakehouse
      • Apache Doris
      • StarRocks
      • Trino
    • Миграция витрин из пропиетарных DWH на новый стек
    • Учебный курс "Современная архитектура хранилища данных"
Главная » Курсы по системам бизнес-анализа и методологии » Учебный курс Современная архитектура хранилища данных » Как использовать Apache Hudi для управления Data Lake: руководство для начинающих пользователей

Как использовать Apache Hudi для управления Data Lake: руководство для начинающих пользователей

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

Apache Hudi можно сравнить с большой коробкой, куда можно сложить все свои игрушки, то есть данные. Он помогает упорядочить информацию так, чтобы Вы всегда могли найти нужную Вам «игрушку». С помощью Apache Hudi Вы всегда сможете добавлять новые «игрушки в коробку», не захламляя его.  Если в какой-то момент Вам не понравится результат Вашей деятельности, Вы всегда сможете вернуться назад, отменить все изменения и получить первоначальный вид «коробки». 

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

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

 

Что такое Apache Hudi?

Apache Hudi (сокращение от Hadoop Upserts and Incrementals) - это инструмент, позволяющий легко управлять озерами данных. Он обеспечивает единый подход к хранению и управлению данных, а также оптимизацию запросов к данным, находящимся в озерах данных. Hudi поддерживает как пакетные, так и потоковые данные и позволяет выполнять инкрементные обновления, откат и запросы в режиме PIT.

 

Для чего предназначен Apache Hudi?

Apache Hudi значительно упрощает управление озерами данных, предоставляя последовательный способ хранения и запроса данных. Он позволяет выполнять инкрементные обновления, что означает, что Вы можете добавлять новые данные в озеро данных без необходимости полностью переписывать весь набор данных. Это позволяет сэкономить значительное количество времени и ресурсов.

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

 

Как использовать Apache Hudi?

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

После установки Hudi можно приступать к созданию таблиц в озере данных. Hudi работает с несколькими типами таблиц:

 

  • Внутренние таблицы (Hive-managed tables)

Внутренние таблицы - это таблицы в Apache Hudi, которые управляются системой хранения данных Hive. Эти таблицы хранятся в том же формате, что и традиционные таблицы Hive, и могут быть запрошены с помощью HiveQL (языка запросов Hive). Если Вы уже хотя бы немного знакомы с Hive, Вы можете легко начать использовать внутренние таблицы в Apache Hudi без необходимости изучения нового языка запросов. Кроме того, внутренние таблицы совместимы с другими инструментами и системами, использующими Hive, что позволяет легко интегрировать Hudi в существующую инфраструктуру данных.

 

  • Внешние таблицы (External tables)

Внешние таблицы в Apache Hudi - это таблицы, которые не управляются Hudi. Данные, предназначенные для этих таблиц, хранятся во внешнем источнике, например в объектном хранилище или озере данных. Метаданные таблицы хранятся в Hudi, который предоставляет API для запросов к этим данным. Благодаря этому Вы можете продолжать использовать существующие системы и инструменты хранения данных и при этом пользоваться всеми преимуществами Hudi, такими как инкрементное обновление или откат до предыдущего состояния.

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

 

  • Таблицы на основе наборов данных (dataset-based tables)

Таблицы на основе наборов данных в Apache Hudi - это тип таблиц, основанный на концепции наборов данных. Набор данных - это коллекция данных, которая хранится в определенном формате, например Avro или Parquet. Наборы данных можно запрашивать с помощью API чтения Hudi и обновлять с помощью API записи Hudi.

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

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

Как только Ваши данные загружены, Вы можете отправлять запросы, используя возможность API чтения Hudi. API чтения работает с несколькими типами запросов, включая:

  • Full table scan (FTS)
  • Инкрементные запросы
  • PIT запросы

 

У Hudi есть интерфейс командной строки, с помощью которого можно управлять озером данных.

Рис. 01

 

Пример разработки конвейера  данных с использованием Hudi, Kafka и GCP

Конвейер данных, использующий Apache Kafka, Apache Hudi и Google Cloud Platform (GCP) может быть построен следующим образом:

  • Данные поступают из различных источников и отправляются в топик Kafka в виде потока записей.
  • Потребитель Kafka считывает поток записей из топика и отправляет его заданию GCP Cloud Dataflow.
  • Задание Cloud Dataflow обрабатывает данные, выполняет все необходимые преобразования и записывает их в ведро GCS или набор данных BigQuery.

 

Apache Hudi настроен таким образом, чтобы для оптимизации работы Data Lake можно было использовать бакеты GCS или наборы данных BigQuery, что позволяет значительно расширить  функционал в плане управления данными: версионирование данных, уплотнение данных, запросы к данным поверх данных, хранящихся в бакетах GCS или наборах данных BigQuery.

Для обработки данных используются самые разные сервисы, такие как GCP, Cloud Dataproc, Apache Spark или Apache Hive. Hudi может интегрироваться со всеми этими сервисами и предоставлять своим пользователям такие возможности, как инкрементное чтение данных, чтение данных на основе моментальных снимков и UPSERT.

Обработанные данные можно хранить в бакетах  GCS, наборах данных BigQuery или в любой другой системе хранения, например, в Cloud Storage или Bigtable.

Визуализировать данные с помощью таких сервисов GCP, как BigQuery или Data Studio.

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

С помощью Apache Hudi запросы к данным, хранящимся в Data Lake, можно отправлять на нескольких языках:

  • SQL – пользователи могут запрашивать данные, используя привычный синтаксис SQL. Кроме того, данная функция позволяет Hudi интегрироваться с другими инструментами и фреймворками, созданными  на базе SQL.
  • HiveQL (Hive Query Language) - пользователи могут запрашивать данные, используя знакомый синтаксис Hive. Кроме того, данная функция позволяет Hudi интегрироваться с другими инструментами и фреймворками, созданными  на базе Hive.
  • Java API – разработчики могут писать Java-код для оптимизации запросов к данным. Кроме того, данная функция позволяет Hudi легко интегрироваться с другими инструментами и фреймворками, созданными  на базе Java.
  • Spark SQL - пользователи могут запрашивать данные, используя знакомый синтаксис Spark SQL. Кроме того, данная функция позволяет Hudi интегрироваться с другими инструментами и фреймворками, созданными  на базе данного языка.

 

Сравнение Apache Hudi и Apache Spark

Рис. 02

 

Заключение

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

 

Узнать стоимость решенияЗапросить видео презентацию

← Предыдущая статья
Apache Parquet
Следующая статья →
Ликбез по методологиям проектирования хранилищ данных

Решения

Анализировать ФинансыУвеличивайте ПродажиОптимальный Склад и ЛогистикаМаркетинговые Метрики

Клиенты
  • ПАО «Транснефть» – крупнейшая российская нефтепроводная компания. «Транснефть» обеспечивает транспортировку более 85% добываемых в России нефти и нефтепродуктов.

  • ООО "Уральская транспортная компания" — это транспортно-логистическая компания, специализирующаяся на железнодорожных перевозках грузов, создана в 2009 году.

  • Ситилинк

    Электронный дискаунтер «Ситилинк» — один из крупнейших онлайн‑ритейлеров России (3‑е место по объему онлайн‑продаж в рейтинге Data Insight и Ruward 2016 года E‑commerce Index TOP‑100, 8 место в рейтинге Forbes «20 самых дорогих компаний Рунета — 2017»). На рынке работает 9 лет.

    В ассортименте дискаунтера более 50 000 наименований компьютерной цифровой, бытовой и садовой техники, офисной мебели и других товарных категорий. Более 700 мировых брендов в портфеле. Около 4 000 сотрудников по всей России

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

  • Решения
    • Дистрибуция
    • Розничная торговля
    • Производство
    • Операторы связи
    • Страхование
    • Банки
    • Лизинг
    • Логистика
    • Нефтегазовый сектор
    • Медицина
    • Сеть ресторанов
    • E-Commerce
    • Энергетика
    • Фармацевтика
  • Услуги
    • Переход на отечественные BI и DWH
    • Консалтинг
    • Пилотный проект
    • Обучение и сертификация
    • Бесплатное обучение
    • Техническая поддержка
    • Технические задания
    • Сбор требований для проекта внедрения BI-системы
    • CI/CD для DWH
    • Аудит BI приложений
    • Выделенная команда
    • Настойка и поддержка баз данных
    • Разработка BI Стратегии
    • Styleguide для BI-системы
    • Как выбрать BI-систему
  • Платформы
    • FineBI
    • FineReport
    • FineDataLink
    • Коннекторы данных из 1С в BI
    • Airflow + NiFi
    • Visiology
    • Luxms BI
    • Modus BI
    • PIX BI
    • Arenadata
    • ClickHouse
    • Greenplum
    • Postgres Professional
    • Open-source BI: Superset/Metabase
    • Loginom
    • Yandex.DataLens
    • AI / Исскуственный интеллект
    • Optimacros
    • Шины данных
  • Курсы
    • Учебный курс Информационная грамотность
    • Учебный курс для бизнес-аналитиков
    • Учебный курс для системных аналитиков
    • Учебный курс по Data Governance
    • Учебный курс Как стать CDO
    • Учебный курс Современная архитектура хранилища данных
    • Учебный курс по Fine BI
    • Учебный курс по FineReport
    • Учебный курс по DWH
    • Учебный курс по Data Science (ML, AI)
    • Учебный курс по PostgreSQL
    • Учебный курс по Apache Airflow и NiFi
    • Учебный курс по Open-source BI
    • Учебный курс по ClickHouse
    • Учебный курс по DataLens
    • Учебный курс по Loginom
    • Учебный курс по Modus BI и ETL
    • Учебный курс по Visiology
    • Учебный курс по dbt
  • Функциональные решения
    • Создание Data Lake
    • Цифровая трансформация
    • Управление по KPI
    • Финансы
    • Продажи
    • Склад
    • HR
    • Маркетинг
    • Внутренний аудит
    • Категорийный менеджмент
    • S&OP и прогнозная аналитика
    • Геоаналитика
    • Цепочки поставок (SCM)
    • AutoML
    • Process Mining
    • Сквозная аналитика
  • Компания
    • О нас
    • Руководство
    • Новости
    • Клиенты
    • Скачать
    • Контакты
    • Политика конфиденциальности
RutubeVkontakteLinkedInYouTube
ООО "Би Ай Консалт",
ИНН: 7811437757,
ОГРН: 1097847154184
199178, Россия,
Санкт-Петербург,
6-ая линия В.О., Д. 63, 4 этаж
Тел: +7 (812) 334-08-01
Тел: +7 (499) 608-13-06
E-mail: info@biconsult.ru

 

 

 

 

 

×

Пользуясь сайтом, вы соглашаетесь с использованием cookies и политикой конфиденциальности.