Big Data – термин, который вы можете часто встретить на просторах интернета. Вы можете найти множество статей, докладов и прочих материалов по этому термину, но давайте попробуем разобраться в нём, потому что он не так страшен, как о нём говорят.

Начнем с базового определения что такое Big Data.

Big Data – это разнообразные данные, поступающие с высокой скоростью, объем которых постоянно растет.

Но на самом деле каждый понимает под Big Data что-то своё.

Потому что нет четкой границы, когда начинается эта пресловутая Big Data.

Никто не может сказать четкие критерии Big Data: объём данных, количество строк, количество колонок и прочее.

По моему мнению Big Data – это просто термин. И его можно применить почти к любому объёму данных.

Давайте рассмотрим это на примере. Вспомним нашу любую компанию ООО "Рога и Копыта".

У неё есть таблица с пользователями и она максимально "широкая".

Давайте разбираться по порядку.

Под "широкой" таблицей я понимаю, что по одному определенному пользователю у нас есть много информации:

  • Из основного:

    • Фамилия

    • Имя

    • Дата регистрации

  • Из дополнительного:

    • Гендер

    • Дата рождения

    • Город проживания

    • Семейное положение и множество других атрибутов.

И в моём понимании – это уже Big Data, потому что на основании одной таблицы мы можем сделать множество разнообразных выводов по нашему пользователю или пользователям.

Давайте всё рассматривать на примерах.

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

Как это использовать? Вариантов использования на самом деле достаточное количество, но как поступать с данными – это решение Product Owner. Потому что он определяет вектор развития продукта, как я писал в прошлой статье Как растут компании. Но из такого самого очевидного.

Мы можем составить "портрет" наших покупателей и у нас появляется возможность предоставлять им персонализированные предложения.

Также данная таблица позволяет нам получать множество информации по бизнесу:

  • сколько у нас мужчин, женщин и других гендеров;

  • как делятся пользователи по возрасту;

  • их гео-распределение;

  • и другие критерии для оценки бизнеса.

По итогу: благодаря одной таблице мы можем покрыть множество задач бизнеса, которые помогут ему расти.

Если мы сделаем качественный гео-анализ, то сможем запускать локальные акции на области, города, районы.

Если мы сделаем качественный анализ по возрасту, то сможем предлагать лучший ассортимент для своей целевой аудитории.

Стоит также отметить, что чем детальнее у нас данные – тем более персонализированное предложение мы сможем сделать для нашего покупателя.

Примеры BigData

Давайте ещё немного обсудим, когда стоит применить термин Big Data.

Накопление разнообразных данных

Иногда под термином Big Data также понимают – накопление всех данных, которые как-то связаны с компанией и эти данные могу быть как структурированные, так и неструктурированные.

Примеры структурированных данных:

  • Таблицы из OLTP, OLAP баз.

  • Физические файлы, которые содержат таблицы: .csv, .parquet, etc. Примеры неструктурированных данных:

  • Изображения.

  • Файлы формата .log.

  • json-файлы, которые являются частым видом передачи информации.

  • etc

Проблемы вычислений

Также термин Big Data употребляют, когда одна "машина" (компьютер, сервер, etc) не могут обработать нужное количество данных для аналитики.

Но на самом деле это не проблема, потому что умные люди нашли решение и начали создавать инструменты, которые позволяют распределить нагрузку между несколькими "машинами".

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

ClickStream / КликСтрим

Когда внедряется кликстрим к нему тоже часто применяется термин Big Data, потому что он создаёт для компании большое количество информации по действиям пользователей.

Если давать определение, то кликстрим – это платформа для сбора событий с приложения.

Дайте рассмотрим это на примере: наша компания ООО "Рога и копыта" имеет аудиторию примерно 10 млн. людей ежедневно.
Каждый человек пользуется нашим приложением примерно по 20 минут в день и за день он совершает в районе 2000-3000 кликов внутри приложения.

Теперь если это всё посчитать, то за каждый день кликстрим нам генерит примерно 25 млрд. записей.

Понятное дело что эта величина посчитана "на коленке", но такой поток данных – реальность и с такими большими данными нужно работать по-особенному, потому что они уже не поместятся в оперативную память вашей "машины".

Если взять какие-то мировые компании, то количество событий, которые они записывают и хранят в разы больше, чем в примере выше.

Резюме

Вот мы и рассмотрели варианты появления Big Data в проектах.

Если резюмировать, то основные критерии Big Data, которые я бы выделил:

  1. Возможность извлечь большое количество инсайдов из данных.

  2. Разнообразие данных.

  3. Высокая скорость поступления данных.

  4. Большой объём.

И тут ещё стоит упомянуть, что для каждого критерия стоит использовать свой инструмент. Если вы изучили какой-то фреймворк, то не стоит его применять для работы со всеми данными, всегда стоит искать подходящий.

Старайтесь избегать ситуаций, когда вы микроскопом забиваете гвозди. Для каждой задачи свой инструмент.

И что я хотел бы сказать в конце.

Big Data – это просто термин и для каждого это что-то своё, поэтому если у вас на интервью или в свободном общении возникает тема обсуждения Big Data, то уточните у собеседника что он под этим понимает.


Также если вам необходима консультация/менторство/мок-собеседование и другие вопросы по дата-инженерии, то вы можете обращаться ко мне. Все контакты указаны по ссылке.

Комментарии (1)


  1. Anarchist
    28.09.2024 11:34

    Ктулху оллмайтовый, шо за кринж? Гендер, инсайД?