Как опередить спрос на модные новинки с облачными технологиями Big Data: кейс компании Boden по Apache Kafka и Snowflake

курсы по Apache Kafka, Kafka обучение, обучение большим данным, аналитика больших данных, курсы аналитик Big Data, обработка данных, большие данные, Big Data, Kafka, архитектура, предиктивная аналитика, ритейл, цифровая трансформация, цифровизация, SQL, DWH, облака

Интерактивная аналитика больших данных — одно из самых востребованных и коммерциализированных приложений для технологий Big Data. В этой статье мы рассмотрим, как крупный британский ритейлер запустил цифровую трансформацию своей ИТ-архитектуры, уходя от традиционного DWH с пакетной обработкой к событийно-стриминговой облачной платформе на базе Apache Kafka и Snowflake.

Зачем модному ритейлеру Apache Kafka: постановка задачи с точки зрения бизнеса

Компания Boden – это британский ритейлер одежды, основанный в 1991 году. Продажи идут онлайн и по каталогам. Впервые сайт компании boden.com был запущен еще в 1999 году и постоянно развивался. Однако, сегодня, когда шопинг и многие другие активности переходят в интернет, ритейл должен реагировать на запросы пользователей в режиме реального времени. Например, быстро реагировать на возросший интерес и всплеск спроса, вызванный появлением знаменитости в одежде бренда. Поэтому Boden начал собственный путь цифровой трансформации с потоковой передачей событий и Apache Kafka, перезапуская существующие монолиты с пакетной обработкой.

С учетом многоканального подхода, когда запросы от пользователей могут приходить с разных сторон, было решено разработать новую ИТ-архитектуру на микросервисах и потоковой передаче событий, что удовлетворить две насущные потребности [1]:

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

Примечательно, что Boden решил не управлять Kafka самостоятельно на базе собственной ИТ-инфраструктуры, а воспользоваться облачным сервисом, таким как Confluent Cloud. Это решение от разработчиков Apache Kafka, включает полностью управляемые компоненты данной стриминговой платформы, в т.ч. реестр схем, более 100 коннекторов и ksqlDB, предоставляя пользователю всю мощь потоковой обработки событий в реальном времени без накладных затрат на операции развертывания и сопровождения [2]

Облачные технологии интерактивной аналитики больших данных: внедрение и результаты использования

Переход на Confluent Cloud позволил Boden сосредоточиться на интеграции микросервисов без их связывания, разделяя основные системы, содержащие несколько доменов данных, от сторонних. Это ускорило циклы разработки и реализовало ИТ-архитектуру, управляемую событиям. Такое решение дает возможность непосредственного подключения к платформе данных, не беспокоясь о сложности базовой инфраструктуры и способах ее масштабирования. В качестве первого проекта проверки концепции была создана служба розничных складских запасов для предоставления актуальных данных с учетом изменения из-за онлайн-заказов и покупок в магазине.

Также в качестве пилотного проекта был выбран сервис управления информацией о продукте, чтобы данные из него, были доступны для других систем, таких как веб-сайт или каналы продаж на рынке, как можно быстрее. Компании нужен был способ представить изменения в данных о продуктах как событие, которое может использоваться другими сервисами без двухточечной интеграции. Apache Kafka как платформа потоковой обработки событий отлично позволяет сделать это, сохраняя информацию о событиях в виде сообщений в своих топиках. Таким образом, любая система может получить информацию о продукте почти в реальном времени, подписавшись на нужный топик с событиями. А наличие реестра схем (Schema Registry), гарантирует прямую и обратную совместимость с поддержкой версий структуры данных. В результате аналитики Boden могут постоянно настраивать и улучшать атрибуты продажи продуктов и очень быстро показывать эти изменения пользователям по различным каналам. Например, если модные селебрити носят одежду бренда, это быстро выделяется и показывается на сайте интернет-магазина, чтобы клиенты могли сразу найти этот продукт [1].

Разумеется, цифровая трансформация Boden в технологическом плане основана не только на Apache Kafka. Также было внедрено облачное хранилище аналитических данных Snowflake, которое не использует существующие СУБД или Big Data платформы типа Hadoop. В Snowflake используется новый механизм SQL с уникальной SaaS-архитектурой, которая объединяет традиционную СУБД с общим диском и базу данных без совместного использования. Как и в случае архитектуры с общими дисками, Snowflake использует центральное хранилище для постоянных данных, доступное со всех вычислительных узлов. При этом, подобно архитектуре без совместного использования, Snowflake обрабатывает запросы, используя вычислительные кластеры массивно-параллельной обработка (MPP), где каждый узел хранит часть всего набора данных локально. Этот подход обеспечивает простоту управления данными в архитектуре с общим диском, но с преимуществами производительности и масштабирования от архитектуры без разделения ресурсов [3].

Snowflake и Apache Kafka используются Boden совместно, чтобы обеспечить возможность интерактивной аналитики больших данных за счет доступа к ним почти в реальном времени, включая как крупные датасеты, так и быстро изменяющиеся и часто возникающие наборы данных, такие как веб-клики. Непрерывный поток кликов и KSQL-DB используются для агрегирования и организации необработанных данных с веб-сайта и передачи их на платформу Snowflake, которая затем сопоставляется с традиционными данными бизнес-аналитики. Это применяется для анализа веб-сеансов в сравнении с заказами и предоставления бизнес-аналитикам доступа к данным о пользователях, таких как уходы и предпочтения при покупке. Общая доступность всех этих сведений позволяет анализировать больше данных по мере их появления, агрегировать и улучшать их по мере поступления, повышая качество работы с клиентами.

Успешный опыт тестирования и промышленной эксплуатации новой парадигмы на базе облачных платформ Apache Kafka и Snowflake стал драйвером дальнейшей цифровизации компании Boden. Ритейлер продолжает создавать новые корпоративные стандарты для своих бизнес-событий и шаблонов архитектуры доменных служб, включая сервисы агрегации, которые могут потреблять несколько событий домена и предоставлять агрегированные представления данных (например, продукт, цена, изображение и запасы на складе) для внешних систем и сторонних сайтов [1]. Завтра мы продолжим разговор про Apache Kafka и разберем, какие Python-клиенты существуют для этой Big Data платформы потоковой обработки событий и чем они отличаются друг от друга. А о другом кейсе практического использования Confluent Cloud читайте в нашей новой статье про CDC-репликацию данных с помощью Kafka и Debezium.

Узнайте больше практических примеров по администрированию, разработке и эксплуатации Apache Kafka для потоковой аналитики больших данных в проектах цифровизации частного бизнеса, а также государственных и муниципальных предприятий, вы узнаете на специализированных курсах в нашем лицензированном учебном центре обучения и повышения квалификации для разработчиков, менеджеров, архитекторов, инженеров, администраторов, Data Scientist’ов и аналитиков Big Data в Москве:

 

 

Источники

  1. https://www.confluent.io/blog/digital-transformation-in-retail-using-kafka/
  2. https://www.confluent.io/confluent-cloud/
  3. https://ru.bmstu.wiki/Snowflake

 

Поиск по сайту