Site icon AppTractor

Павел Ершов (Directual): Big Data в реальном времени

Directual — российская платформа обработки больших данных в реальном времени. Павел Ершов — глава компании и мы обсудили с ним возможности системы и в каких областях она может помочь бизнесу.

Расскажите о том, как возник ваш проект?

Нашей компании около двух лет. Костяк команды — выпускники Физтеха и Новосибирского университета, сам я закончил МФТИ в 2010 году. Мы разрабатываем платформу для создания систем анализа данных в реальном времени. Платформа базируется на технологиях с открытым кодом Apache: Kafka, Storm, Spark. Мы сделали на их основе продукт для конечного бизнеса. Это платформа, которая встраивается уже в существующую инфраструктуру и дает возможность контролировать различные потоки информации внутри бизнеса, подключать множество внешних источников данных и модульно выстраивать новые сложные IT-системы. Причем потоки данных могут быть любыми по объему, вплоть до миллионов событий в секунду.

Основное достоинство нашей платформы – универсальность, она может применяться для различных задач, как в облаке, так и на мощностях клиента. Среди наших клиентов есть, например, e-commerce, которые анализируют поведение своих клиентов и сотрудников и, с помощью нашей платформы, их оптимизирует; есть телеком-оператор, который «диджитализирует» внутренние операционные процессы; есть океанская линия, которая переводит на платформу онлайн-расчет цены на логистические услуги. Это только несколько примеров. Мы не решаем одну конкретную «боль», как сейчас модно говорить, мы — инфраструктурное решение.

Вообще, история Big Data начинается в начале двухтысячных с появлением NoSQL-технологий, парадигмы Map Reduce, набора технологий Hadoop и т. д. Но это все история про пакетную обработку больших данных — анализом накопленной базы информации и мы выявлением паттернов, событий и закономерностей. Directual же объединяет пакетный и потоковый анализ больших данных. На потоковом подходе мы фокусируемся — именно он может дать наибольший бизнес-эффект. Мы взяли открытые технологии, доработали их и запаковали в удобный продукт, где человек, ничего не понимая в потоковом Big Data анализе, может его использовать, настраивать благодаря интуитивному интерфейсу.

Какова ваша команда сейчас?

Ядро команды — технари: бизнес-аналитики и разработчики. Есть отдельная команда по машинному обучению – это бывшие сотрудники Яндекса с хорошей школой анализа данных. Есть команда, которая занимаются внедрением продукта клиенту — это как раз люди, которые могут донести до клиента, как и где он может использовать в своем бизнесе технологии потокового анализа данных. Также мы сейчас начинаем активно развивать взаимодействие с сообществом разработчиков, в следующем году мы планируем открыть облачную версию платформы для бесплатного использования, благо у нас есть очень богатый функционал SDK, API и плагинов. В этом сообществе, я уверен, есть много будущих членов нашей команды.

Где это может применяться?

Сейчас мы работаем в основном c компаниями среднего и большого размера, с энтерпрайзом. Решения могут быть с точки зрения абсолютно не связанными, но технологически строиться на нашей инфраструктурной платформе.

Допустим, банки. История с потоковой аналитикой клиентских транзакций и гео-позиций клиентов. Например, это может быть контекстный маркетинг: клиент находится в торговом центре, где у банка есть скидки, кэшбеки и прочее. Популярна сейчас история с геймификацией. Недавно в банке у Тинькова был запущен Тинькофф-квест, где клиенты выполняли сначала простые, а потом более сложные задания. И это дало банку прирост в 40% транзакций по картам. Это реализовывалось на похожих технологиях потоковой аналитики данных.

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

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

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

Кстати, недавно Герман Греф, публично рассказывая о стратегии Сбербанка, говорил о том, что переход на единую технологическую платформу, оперирующую данными в реальном времени и построенную на технологиях с открытым кодом — жизненно необходимая задача. Я полностью разделяю его точку зрения на этот тренд. Кстати, мы недавно выиграли номинацию Sberbank Awards в рамках Generation S. Я надеюсь, в ближайшее время мы поможем Сбербанку стать самым высокотехнологичным банком в мире.

Какими сущностями оперирует ваша платформа?

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

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

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

Откуда может получать данные эта система?

Это могут быть базы данных самой компании, открытые данные, социальные сети, показания датчиков и счетчиков, данные с мобильных устройств. Например, та же геопозиция клиента может быть получена с приложения. Телеком-операторы сейчас уже достаточно свободно торгуют обезличенными данными своих клиентов. Рынок информации растет почти в два раза каждый год. Если раньше такой термин, как Big Data, был актуален и использовался, то сейчас уже нет, потому что сейчас практически любая дата – она Big. И смысла говорить о ней уже нет. Сейчас имеет смысл рассматривать различные подходы к анализу данных.

То есть ваша система объединяет множество источников данных в себе?

Да, любые источники. По сути наша система выглядит как хаб – единый хаб для сбора информации, куда можно направить данные либо по API, либо с помощью универсальных слушателей на базы данных. Мы реализуем пилотный проект по indoor-навигации для одного из наших клиентов. В помещениях развешиваются BLE-маяки, посетителям даются браслеты с BLE-метками, все данные с этих устройств будут сливаться на шину Directual. А логика – как оперировать с этими данными – настраивается в графическом редакторе. Потоки данных с датчиков – это интернет вещей – это одно из направлений, в котором активно развивается потоковая аналитика данных.

Насколько все-таки важен для таких систем режим реального времени?

На самом деле актуально, потому что нет смысла использовать пакетную обработку, которая будет запускаться каждый час либо каждую минуту. Тоже приведу один из примеров пилотного проекта: автодилер, ему идут заявки на тест-драйв, и у него проблема. У него стоят какие-то CRM, системы пакетной обработки, и половина заявок теряется, потому что просто так получается, такой бизнес по-русски. Что до менеджеров не дозваниваются либо дозваниваются, но уже через час, когда уже закончился рабочий день. И мы им как раз сделали систему сценариев: как только пришла заявка, происходит дозвон до оператора, считается количество неудачных дозвонов, маршрутизация. И на пилотном проекте количество потерянных сократилось с 50% до 5%. То есть тут суть не в самих технологиях – realtime или не realtime – а в простоте управления ими и актуальности.

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

С входными данными понятно, а что с выходными? Чем система может управлять?

У нас есть уже готовая интеграция с СМС-сервисами, сервисами телефонии, сервисами email-рассылок, но плюс еще есть развитые API и SDK для того, чтобы можно было подключать на выход любые действия. Система достаточно легко дописывается под нужды заказчика на Java SDK, на JavaScript SDK. К примеру, операциями на выходе могут быть пост в соцсети либо заведение задачи в какую-то конкретную CRM (пусть даже самописную) заказчика, либо, как у банка, блокировка карты клиента. Система тем и отличается, что она платформа. Платформа имеет как гибкие входы, так и выходы. То есть на вход API и слушатели, на выход — SDK и уже какие-то прединсталированные системы рассылок, телефонии.

А как работает предиктивная аналитика?

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

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

И поэтому под конкретные задачи, под конкретного большого клиента мы уже на реальных данных разрабатываем модель, которая будет работать в этом случае лучше всего. Это может быть либо прогнозирование временных рядов (как я уже сказал, заранее знать событие), либо какая-то кластеризации, то есть look-like. То есть приходит какой-то клиент или объект, и мы можем определить его к какой-то категории. Допустим, это пенсионеры, студенты, мужчины, женщины и т. д. Это два применения, третье применение – это достройка профиля клиента по определенным косвенным параметрам. Либо клиента, либо заявки. Например, у фирмы может идти поток заявок, по каким-то параметрам можно определять, какие из них станут проблемными. Для этого использовать эти проблемные заявки и в автоматическом режиме переводить их на специальный департамент.

Ваша система построена на открытых проектах?

Базовая архитектура – это опенсорс, но если в процентах смотреть, то это не более 10% нашей системы, потому что опенсорс сам по себе использовать практически невозможно неподготовленному человеку. Как раз большинство проектов, в том числе наш, как раз три этажа сверху этих опенсорс-технологий достраивают, чтобы ими можно было пользоваться как с точки зрения бизнеса, так и с точки зрения разработки. Как конечный продукт. Это на самом деле плюс, что мы используем технологии открытые, а не собственной разработки. Постоянно выходят новые релизы этих технологий, ведь мировое сообщество Apache Foundation их постоянно дорабатывает и с точки зрения производительности, и с точки зрения каких-то ошибок. Мы сами в Storm сделали свой комит, исправили маленькую ошибку. Мы тоже внесли свой вклад в развитие этих технологий.

Насколько все-таки вашей системой может пользоваться не программист?

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

Может ли система работать на собственных серверах компании?

Конечно, но на самом деле это зависит от заказчика. У нас есть заказчики, которые категорически не хотят отдавать данные в облако, тогда они просто покупают коробочную лицензию и разворачивают на своих мощностях. От них тогда требуется больше телодвижений в плане выделения серверов и так далее. Для нас, конечно, предпочтительнее, чтобы это все происходило в облаке. В принципе, и так, и так это работает. Облако у нас сейчас IBM, мы с ними заключили партнерство, они нам выделили большой грант в несколько сотен тысяч долларов. И мы стали их официальным партнером, потому что им тоже очень нравится эта технология. И в ближайшее время они нам будут оказывать как маркетинговую поддержку, так и пиар, потому что у них активно развиваются их облачные направления (SoftLayer, Bluemix). Мы планируем в следующем году разместиться в их маркетплейсе Bluemix, как раз это облачная версия для оказания услуг по автоматизации процессов и анализу данных.

Есть коробочная версия на своих серверах, есть облако. Насколько облако все-таки защищено?

Во-первых, у нас соединение осуществляется по зашифрованным протоколам https c шифрованием 256-bit, во-вторых, шифруются клиентские данные на облаке. Если человек получит доступ к базе данных, он в ней ничего не поймет. Если у него не будет соответствующих ключей и так далее. Естественно, не бывает идеальных систем. Любую систему можно так или иначе взломать. Мы просто приняли какие-то минимально необходимые меры, чтобы обеспечить безопасность и конфиденциальность. Какие-то финансовые организации либо телекомы, естественно, работают не в облаке, а в коробках – без подключения к интернету.

Вы сказали, что Big Data больше не актуальна, а что идет на смену большим данным?

Я не сказал, что big data неактуальна, я сказал, что сам термин неактуален. Сейчас, действительно, модным термином является машинное обучение, но оно очень сильно зависит от каких-то параметров. Но самое главное то, что технологии на самом деле уже есть, их можно назвать сверхсовременными. Основная проблема в том, что 99% бизнесов не понимают, что это можно использовать. Если раньше IT-интеграторы просто продавали софт, допустим, 10 лет назад. А 5 лет назад IT-интеграторы начали продавать решения каких-то конкретных проблем заказчика. А сейчас у интеграторов и компаний-вендоров (как и у нас) главная задача – донести до конечных клиентов, что у них вообще есть подобные проблемы, которые могут решаться с помощью таких сверхсовременных технологий.

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

Спасибо, интересных вам данных!

Exit mobile version