Разработка и создание веб-сайтов Интеллектуальная поддержка Вашего бизнеса Лицензионное программное обеспечение и оборудование для организаций Разработка технической документации к программным продуктам и технологическому оборудованию терминальный сервер ViTerminal Автоматизация управленческих решений Архитектура бизнеса

17.04.2019
старт Всероссийского конкурса «Цифровой прорыв»
3 апреля объявлен старт Всероссийского конкурса «Цифровой прорыв» для IT-специалистов, дизайнеров и управленцев в сфере цифровой экономики.

24.07.2018
Лучший системный администратор 2018
«Дом.ru Бизнес» приглашает к участию в турнире «Лучший системный администратор 2018»

10.04.2018
Оплачиваемый on-line опрос для программистов
"Исследовательская компания "О+К Research" приглашает программистов-разработчиков принять участие в  оплачиваемом on-line опросе.

02.04.2018
Сибирь.Новые Решения 2018
15 марта 2018 года в Научной библиотеке НГТУ им.Г.В.Лыщинского прошла очередная конференция "Сибирь.Новые Решения".

20.10.2017
Сибирь.Безопасность-2017
20 октября 2017 года в конференц-зале научной библиотеки прошла очередная конференция "Сибирь.Безопасность" 

15.02.2017
Сибирь.Новые решения 2017
10 февраля 2017 года прошла конференция "Сибирь.Новые решения 2017"

Здесь может быть Ваш баннер ...

Мифы и легенды про Big Data

10.04.2014

Мифы и легенды про Big Data

dftguj.jpg

Один из наших кластеров для пилотных задач (Data node: 18 servers /2 CPUs, 12 Cores, 64GB RAM/, 12 Disks, 3 TB, SATA — HP DL380g)





— Что такое Big Data вообще?
Все знают, что это обработка огромных массивов данных. Но, например, работа с Oracle-базой на 20 Гигабайт или 4 Петабайта — это ещё не Big Data, это просто highload-БД.

— Так в чём ключевое отличие Big Data от «обычных» highload-систем?
В возможности строить гибкие запросы. Реляционная база данных, в силу своей архитектуры, предназначена для коротких быстрых запросов, идущих однотипным потоком. Если вы вдруг решите выйти за пределы таких запросов и собрать новый сложный, то базу придётся переписывать – или же она умрёт под нагрузкой.

— Откуда берётся эта новая нагрузка?
Если чуть углубиться в архитектуру, то можно увидеть, что традиционные базы данных хранят информацию очень дисперсионно. Например, у нас номер абонента может быть на одном сервере в одной таблице, а его баланс — в другой таблице. Быстродействие требует максимального разбиения данных. Как только мы начинаем делать сложные join'ы, производительность резко падает. 

— Есть пример такой задачи?
Вот пример: нам стало интересно, когда люди переходят на современные смарфтоны с «кирпичей»-звонилок. Оказалось, что есть достаточно чёткий порог: для жителя Москвы, например, сочетание старого телефона 2007-го года и использования ряда сервисов вкупе с большим потреблением трафика может означать желание перейти на смартфон. Соответственно, увидев такую границу, мы посмотрели, на какие именно модели переходят люди. И пошли дальше – решили находить тех, кто готов прямо сегодня приобрести такой телефон. А дальше – вопрос техники. У нас есть около 250 офисов продаж в Москве. Мы выделяем группу тех, кто в течение недели решит перейти на смартфон по нашим данным. Мониторим, когда один из них подойдёт на 50 метров к нашему салону. А затем отправляем ему SMS с рекомендацией про «зайти посмотреть», если в данном салоне есть смартфон и если он готов к демонстрации. Традиционную систему такая задача просто взорвёт.

— И как это решается?
Нужна другая архитектура базы данных. Если вам нужны гибкие запросы, то проще всего хранить данные неструктурированно — потому что для каждого нового запроса придётся иначе строить новую оптимальную структуру. Обычные базы данных направлены на максимальное быстродействие в рамках ограниченных вычислительных ресурсов. 

— Так давайте просто промасштабируем их — и проблема решится?
В целом, если есть куда масштабироваться — да, это выход. Согласитесь, проще докупить пару серверов или СХД, чем переписывать всю структуру БД. Однако в случае именно больших данных это не очень просто. Реляционные базы данных маштабируются достаточно сложно, как правило, до бутылочного горлышка в единой СХД. Есть горизонтальный порог масштабирования, после которого становится проще писать новую структуру, чем вводить очень сложные аппаратные комплексы. 

— Так что получается в итоге?
В итоге у вас есть некий набор сырых данных, который прекрасно поддаётся анализу. По нему бегают роботы на Java-коде. Они прекрасно параллелятся, поскольку нет никаких специфических требований к архитектуре по железу. Если нужно добавить вычислительных мощностей — мы просто отдаём чуть больше ресурсов виртуальной среды или довозим и втыкаем железо. На боевой реляционной БД так не сделать. 

— Но ведь это чудовищно медленно, разве не так?
Не всегда. Есть две ситуации, когда имеет смысл сравнивать:
  1. Короткие запросы с малым количеством join’ов. Здесь архитектура базы данных часто даёт выигрыш по времени, но мы платим за это резким увеличением нагрузки при запросах, которые не являются оптимальными для выбранной архитектуры.
  2. Сложные запросы разового типа. Иногда бывает проще составить запрос для реляционной базы за 10 минут и подождать два часа решения, чем писать Java-робота для Big Data 4 часа и ждать ответ 5 минут. Зависит от задач.

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

— Какие есть известные примеры использования Big Data?
Рано или поздно практически все, кто работает с большими данными, приходят к примерно похожему подходу: структурированные и хорошо разбитые базы с грамотной архитектурой для быстрых запросов, неструктурированные сырые данные для сложных разовых. На Хабре было упоминание про подход Twitter к архитектуре — там используется нечто похожее. 

— А почему тогда все на конференциях говорят про Big Data?
Потому что тренд модный, слово любят журналисты. Даже если вы обработаете 50 тысяч записей интернет-магазина и назовёте это Big Data — это будет достаточно пафосно, чтобы написать в пресс-релизе. 

— Получается, что одна из целей Big Data — возможность уйти от долгих проектных циклов?
Да, и от массы костылей к традиционным БД. Java-методология давно известна, но в аналитике её стали применять сравнительно недавно. При решении каких-то аналитических задач традиционными методами, заранее не получается сказать, что будет работать не так. Иногда требуется несколько месяцев для анализа какой-то возникшей неприятной ситуации с использованием реляционной базы данных. Подход Big Data совсем иной, поскольку данные собираются в реальном времени, хранятся без обработки, а обрабатываются тогда и так, как это требуется исходя из текущих задач, которые могут постоянно меняться.

— Есть примеры уже решенных задач, где это было видно?
Да. Партнёры в Европе смотрели за устройствами в зоне покрытия LTE, но без подключённого по факту LTE. К примеру — владелец iPhone со старой SIM, владелец одного из китайских телефонов без знания того, что есть вообще такая вещь как LTE. У партнеров программа заняла 6 месяцев. У нас этот проект тоже был реализован в рамках пилота на нашей платформе за 3 недели. В нашей реализации удалось обнаружить немало людей с устройствами с поддержкой LTE, которые этим функционалом не пользуются, возможно, даже не знают о нем. Или вот ещё пример. В ВымпелКоме есть подразделение, которое занимается анализом устройств, используемых абонентами. Это делается из соображений оптимизации оказания услуг. Например, если число аппаратов одной модели начинает быть больше 500, мы начинаем поддерживать такие устройства, в частности, запрашиваем информацию у производителя, чтобы уметь ответить на возможные вопросы клиента. Наш инструментарий позволяет очень быстро строить подобные разовые отчёты по использованию устройств в нашей сети.

— Какова структура платформы?
  1. Источники данных. Мы сводим все данные в одно место, даже не думая о том, понадобятся они или нет — просто собираем сырой массив. Например, это события (вызовы, обрывы и т.п.), геолокационные, данные CRM, данные биллинга, данные о пополнении счета и так далее.
  2. Есть фабрика идей — это коммерческие идеи, которые могут быть реализованы, если на них выделить время разработчиков и вычислительные мощности.
  3. Есть зона пилотных проектов — это демо-версии, которые реализуются на малой выборке абонентов. И есть продуктив (про него ниже).
  4. Платформа. В систему работы с Big Data в ВымпелКоме интегрировано уже значительное число так называемых «узлов», машин, занимающихся сбором и анализом данных почти в реальном времени. Будем и далее наращивать эту сеть. Например, у компании Verizon уже около пятисот узлов задействовано в аналогичной системе. Платформа у нас разделена на кластер для пилотов (песочницу) и кластер для продуктивов. Принципиально они почти ничем не отличаются, кроме мощности и поддержки. Кластер для продуктивов более мощный, здесь уже не место для экспериментов, это «мельница» для концентрации и обработки данных. А в песочнице отрабатываются новые идеи, причем к ней подключены все источники данных, как и к кластеру для продуктивов.


— Есть примеры прогностических задач такого плана?
Да, нам очень интересно знать, когда человек едет в другую страну. Не сообщать ему на месте, что «Добро пожаловать в Казахастан», например, а ещё до начала поездки предлагать тарифные опции и информировать о ценах на месте. Один из проектов — анализ потока клиентов в аэропортах. Нужно отсечь тех, кто возвращается домой (это просто), отсечь персонал аэропорта и таксистов (по данным предыдущих визитов) и выделить тех, кто собирается сесть в самолёт через час-два. Вот пока они ждут самолёт — им и приходит SMS с предложением: иногда общим (где и как посмотреть информацию), в некоторых случаях — по конкретному региону или стране (если терминал работает только в этом направлении).

— Кто этим занимается в «Билайне»?
Вот я этим занимаюсь и мой коллега Виктор Булгаков. Я начинал в Нидерландах в телекоме, где был архитектором реалтайм-биллинга и MNP. Потом HP, KPN, отвечал за внедрение бизнес-аналитики и Data Mining в «Адидасе» — и теперь Билайн. А Виктор работал в «Инкомбанке» с ERP. Потом с 1999 года у нас занимается бизнес-аналитикой (по сути – всю её с нуля и делал) и теперь вот вплотную Big Data.

Думаю, вам может захотеться узнать про то, как мы работаем с данными на низком уровне, либо услышать про железо. Если тема интересна – пишите.

Возврат к списку


Логин:
Пароль:
Регистрация
Забыли пароль?

16.04.2022
Третье исследование российских BI-систем: проверка практикой
Россия, ХХ апреля 2022 г. – Третье исследование BI-систем, созданных российскими разработчиками, показало, что во многом отечественные платформы достигли определенного уровня зрелости и в текущих условиях могут стать эффективной альтернативой решениям зарубежных производителей, покинувших рынок из-за санкций.

14.03.2017
Топ-10 стратегических приоритетов ИТ-директора в 2017 году
Достижения в области цифровых технологий и совершенствование бизнес-моделей продолжат менять баланс в бизнесе, что ложится дополнительным бременем на ИТ-директоров (CIO), стремящихся обеспечивать конкурентоспособность своей компании.

05.11.2016
Как меняется бизнес-аналитика
Бизнес-аналитика – один из немногих сегментов IT-рынка, который в меньшей степени пострадал от негативных тенденций в экономике.

У вас нет прав на участие в данном опросе.

Разработка веб-сайтов, корпоративный портал, хостинг
Клуб ИТ-Директоров
г. Новосибирск
сайт работает на 1С-Битрикс
Разработка сайта - ITConstruct Rambler's Top100