Участники практической конференции «Технологии Больших Данных», организованной издательством «Открытые системы» 21 июня, заполнили актовый зал гостиницы «Интурист» в Коломенском плотно: опоздавшим и замешкавшимся с кофе не сразу удавалось найти свободное место. И это не удивительно. Модная тема, и при этом актуальная — большинство докладчиков говорили о практических делах, а не о потенциальных возможностях. О практике здесь, в России. Соотношение маркетингового шума и полезности технологий Больших Данных остается неясным, но это не так уж интересовало слушателей: среди них в будущем Больших Данных мало кто сомневается.
Еще одна особенность Больших Данных не дает скучать: они имеют отношение к каждому из нас, ведь только отшельник не пользуется сотовой связью, банками и соцсетями.
Сигналы о неверности
Доклад Александра Фонарева, директора по науке компании Rubbles (SBDA Group), наглядно продемонстрировал, насколько глубоко информация о «простом человеке» может изучаться коммерческими компаниями. Фактически решение Rubbles Customer Insight, которое компания адресует банкам (в частности, мобильное приложение Альфа-банка Alfa Sense использует технологии Rubbles), исследует психологию клиента. Оно берется определить, предсказать критические точки поведения, моменты, когда лояльность банку дает трещину. В этом случае банк может реагировать специальными предложениями, которые отправляются не веерной рассылкой, а именно тем, на чье поведение они могут, как полагают аналитики, повлиять, — на тех же, кто, по «мнению» программного обеспечения, окончательно решил покинуть банк, больших ресурсов тратить уже не стоит. Для анализа данных примерялись различные алгоритмы; хорошо показали себя композиции решающих деревьев. Банк, со своей стороны, свидетельствует, что аналитика — не искусство ради искусства: в среднем клиенты, согласившиеся на рекомендации, ежемесячно оставляют на счету на 4600 руб. больше.
Задачи аналитика сотового оператора не так уже сильно отличаются от задач банковского аналитика, можно было понять из доклада Дмитрия Бабаева, эксперта компании «МТС». Надо определить тех клиентов, которые недовольны и могут перейти к альтернативному оператору. Другая задача — определение качества связи: когда обрывается связь, сколько раз клиенту приходится перезванивать, надежно ли работает Интернет. «Изначально не известно, — признался Дмитрий, — по каким из персональных данных клиента мы сможем прогнозировать его поведение. 90% времени уходит именно на сбор таких данных». Для машинного обучения строится матрица, в которой строки соответствуют пользователям, а колонки — их свойствам. Эта матрица разрежена и огромна: 200 колонок можно потратить только на то, чтобы отметить, на какие сайты человек ходит. Такие таблицы хранить в реляционной базе данных неудобно. Обычно матрицы содержат примерно по тысяче колонок, но разработчики уже не раз доходили до технологического предела в 4 тыс. колонок в используемой ими СУБД.
Торговые книги в облаках
Налоговикам не до психологии, нужно проверять, перепроверять и сверять. О том, какие технологии при этом могут использоваться, рассказал в своем докладе Александр Чистяков, ведущий разработчик в компании СКБ «Контур».
С 2015 года отчеты налоговикам приходят в электронном виде. Классические сервисы сверки требуют загрузки и своих торговых книг, и торговых книг контрагентов. По словам Чистякова, единственный в России облачный сервис сверки от «Контура» устроен иначе. После того, как предприятие загрузило через веб-интерфейс свои торговые книги, как только контрагент загрузит свою, сверка произойдет автоматически, что позволит избежать пристального внимания налогового инспектора. Сегодня в облако «Контура» загружают 25-30% товарооборота России.
В проекте используется СУБД PostgreSQL. Сама база небольшая по объему, меньше 100 Гбайт, все индексы умещаются в памяти. Хранятся связи контрагентов и агрегаты, полученные в результате анализа. Связи полезны для быстрой работы веб-интерфейса. А вот за данные для аналитики отвечает СУБД HBase, под которую выделено 11 узлов кластера, — всего около 1 Тбайт данных в распределенной файловой системе HDFS, около миллиарда строк в таблицах.
Как видно, Большие Данные в этом облаке не слишком велики. Да на конференции вообще, кажется, ни разу не было произнесено слово «петабайт» — отнюдь не во все практические задачи порождают горы данных, как австралийский радиотелескоп, сбрасывающий 400 Мбайт в секунду.
Прыткий Tarantool
Tarantool — СУБД категории NoSQL с открытым кодом и сервер приложений на языке Lua. Его создатели утверждают, что Tarantool, который хранит свои данные в памяти, способен обрабатывать 1,5 млрд запросов в сутки. На вопрос докладчика, Константина Осипова, поинтерсовавшегося: «Кто знаком с технологией Tarantool?» подняли руки немногие (надо сказать, вопросы «А кто знаком с технологией X или Y» задавались на конференции часто, и лес рук не взметнулся ни разу). А ведь Tarantool, разрабатываемый в Mail.Ru Group, используется не только своими создателями, но и в других проектах, в том числе, в Badoo и в «Одноклассниках». Надо сказать, вопросы «а кто знаком с технологией X или Y» звучали на конференции часто, и лес рук не взметнулся ни разу. Это говорит о том, что мало кто поспевает за всеми новинками технологий Больших Данных, да и смысл участия в конференции для многих был именно в знакомстве с новейшими технологиями.
Дело, однако, в том, что сам термин «Большие Данные», бесконечно любимый маркетологами, содержит соблазн судить их по количеству. Общий же ИТ-контекст подсказывает: интересны скорее «другие», чем «большие» данные, и не из-за характерной для них слабой структурированности, а по их назначению: большинство проектов в этой области сосредоточено на аналитике. И это подразумевает повсеместное использование технологий искусственного интеллекта, а не только успевшие войти в журналистский словарь MapReduce и Hadoop, а теперь и Spark. Показательно, что во многих докладах содержалось гордое упоминание «науки о данных» (Data Science), а нейронные сети и машинное обучение упоминались чуть ли не в каждом втором выступлении.
Глубинное обучение естественному языку
Павел Велихов, сотрудник компании Finstar Labs, рассказал о понимании машиной не просто естественного языка, а языка отзывов, иногда довольно лукавых и двусмысленных. Задача поставлена амбициозная: понять все, что пишут в Интернете о гостиницах, ресторанах, фильмах — любые отзывы на естественном языке, а затем помочь пользователю выбрать лучший вариант с набором нужных ему свойств.
Пугающая аббревиатура NLP (Natural Language Processing — «обработка естественного языка») звучала в докладе часто и не всуе. В рамках представленного проекта опробован огромный арсенал средств — и грамматический разбор, и онтологии, векторное представление слов, и глубинное обучение. Используется рекуррентная нейронная сеть, которая запоминает свое состояние и использует его для каждого последующего шага.
Связь времен
Соседствуя с докладами о графах и графовой OrientDB, о глубинном обучении при распознавании лиц в видеопотоках и прочих приметах современности, представители крупнейших ИТ-компаний предъявили актуальный инструментарий. Виктория Федотова из Intel представила библиотеки DAAL (Data Analytics Acceleration Library) и MKL (Math Kernel Library). Василий Суханов, представитель SAP Labs, рассказал о платформе SAP HANA. Вадим Челышков, сотрудник Microsoft, был, кажется, единственным докладчиком, продемонстрировавшим работу представляемого продукта в реальном времени. Желающим изучать Большие Данные в Microsoft предолагают облачный сервис Azure Machine Learning.
Значительный интерес вызвали доклады о текущем состоянии и планах развития свободных, а также отечественных СУБД — MySQL, PostgreSQL, «Линтер», «Ред База Данных».