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

Что такое большие данные

Если обобщить, то биг дата — это большой объем информации, который компания собирает и хранит для последующего использования. Еще когда говорят, что компания использует большие данные, часто имеют в виду не сами данные, а технологии для их обработки.

Выходит, что у компании есть какие-то источники данных, сами данные, оборудование и программное обеспечение для хранения и обработки этой информации. Все это вместе можно включить в определение big data.

Какие данные можно считать большими

Чтобы отделить большие данные от обычных, нужно ответить на вопрос: «big data — это сколько?». Таблица в Экселе на 500 000 строк — это большие данные? А если строк миллиард? Текстовый файл на тысячи слов, который весит 2 мегабайта, — это много? А распечатки графиков температуры всех метеостанций Архангельской области — много или еще недостаточно?

Тут многие скажут, что эти примеры представляют собой довольно внушительное количество информации. Действительно, с такой точки зрения, все перечисленное — большие данные. Но что вы скажете про таблицу в Экселе на миллиард строк? Это тоже большие данные — и куда побольше тех!

На интуитивном уровне специалисты, далекие от big data, привыкли называть большими данными любой объем информации, который сложно удержать в голове и/или который занимает много места. И такое интуитивное определение, конечно же, неправильно.

Однозначно отделить формат больших данных от обычных помогут три критерия.

Данные должны быть цифровыми. Книги в национальной библиотеке или стопки документов в архиве компании — это данные, и часто их много. Но термин big data означает только цифровые данные, которые хранятся на серверах.

Данные должны поступать в объективно больших объемах и быстро накапливаться. Например, база заказов интернет-магазина по продаже колясок может быть большой: 10 миллионов заказов за 20 лет, но пополняется она со скоростью 100 заказов в сутки — это не большие данные. Фильм в высоком качестве может занимать десятки гигов, но со временем его размер не растет — это тоже не big data.

А вот записи показателей пары сенсоров в двигателе Боинга, поступающие в количестве несколько гигабайт в час и загружаемые на диагностический сервер производителя авиатехники — это уже big data.

Данные должны быть разнородными и слабо структурированными. Заказы в онлайн-магазине упорядочены, из них легко извлечь дополнительные статистические параметры, например, средний чек или самые популярные товары. Поэтому эти данные не относят к big data.

Показания датчиков температуры с корпуса самолета, записанные за последние 6 месяцев, — информация, в которой есть польза, но не очень понятно, как ее извлечь. Можно, конечно, рассчитать средние значения температуры за бортом самолета за полгода, но какой в этом смысл? А если погрузиться в анализ этих данных глубоко — можно вытащить много неочевидной информации. Например, о длительности перелетов, скорости набора высоты, климатических условиях за бортом и так далее. Информация интересная и полезная, но трудноизвлекаемая, значит, это большие данные.

Этот критерий не всегда обязательный. Иногда большие объемы структурированных данных, которые постоянно пополняются, относят к формату big data, особенно если их используют для машинного обучения или выявления неочевидных закономерностей. То есть если к структурированным данным применяют методы анализа big data, можно сказать, что это они и есть.

Итак, большие данные — это трудноанализируемая цифровая информация, накапливаемая со временем и поступающая к вам солидными порциями

Ответ на вопрос «Что такое big data в IT?» не так прост. Это не только сами данные, но и принципы работы с ними. Кстати, иногда эти принципы применяют и к анализу «маленьких» данных — например, можно построить модель на основе однородной информации или совсем небольшой клиентской базы.

Зачем нужна big data

Когда в любом IT-проекте начинают работать с данными, в первую очередь анализируют наиболее очевидные, значимые и понятные показатели. Так, если речь идет об онлайн-торговле, сначала смотрят на средние чеки заказов, топ продаж и объемы складских запасов. Когда речь идет о самолетах — смотрят скорость, высоту, расход топлива.

Сбор и анализ очевидных метрик позволяет вносить в систему простые и понятные корректировки. Такие улучшения практически сразу дают ощутимый результат. Это называется «сбор фруктов с нижних веток дерева».

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

Например, в онлайн-торговле можно собирать со страниц магазина данные о перемещении курсора (или пальца) по экрану. Или собирать данные с большого числа сенсоров самолета, например: число оборотов двигателя, состав топливно-воздушной смеси, забортную температуру и температуру выхлопа. Или анализировать слова в комментариях клиентов в соцсетях для оценки их лояльности.

Это означает, что технологии big data чаще всего нужны тогда, когда требуется более глубокий анализ процессов.

Такие данные напрямую не связаны с основными метриками IT-системы и бизнеса, но при правильном анализе могут рассказать много интересного о возможных точках оптимизации в проекте. Работа с такими данными — как поиск нефти. Нужно пробовать разные места, применять различные стратегии поиска и извлечения скрытых ресурсов, спрятанных в данных. Далеко не все попытки будут успешны, но в итоге находки могут принести массу выгоды.

Большие данные в основном помогают решать четыре задачи:

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

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

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

Например, логистическая компания ПЭК запустила Центр управления перевозками с использованием big data. В итоге они стали прогнозировать загрузку складов — предсказывать, когда склады будут заполнены, а когда пусты. Это помогло планировать маршруты транспорта и избегать простоев.

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

Например, «Газпром нефть» смоделировала ситуацию аварийного отключения электричества, чтобы понять, почему возникает сбой автоматического перезапуска оборудования. Модель помогла обнаружить неожиданные причинно-следственные связи и устранить проблемы.

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

Так, компания Stafory разработала робота-рекрутера Веру. Этот робот выполняет простую рекрутерскую работу: распознает голос, сортирует резюме, задает простые вопросы и принимает ответы. В итоге рекрутерам-людям остаются только более сложные и творческие задачи — реальные собеседования и окончательный отбор кандидатов.

Больше интересных кейсов использования big data читайте в статье «Зачем вам большие данные: примеры использования big data в 8 отраслях».

Технологии работы с большими данными

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

Упрощенно работа с big data происходит по следующей схеме: информацию собирают из разных источников → данные помещают на хранение в базы и хранилища → данные обрабатывают и анализируют → обработанные данные выводят с помощью средств визуализации или используют для машинного обучения.

Для технологий, которые работают с большими данными, базовым принципом считают горизонтальную масштабируемость, то есть возможность обрабатывать данные сразу на множестве узлов (серверов, компьютеров). Если обрабатывать такой массив информации на одном узле, это займет слишком много времени.

Итак, к основным технологиям для работы с большими данными относят:

  1. MapReduce. Это модель распределенных вычислений, разработанная Google. Ее суть в том, что обработка больших объемов информации происходит на большом количестве серверов (узлов), которые образуют кластер. На каждом сервере производятся одинаковые элементарные задания по обработке, потом все результаты обработки сводят вместе. Если копнуть чуть глубже, мы увидим, что в основе технологии лежат две процедуры функционального программирования. Первая — map, она применяет нужную функцию к каждому элементу данных. Вторая — reduce, она объединяет результаты работы. Такой подход позволяет быстрее обрабатывать большие данные.
  2. NoSQL — термин расшифровывается как Not Only SQL, «не только SQL». Это подход к реализации систем управления базами данных. В общих чертах — особенность в том, что для хранения информации в базах данных NoSQL не требуется заранее заданная схема данных. Это значит, что любые данные можно легко помещать в хранилище и быстро извлекать оттуда. Когда у вас большое количество разнородных данных, именно это и нужно.
  3. Hadoop — инструмент для разработки решений, которые работают по модели MapReduce. По сути, это конструктор, из которого можно создавать хранилища данных под потребности бизнеса. Технология лежит в основе многих облачных решений для обработки больших данных. Например, сервис для анализа big data от Mail.ru Cloud Solutions построен на базе Hadoop, Spark и ClickHouse.
  4. R. Язык программирования для работы с графикой и статистической обработки данных. Стандарт для создания аналитических и статистических программ, без которых по определению невозможен анализ big data. Еще аналитики часто используют языки Python, Scala, Java.

McKinsey также включает в этот список технологии Business Intelligence и реляционные системы управления базами данных с поддержкой языка SQL

Рынок big data в мире и в России

По данным отчетов, в 2020 году мировой рынок big data составляет 138,9 млрд долларов, к 2025 году он вырастет до 229,4 млрд долларов — будет расти по 10,6% в год. Вплоть до 2025 года лидерство на рынке будет удерживать Северная Америка, в частности США.

В основном такой рост вызван повышением интереса к IoT — сейчас к интернету вещей подключено 30,73 млрд устройств, а к 2025 году их будет 75,44 млрд. Кроме того, уже сейчас без больших данных компании не выдерживают конкуренцию с теми, кто использует big data, так как не могут обеспечивать достаточный уровень клиентского сервиса.

При этом нельзя сказать, что большие данные просто тренд, которому компании следуют бездумно. Опросы показывают, что big data помогают бизнесу на 8% увеличить прибыль и на 10% снизить расходы.

По российскому рынку данных за 2020 год пока нет. В 2018 году отечественному рынку прогнозировали рост до 1,4 млрд долларов. По оценкам 2019 года, за счет больших данных ВВП России вырастет на 1,94 трлн рублей, а к 2024 эта сумма увеличится до 4,2 трлн. Особенно большой выигрыш от больших данных в России получат отрасли добычи полезных ископаемых, торговли, ремонта и строительства.

Что нужно для работы с big data

Чтобы работать с большими данными, придется учесть несколько моментов:

  1. Готовьте много места. Если вернуться к определению биг даты, то видно, что данных будет немало, значит, нужно быть готовыми где-то их хранить. Также информация может поступать с высокой скоростью, поэтому заранее смотрите, чтобы ширины входного канала и скорости дисков хватало для обработки входящего потока байтов.
  2. Готовьте больше серверов. Данные нужно не только хранить, но и как-то обрабатывать. Из-за больших объемов вам, скорее всего, придется разбивать информацию на порции и обрабатывать их параллельно на разных машинах, то есть использовать упомянутые выше технологии MapReduce. Для этого придется заранее озаботиться достаточным количеством железа для вычислений.
  3. Готовьте правильные инструменты. IT-специалисты много лет занимаются поиском крупиц золота в горах разнообразных больших данных. Для их расчетов создано много надежных, классных и быстрых инструментов, например: Hadoop, Spark и другие. Познакомьтесь с основными продуктами на рынке и выберите, что подойдет вам.

Подготовка инфраструктуры занимает много времени, поэтому лучше переложить ее на плечи профессиональных администраторов и присмотреться к облачным решениям по обработке big data.

Такое есть в облаке VK Cloud (бывш. MCS) — оно позволяет хранить, структурировать, обрабатывать и анализировать данные, используя разные инструменты и технологии.

Итак, big data — что это, где применяется и почему стоит использовать

  1. Простыми словами биг дата — это большие объемы цифровой информации, которая непрерывно пополняется. Обычно такая информация слабо структурированная и разнородная. Также под этим термином могут объединять технологии хранения и обработки больших данных.
  2. Большие данные помогают анализировать текущее состояние бизнеса, строить прогнозы и автоматизировать рутинные процессы.
  3. Для работы с ними используют специальные технологии, которые позволяют быстро обрабатывать огромные массивы информации и извлекать из них пользу.
  4. Кроме инструментов, вам понадобится много дискового пространства и много серверов. Необходимые мощности можно арендовать в облаке.
  5. Рынок big data в мире растет на 10,6% в год, в основном за счет роста популярности интернета вещей (IoT).
Подкаст «Завтра облачно»: слушать выпуск про большие данные