Что такое Big Data
Это большие объемы данных различного типа: структурированные, частично структурированные или и вовсе неструктурированные. При этом Big Data включает хранение, обработку и анализ такой информации, для чего используются специальные сервисы и инструменты.
Примеры Big Data:
- аналитика поисковиков по миллионам пользовательских запросов;
- логи серверов с ежедневным потоком новых записей;
- медицинские сведения и результаты анализов;
- активность пользователей в социальных сетях, например с учетом лайков, комментариев и других показателей.
При этом к Big Data не относятся:
- архив записей видеокамер;
- данные о продажах проекта за некий период;
- перечень пользователей сайта или клиентов услуги;
- контактные данные пользователя в CRM-системе.
То есть просто массив данных — это еще не Big Data. И обычно к большим данным относят сведения, которые обладают некоторой спецификой в получении, нуждаются в обработке и могут оказывать влияние на принятие решений.
Преимущества работы с Big Data
Улучшение процессов. Аналитика больших данных помогает определять позитивные и негативные зоны в различных направлениях компании.
Принятие обоснованных решений. Изучение больших данных позволяет действовать более расчетливо и на основе реальных сведений.
Прогнозирование. За счет анализа Big Data можно вовремя обнаружить взаимосвязи и тенденции для прогнозирования событий и планирования дальнейших шагов.
Улучшение сервисов компании. Изучение больших данных помогает лучше понимать потребности клиентов и оперативно обновлять продукты.
Исследования. Big Data играет существенную роль в медицине, синоптике промышленности и во множестве других сфер, где нужно обрабатывать большие объемы точной информации.
Свойства больших данных
Сегодня границы определения Big Data несколько размыты. Однако существует перечень свойств, которые помогают определить, относятся данные к большим или нет. Этот список называется концепцией «6V» — по первой букве каждого критерия.
Volume — объем. Есть условный стандарт в притоке 150 Гб в день. Однако у крупных компаний ежедневный объем обрабатываемых данных может составлять петабайты и больше, а малый бизнес ограничится 50 Гб. Но, как правило, это всегда существенный объем данных относительно другой информации проекта.
Velocity — скорость обновления и обработки данных. Сведения должны всегда оставаться актуальными и оперативно анализироваться.
Variety — многообразие. Big Data включает сведения различной степени структурированности и типа: тексты, логи, видео и многие другие.
Veracity — достоверность данных. Должны соответствовать действительности как сами сведения, так и результаты их анализа.
Value — ценность данных для проекта. Важно, сможет ли компания извлечь из сведений пользу. Например, анализ активности пользователей по отношению к определенному контенту или рекламе может улучшить посещаемость и доход ресурса. При условии, что компания будет на это опираться.
Так, чтобы относится к Big Data, сведения должны соответствовать хотя бы нескольким из перечисленных свойств.
Типы данных и способы их хранения
По типу организации информации данные делятся на три большие группы.
Структурированные. Обычно это данные в виде записей с четкими параметрами, которые хранятся в связанных друг с другом таблицах. Для хранения таких данных используются реляционные СУБД, например MySQL или PostgreSQL.
Слабоструктурированные. Такие данные не имеют жестких требований к структуре, но при этом могут храниться систематизированно. Например, как документы в коллекциях MongoDB.
Неструктурированные. Сюда относятся картинки, видео и аудио, большие текстовые файлы, например формата PDF, музыкальные и другие файлы. Такие данные можно эффективно и экономично хранить в объектном хранилище S3.
Инструменты для работы с большими данных могут быть разными, а вот ключевые принципы их хранения всегда неизменны.
Горизонтальное масштабирование. При увеличении объема данных систему для их хранения необходимо пропорционально масштабировать, добавляя дополнительные физические или виртуальные серверы.
Отказоустойчивость. А чтобы при выходе из строя какого-то сервера не рисковать потерей информации, блоки с данными нужно дублировать в нескольких копиях на разных нодах.
Параллельная обработка. Для эффективной работы с данными их следует равномерно распределять между доступными серверами.
Разделение хранения и вычислений. Обработка ключевых запросов, например заявок или платежей на сайте, и хранение файлов — это два разных процесса. Для более гибкой и экономичной работы систем такие задачи можно разделять между отдельными сервисами. Например, сайт или приложение размещать в облаке или на физическом сервере, а медиаконтент и другие неструктурированные данные — в объектном хранилище S3.
Пакетная и потоковая обработка. Подобным образом разделяется и обработка запросов в зависимости от их срочности. И одни процессы выполняются моментально, а другие фоново и поэтапно. Например, сами транзакции банковское приложение рассчитывает в потоке — то есть в режиме реального времени. А вот подготовка ежемесячного отчета пользователя о тратах — это уже пакетная обработка, которая не требует выполнения в моменте и может включать несколько этапов: сбор, планирование, обработку данных и генерацию результатов.
Сама обработка Big Data проходит по следующему алгоритму: сбор, хранение, аналитика.
Сбор
На этом этапе добываются данные, необходимые для решения определенных задач. Источники могут быть сами разными.
Интернет. Данные собираются с сайтов, социальных сетей и приложений. Этому способствует обработка пользовательских запросов, геолокации, файлов cookie. Для дальнейшего изучения также могут собираться изображения, видео и другой контент.
Статистика. Различные сведения, которые могут собираться исследовательскими центрами для составления прогнозов и других задач.
Банковские данные. Сведения о транзакциях, например история операций, суммы переводов и многие другие.
Технические данные. Информация из логов сервера и сервисов мониторинга нагрузки, сведений из умных устройств, камер видеонаблюдения и других.
Хранение
Собранная информация размещается в специальных сервисах. При этом хранение больших данных тесно связано с их анализом.
Вот некоторые примеры.
Файловые системы и хранилища
Совместимы с неструктурированными и частично структурированными данными, например логами, медиаконтентом, файлами JSON. Объектное хранилище S3 — один из наиболее популярных способов для размещения такой информации. Так, S3 подходит для больших объемов данных, и его можно интегрировать в работу сайта, приложения, CRM-систем, Kubernetes а также множества других сервисов и систем.
NoSQL-базы данных
Используются при работе с разнородными данными, обеспечивают более гибкий подход в обработке сведений и ускоряют их обработку. В отличие от реляционных баз данных NoSQL СУБД не требуют четкой схемы хранения и допускают некоторые вольности. Так, в MongoDB можно собирать немного по-разному заполненные поля. Например, в одном документе можно указать адрес и @mail пользователя, а в другом — имя и телефон.
Типы и примеры NoSQL-СУБД:
- Документные — MongoDB и Couchbase. Используются для работы со слабо структурированными данными.
- Колоночные — Cassandra и ClickHouse. Эффективны при выполнении аналитических запросов, создании отчетов и сжатии данных.
- Ключ-значение — Redis, DynamoDB. Используются для кэширования, управления сессиями и решения других задач.
- Графовые — Neo4j. Применяются в социальных сетях и корпоративных CRM-системах, когда нужно показать взаимосвязи: добавленные контакты, структуру компании по департаментам, должности сотрудников, общие интересы и задачи.
Data Warehouse (DWH)
Используются для хранения структурированных данных, аналитики и отчетности. Оптимизированы для сложных JOIN-запросов и поддерживают извлечение, преобразование и загрузку данных. Примеры таких решений: Snowflake, Google BigQuery, Teradata. DWH способны быстро обрабатывать запросы и поддерживают интеграцию с Tableau, Power BI и другими BI-инструментами.
Гибридные решения
Сочетают различные особенности различных подходов для хранения данных и подходят для сложных сценариев.
- PostgreSQL — объектно-реляционная СУБД, которая собирает данные в таблицах, но при этом представляет их как объекты.
- Data Lakehouse, например Delta Lake или Apache Iceberg, — хранят данные и поддерживают транзакции в соответствии со свойствами ACID.
- In-Memory системы, например Apache Ignite, — хранят и обрабатывают данные в оперативной памяти в реальном времени.
Анализ
Ключевой этап, на котором данные обрабатываются при помощи определенных способов и различных инструментов, включая перечисленные выше.
Описательная аналитика — помогает составить и изучить динамику событий, чтобы определить причины позитивных или негативных событий. Например, какой сервис, в какой период и через какой канал пользовался наибольшим спросом. Или наоборот: почему провалился определенный запуск или активность. Для этого анализируются данные в реальном времени и ретроспективе.
Предикативная или прогнозная аналитика используется для получения возможных сценариев развития событий и принятия соответствующих решений. Сегодня AI и ML стали популярными инструментами для составления подобных прогнозов. Например, искусственный интеллект может обработать финансовые истории различных клиентов, на основании чего менеджер в банке примет решение о выдаче кредита.
Предписательная аналитика — следующий уровень после составления прогнозов. При помощи Big Data данный метод помогает выявлять проблемные точки в определенной сфере и моделировать сценарии, при которых их можно будет избежать в перспективе.
Диагностическая аналитика — изучает по данным причины каких-либо событий, чтобы выявлять аномалии и случайные взаимосвязи.
Напоминаем, что обработка и хранение персональных данных регламентируется законодательством. Для соблюдения требований по защите информации ресурсы, которые взаимодействуют с персданными, должны размещаться на хостинге с повышенными стандартами безопасности и проходить аттестацию СЗИ. Подробнее о том, какие данные относятся к персональным, рассказали здесь.
В каких сферах используются большие данные?
Искусственный интеллект. Сегодня нейросетям доверяют всё больше задач. AI помогает создавать изображения, видео и тексты, составляет прогнозы и дает рекомендации. Для всего этого искусственный интеллект нужно обучать на больших объемах информации.
Финансовые организации. Банки и другие компании, которые работают с денежными переводами, используют Big Data для улучшения своих сервисов, реализации некоторых функций и повышения уровня защиты.
Наука и промышленность. Большие данные используются для улучшения процессов производства, техники безопасности и эффективного управления логистикой. Big Data помогает создавать новые технологии, составлять научные прогнозы и проводить эксперименты.
Медицина. Большие данные используются для постановки диагнозов, прогнозирования течения заболеваний, подбора лечения, создания лекарственных средств и решения других задач.
Социальные сети и рекомендательные сервисы. На основании активности множества пользователей соцсети и сервисы рекомендации на различных платформах предлагают более релевантный контент и возможные кандидатуры на добавление в список контактов.
Доставка и транспортировка. Постоянный анализ геолокации и других данных интегрирован в сервисы такси и прочие. Благодаря этому можно, например выбирать более удобный маршрут.
Маркетинг. Анализ поведения множества пользователей при взаимодействии с сервисами компании помогает эффективнее определять и закрывать боли клиентов. За счет Big Data можно эффективнее изучать рынок и прогнозировать его динамику для формирования конкурентных цен и множества других задач.
Сервисы для эффективной работы с Big Data
Серверы с GPU. Обработка больших данных — серьезный вызов для IT-инфраструктуры. Однако с ним уверенно справляются серверы с графическими процессорами, которые могут параллельно проводить вычисления любой сложности, включая работу с Big Data.
Объектное хранилище S3. Гибкий и экономичный сервис для хранения даже самых больших объемов информации. S3 совместим с серверами с GPU, облачным хостинг и может быть запущен в аттестованном контуре.
Облачные базы данных. Для работы с Big Data могут использоваться PostgreSQL и MongoDB. Обе СУБД можно развернуть в нашем сервисе для защищенных облачных баз данных.
Повышенные стандарты безопасности. Big Data может включать персональные данные и другие конфиденциальные сведения. Поэтому для соблюдения требований законодательства в сфере защиты информации можно арендовать серверы с GPU в аттестованном контуре.