Эксперты Yandex Cloud рассказали об эффективной работе с данными

Данных становится все больше. Чтобы извлекать из них пользу даже при невысоком бюджете на инфраструктуру, бизнесу необходимо грамотно организовывать хранилище. Кроме того, сегодняшние ИИ-нагрузки требуют совершенно новых подходов к работе с данными. 

На прошедшей в ноябре конференции Yandex Neuro Scale Kazakhstan эксперты поделились обновлениями ML-сервисов Yandex Cloud, а также эффективным подходом к организации хранения данных, который объединяет возможности LakeHouse и Object Storage. Главное об этих сервисах читайте на Digital Business.

 

Спикеры: 

Кузьма Лешаков, продуктовый архитектор платформы данных Yandex Cloud

Александр Киров, технический менеджер Yandex Cloud

Вячеслав Жуков, директор департамента данных АЭРО

Путь развития подходов к архитектуре данных в хронологическом порядке можно представить так: OLAP/OLTP – Data Warehouse – Data Lake – Data LakeHouse. 

  • OLAP (Online Analytical Processing) – быстрая аналитическая обработка данных. Подходит для работы с select-запросами, большим количеством информации, тяжелыми группировками и фильтрациями. Критерием эффективности выступает скорость отклика. 
  • OLTP (Online Transaction Processing) – обработка транзакций в реальном времени. Подход используется, когда запросов больше, но используемые в них данные не настолько массивные. Частыми операциями являются UPDATE и DELETE. SELECT может и не поддерживаться, а критерием эффективности выступает количество выполненных запросов.
  • Data Warehouse предполагает доступ к данным через инструменты системы управления базами данных (СУБД), часто является комбинацией технологий OLAP/OLTP и хранит обработанные данные. Обычно применяется для аналитики и отчетов, принятия решений на основе данных. Из возможных минусов – обработанные данные содержат неполную информацию и на их подготовку зачастую требуется много времени. 
  • Data Lake хранит данные в сыром виде – независимо от того, структурированы они или нет. Такой принцип делает архитектуру удобной, например, для машинного обучения. Недостаток в том, что все хранится вперемешку, так что озеро данных рискует превратиться в болото.

Александр Киров

Чтобы объединить преимущества Data Warehouse и Data Lake, а также не допустить появления болота, был придуман LakeHouse. Он обеспечивает: 

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

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

В LakeHouse клиентские приложения выполняют запросы через Query Engine (движок для чтения данных и выполнения запросов, – прим. Digital Business). Эти запросы идут напрямую в сырые данные, хранящиеся обычно в объектном хранилище S3 и использующие табличный формат данных. А само хранилище обеспечивает надежность и масштабируемость под любые объемы данных.

В Yandex Cloud хранилище S3 представлено сервисом Object Storage. Оно хранит данные в зашифрованном виде и использует тройную репликацию, чтобы обеспечить надежное хранение. Благодаря тому, что S3 и вычислительные ресурсы находятся в одной зоне доступности в Казахстане, Object Storage обеспечивает низкую задержку при работе с данными и экономически эффективно для построения слоя хранения для Data Lake. Сценарий использования S3 под задачи LakeHouse и ML/AI, а также совместное использование S3 и баз данных – основные тренды в современном использовании объектных хранилищ.

Кузьма Лешаков

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

В Yandex Cloud три класса хранения: Standard, Cold и Ice. Они не различаются по производительности – разница только в тарифах, которые зависят от срока хранения данных. 

Как АЭРО построила цифровую аналитику на LakeHouse

Кейс: компания АЭРО построила хранилище и систему обработки данных для digital-аналитики на базе LakeHouse для fashion-ритейлера. Компания быстро расширялась, и ей нужно было легко масштабируемое и быстрое решение на 25 источников. 

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

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

Когда данные очищены, обогащены и упакованы в Iceberg в виде витрин, нужно открыть к ним доступ для аналитиков и дата-сайентистов. Apache Spark™ для этого неудобен, так как при любом изменении запроса нужно перезапускать приложение. Этот фреймворк предназначен для ETL-пайплайнов – переноса данных из разных источников в единое хранилище, а не для интерактивной аналитики. 

Вячеслав Жуков

Решением стал Trino – распределенный SQL-движок для ad-hoc-запросов. Его преимущества: 

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

На практическом примере: допустим, данные о продажах хранятся на витрине Iceberg, а о возвратах – в сторонней операционной системе. Без Trino пришлось бы выгружать эту информацию из Postgres, добавлять в S3 и запускать ETL-задачу для соединения с витриной продаж. 

Когда используется Trino в связке с LakeHouse, аналитик может выполнить один федеративный запрос, который соединяет данные из двух систем.

Технология только начинает развиваться, и у нее есть несовершенства, свойственные молодым разработкам. Например, Iceberg неидеально работает с аналитикой в реальном времени. Trino тоже неоптимален: его ниша – low-latency-запросы к данным в Iceberg и федеративные доступы к внешним системам.

Результаты, которые подход LakeHouse принес бизнесу: 

  1. Полное понимание поведения пользователей: сквозная аналитика от клика до покупки и возврата.
  2. Единая точка консолидации данных. Подключены все ключевые источники: сайт, мобильное приложение, маркетинг, OMS, лояльность.
  3. Готовность к росту: архитектура масштабируется под увеличение объема данных, географию бизнеса и расширение аналитических и ML-сценариев.

Конференция Yandex Neuro Scale Kazakhstan в очередной раз показала, как Yandex Cloud подходит к развитию сервисов: учитывая растущие нагрузки, конкретные потребности бизнеса, а также конечных пользователей. А мы будем следить за дальнейшими обновлениями платформенных, инфраструктурных и ML-сервисов компании.

Yandex Scale KazakhstanYandex Cloud