Рынок решений бизнес-аналитики и платформ их поддержки в ближайшие годы ожидают радикальные реформы, и одним из признаков грядущих изменений можно считать появление наряду с существующей пассивной описательной (descriptive) аналитикой новой активной диагностической (diagnostic). Отход от сложившихся в BI канонов неизбежен — сохранение принятой сегодня аналитической практики грозит опасным явлением, известным как «паралич анализа». Паралич анализа встречается и за пределами ИТ — так называют избыточное и непродуктивное мудрствование, тормозящее активные конструктивные действия. О пагубности этого мыслительного ступора писали еще Эзоп, Буридан, Шекспир и другие, но именно сейчас такого рода патовая ситуация стала грозить и области бизнес-анализа.
Сложилась парадоксальная ситуация — аналитические методы совершенствуются и развиваются, однако на практике это не способствует повышению качества принятия решений и, как следствие, системы BI не оправдывают себя, а в ряде случаев попросту стагнируют. Все это происходит на фоне того, что требования к динамичности бизнеса постоянно растут. Необходимо превратить BI из средства для наблюдения за бизнесом в средство для активного управления им. Основная проблема, однако, в том, что методики типа «Шесть сигм» (Six Sigma BI), ограничения издержек (Lean BI), соотнесения затрат времени с результатами (Time-To-Value BI) и другие позволяют точно и предельно детально анализировать прошлое, но бесполезны для практики оперативного управления — они не могут обеспечить прогноз текущих событий и принятие решений в режиме времени, близком к реальному.
Следует учитывать и тот факт, что сегодня невероятно быстро возрастает значение визуального представления информации — аналитическая работа с данными без их визуализации и интерактивного режима операций с ними становится малопродуктивной. Отсюда повышенное внимание к технологиям визуальной аналитики (Visual Analytics, VA) и близким по сути технологиям извлечения информации из данных (Data Discovery, DD). Еще несколько лет назад массовое распространение таких технологий было невозможно — своим появлением они обязаны «революции BI в памяти» (The In-Memory Business Intelligence Revolution), «аналитике в памяти» (In-Memory Analytics), а также «аналитике на чипе» (In-Chip Analytics).
Качественная новизна
Чаще всего DD и VA используются как разные названия одного и того же, но принятые специалистами разных школ. В любом случае от классики BI-технологий VA и DD отличаются прежде всего тем, что они полностью ориентированы на активное взаимодействие человека с данными, хотя и не исключают существующих методов, а напротив, продолжают и развивают их, добавляя к описательной аналитике новую, активную аналитику. Сущность описательной аналитики в конечном счете сводится к использованию определенного набора средств и методов для выделения полезной информации из исходных данных и далее к ее представлению в требуемой заказчику форме. Иначе говоря, главной целью описательной аналитики была и остается подготовка содержательных отчетов, кроме них есть еще разного рода пульты, служащие для более наглядного представления ключевых показателей продуктивности (Key Performance Indicator, KPI), и иные средства — все сводится к отображению информации о текущем состоянии дел в бизнесе, которую полезно знать, но не более того. Однако для управления недостаточно знания о текущем состоянии — нужно еще уметь прогнозировать будущее и осуществлять оперативное управление, поэтому возникает потребность в предсказательной аналитике (Predictive Analytics) и в аналитике, ориентированной на действия (Execution Based Analytics). Все три не исключают, а дополняют друг друга (рис. 1.).
Рис. 1. От описательной аналитики к аналитике действия |
Дополнение описательной аналитики аналитикой действия — ответная реакция на побуждающие к переменам внешние требования, подкрепленные новыми технологиями. В условиях экономики знаний управление предприятиями перестает быть строго вертикальным, на глазах происходит децентрализация управления и принятия решений. Из чего следует, что в современных условиях аналитические средства нужны не только избранным топ-менеджерам, но и руководителям среднего звена, иногда этот процесс называют демократизацией аналитики. Переход подкреплен тем, что пользование компьютером становится обыденным делом, частью повседневной культуры, а интерактивная графика и снижение цен на память позволяют применять относительно недорогие, но достаточно мощные устройства. Все это создает предпосылки для новой волны аналитики самообслуживания — появлению платформы для активной аналитики.
Значение VA и DD уже осознано — ряд производителей оперативно вносят изменения в свои производственные программы: MicroStrategy улучшила Visual Insight; SAP, SAS и IBM запустили новые продукты SAP Visual Intelligence, SAS Analytics и Cognos Insight соответственно; Oracle купила компанию Endeca, а Actuate — Quiterian. Однако лидерами являются не они, а гораздо меньшие компании QlikTech, Salient Management, Tableau и Tibco.
BI и самообслуживание
Аналитику DD и VA еще называют «BI с самообслуживанием» (BI Self-service), поскольку управление процессом отдано на откуп пользователю, в то время как традиционные решения ориентированы на поддержку со стороны ИТ-подразделений. Продукты этого класса построены с учетом того, как человек мыслит, воспринимает информацию, анализирует ее и принимает решение.
- Доступ к нужной информации в нужное время. Все данные и инструменты работы с ними должны быть доступны, как на шведском столе, причем без ограничений на последовательность действий.
- Возможность эксперимента. Рассчитывающие на собственные силы пользователи не должны быть ограничены в желаниях экспериментировать — необходимы особые зоны, «песочницы», где они могли бы это делать безопасно и обмениваться результатами с другими.
- Интерфейс с системами класса Microsoft Office. Если результатами аналитики невозможно делиться, используя традиционные офисные приложения, ее польза будет минимальна.
- Возможность распространения результатов. Если пользователь уверен, что он получил значимый результат, то при отсутствии строгой вертикали власти он должен иметь шанс продвинуть свои достижения на вышестоящие уровни управленческой иерархии.
- Обратная связь. По результатам своего анализа пользователь должен иметь возможность влиять на те части корпоративной системы, откуда он получает исходные данные.
Характеристики систем VA и DD
Рис. 2. Фазы работы аналитика в среде VA и DD |
Реализацию традиционных методов поддержки принятия решений на основе анализа, сочетающего аналитические возможности человека с компьютерной аналитикой и усиленного синергией интерактивного взаимодействия человека с машиной, можно разделить на три фазы (рис. 2). Первая — выделение скрытой в данных информации, прибегая к человеческим способностям анализа изображений. Вторая — применение аналитических алгоритмов, которые работают с большими объемами сырых данных, превышающими возможности человеческого мозга, и упрощают принятие решений за счет автоматического выполнения статистической и иной обработки данных. Третья — использование обычных инструментов управления данными, позволяющих выполнять служебные операции хранения, извлечения и распределения, но применительно к задачам аналитики. Таким образом, складывается цепочка обработки: сырые данные, табличные данные, их визуальное отображение машинными алгоритмами и изображение, предназначенное для человека. Пользователь может оперировать изображением, и его действия по цепи обратной связи передаются на предыдущие фазы технологической цепочки (рис. 3).
Системы VA и DD заметно отличаются от традиционных систем бизнес-анализа — качественно новым является необходимость учета когнитивных способностей человека, их эргономичность. Например, бесполезно выводить на экраны больше зрительной информации, чем может воспринимать человеческий глаз. В системах VA и DD используются хорошо известные и специально разработанные аналитические средства. К первым относятся языки общего назначения Matlab и R, библиотеки OpenCV для визуального анализа и GATE для анализа текстов и их аналоги. В соответствующих системах функции вычисления и анализа объединены в некоторый «черный ящик», на вход которого поступают данные, на выходе выдаются результирующие таблицы и графики, а процесс анализа порции данных выполняется от начала до конца без перерыва. Такой подход приемлем, пока объем данных относительно невелик и их обработка не задерживает интерактивную работу аналитика, который может организовать итеративный цикл получения желаемого результата. С увеличением объемов данных заметно возрастает время вычислений и передачи данных, и задержка визуализации результатов становится препятствием, поэтому разрабатываются специализированные быстродействующие аналитические технологии, ускоряющие процесс анализа на один-два порядка, — например, компилятор Riposte для языка R и аналогичные оптимизаторы для кодов Matlab и Python.
Рис. 3. Цикл работы пользователей с данными |
Примерно то же самое можно сказать и о средствах управления данными. Хотя обычные реляционные СУБД обладают высокой масштабируемостью и скоростью обработки запросов, они создавались для транзакционной работы с небольшими порциями данных. Аналитики предъявляют совсем иные требования к работе, поэтому здесь чаще используются базы данных NoSQL и решения класса In-Memory.
Специализированные технологии анализа
На протяжении нескольких десятилетий необходимость оперативной аналитической работы с данными побуждала к созданию специализированных аппаратно-программных средств, которые можно разделить на четыре группы.
- Cпециализированные машины для анализа (Data Warehouse appliances). Впервые были предложены в начале 80-х компанией Britton-Lee (позже она была куплена Teradata, надолго ставшей монополистом в сегменте баз данных с массовым параллелизмом). В середине прошлого десятилетия конкурентное решение предложила компания Netezza, ныне купленная IBM. С 2009 года начало формироваться второе поколение такого рода устройств, связанное с такими начинаниями, как DATAllegro, Greenplum и Oracle Exadatа.
- Оперативная аналитическая обработка (OLAP). Датируется 1970 годом, однако сам термин был предложен позже, в середине 90-х, Эдгаром Коддом, отцом реляционных СУБД. С его подачи была создана компания Hyperion и ее OLAP-сервер Essbase, перешедший во владение Oracle, которая имеет собственный OLAP-продукт — Express Server. Свои OLAP-серверы выпускают Microsoft, SAS, SAP, MicroStrategy и еще несколько меньших по масштабу компаний.
- Поколоночные СУБД (Columnar databases). Появились еще в 1969 году, но единственным коммерческим продутом этого класса долгое время оставалась СУБД Sybase IQ, а в 2005 году дебютировала СУБД Vertica, купленная позже HP. Тот факт, что руководил созданием Vertica сам Майкл Стоунбрейкер, привлек к этому событию особое внимание.
- Базы данных, резидентные в оперативной памяти (In-Memory databases). Несколько лет назад в связи с распространением 64-разрядной адресации и заметным снижением цен на память началось активное развитие направления по размещению баз в памяти. Меньшая надежность и длительность хранения данных в оперативной памяти особого значения для аналитики не имеют, поскольку данные загружаются в память из внешних источников только на время обработки. Что же касается значительно более высокой удельной стоимости хранения в памяти, то эти затраты не играют существенной роли на общем фоне. При адресации в 64 разряда теоретический предел составляет 16,3 млн Гбайт (16,3 Эбайт), хотя на практике редко приходится анализировать файлы размером более нескольких десятков гигабайт.
Вариации на тему аналитики в памяти
Удельная стоимость хранения в памяти пока на порядки выше, чем на жестких дисках и твердотельных накопителях, поэтому трудно представить себе использование сравнимого с дисками пространства, однако это различие компенсируется системами управления данными. В каждый отдельно взятый момент времени человек может анализировать лишь ограниченный объем данных, поэтому вопрос заключается в том, как обеспечить загрузку в память именно актуальных данных. Более того, ограниченность объема загружаемых в память данных дает положительный эффект — она позволяет сохранить централизованное управление. При потере контроля за единством данных начинается размножение копий, возникают несвязанные между собой версии, складывается ситуация, которую называют «Адом Excell». Аналитика памяти допускает работу с данными в режиме самообслуживания при сохранении «одной версии правды».
Анализ в памяти позволяет преодолеть наследие табличного представления данных. Обычно в таблицах по одной оси откладываются некоторые численные показатели (объем продаж, цена продукта), а по другой — распределение (по времени, по возрасту потребителей), и соответствующим образом строятся иллюстрирующие графики. При переходе в память можно произвольным образом комбинировать сравниваемые показатели, например объем продаж с ценой продукта.
Низкая скорость работы дисков вызывает необходимость в предварительном создании моделей данных, процедур работы с ними и агрегирования данных в соответствии с этими моделями, что лишает аналитику необходимой гибкости. При переносе аналитики в память эти проблемы снимаются.
Всю область применения In-Memory можно условно разделить на восемь подобластей: накопление больших объемов данных и поиск в них; очистка и агрегирование больших объемов данных; описательная аналитика; аналитика в реальном времени; предиктивная аналитика; аналитика, ориентированная на человеческие возможности; интерактивные методы Data Discovery; интерактивные методы VA. По другой классификации резидентные в оперативной памяти базы данных можно разделить на три типа: полностью работающие в памяти (Pure In-Memory Database System, Pure IMDS); размещающие данные в памяти, но интерпретирующие память как диск (RAM-disk); гибридные варианты (Hybrid IMDS).
Среди производителей пока никто не предлагает набора решений, охватывающих весь спектр областей In-Memory, а из перечисленных подобластей в пяти доминируют известные компании, причем чаще всего упоминают о двух реализациях аналитических систем на базе IMDS — от Oracle и от SAP.
Решение Oracle Exalytics Business Intelligence Machine состоит из аналитической программы Oracle Business Intelligence Foundation, IMDS Oracle TimesTen и серверов Oracle SunFire, суммарная память которых может быть доведена до 1 Тбайт. Этого достаточно для задач бизнес-аналитики, если же для анализа больших объемов неструктурированных данных этого мало, то можно перейти на комбинированное решение на базе Oracle Big Data Appliance. СУБД TimesTen была разработана в HP в 1995 году в качестве встраиваемой в пакет HP Open Call, а затем была образована самостоятельная компания с тем же именем, купленная Oracle в 2005 году.
SAP HANA (High-performance ANalytic Appliance) представляет собой стек из сертифицированного оборудования с предустановленным ПО In-memory Computing Engine. Отметим, что SAP HANA — это синтез нескольких продуктов: поисковой машины TREX (Text Retrieval and Extraction), разработанной в Немецком центре исследований искусственного интеллекта; IMDS P*Time, созданной калифорнийской компанией с корейскими корнями Transact in Memory и купленной SAP в 2005 году; вспомогательной реляционной СУБД MaxDB, близкой родственницы СУБД Adabas D.
Второй эшелон IMDS составляют SAS Visual Analytics, Terracotta, купленная в 2011 году Software AG, финская Solid, приобретенная IBM в 2007 году, и VoltDB, выросшая из академического проекта H-Store под руководством Стоунбрейкера.
Что касается последних трех подобластей (аналитика, ориентированная на человеческие возможности; интерактивные методы Data Discovery; интерактивные методы VA), относящихся к VA и DD, то здесь выделяются компания QlikTech с ее продуктом QlikView и компания Tableau. Общим для этих решений является работа с данными, резидентными в памяти, но во всем остальном это совершенно разные системы. QlikView отличает оригинальный способ организации данных по ассоциативному принципу, а в Tableau применяется собственное хранение данных, упор в котором сделан на визуализацию — точнее, на операцию, которая получила название blending, смешивание разных компонентов с целью получения желаемого «вкуса».
На первый взгляд продукт QuikView совсем прост — выбранные значения подсвечиваются зеленым, связанные с ними — белым, а оставшиеся — серым цветом, и пользователь в режиме графического взаимодействия стремится получить наиболее выгодное распределение этих цветов — больше зеленого и белого, меньше серого. Предлагаемый метод работы чрезвычайно нагляден и не требует специального обучения пользователей.
В QlikView имеется возможность разбора данных из разных источников, выделения из них метаданных и сохранения результатов в виде одного файла, помещаемого в ассоциативную базу данных, которая хранится в оперативной памяти. Для уменьшения объемов хранения применяются оригинальнее алгоритмы компрессии. Задолго до появления современных облачных технологий в QlikView появилось понятие облака данных (data cloud), используемого для обозначения собственной формы представления данных, заменяющей традиционные кубы OLAP. Облако отличается от кубов с их строгими гранями большей гибкостью, свободой перемещения данных и большими возможностями для установления отношений между компонентами данных — ассоциациями. Для работы с облаками разработана альтернативная SQL ассоциативная логика запросов (Associative Query Logic, AQL), которая позволяет считывать данные из различных, в том числе транзационных, источников, осуществляя их предварительный анализ, выделяя ассоциации в данных и сохраняя эти ассоциации в виде метаданных. AQL не только сохраняет все существующие в OLAP отношения между данными, но и дополняет их связями, обнаруженными в процессе анализа. На рис. 4 дано сравнение двух подходов к организации данных — традиционного иерархического, который предполагает доступ с использованием SQL-запросов, и ассоциативного. Недостатком первого можно считать формальность, проявляющуюся в разрыве между данными и их контекстом. Например, из-за иерархии хранения затруднены горизонтальные связи между данными, что делает некоторые фрагменты данных недоступными — к ним невозможно проложить путь по дереву. Ассоциативная организация делает возможными разнообразные способы доступа к данным в интерактивном режиме.
Рис. 4. Табличная и ассоциативная организация данных |
QlikView позволяет организовать модель самообслуживания и сократить объем работы для сотрудников ИТ-подразделений и аналитиков. На долю первых выпадает обеспечение безопасности и связи с источниками данных, а аналитики создают модели данных, преобразуют их и извлекают данные из внешних источников. Все остальные пользователи могут работать со своих любых устройств.
Имя Tableau стало в последние годы символом новейших достижений в области визуализации данных бизнес-анализа. Эта компания возникла в 2003 году в Стэнфорде после разработки там нового подхода к работе с данными с использованием языка Visual Query Language (VizQL). По существу этот язык является графической надстройкой над классическими языками запросов SQL и MDX, обеспечивая связь между визуальным и табличным представлениями данных. Его главное достоинство в способности преобразовывать наглядные для пользователя методы работы в обычные текстовые запросы к СУБД. Благодаря VizQL открывается прямая возможность для использования классических принципов СУБД в системах VA и DD.
Другой основополагающий принцип Tableau заключается в том, что практическая деятельность аналитика должна быть в максимальной степени приближена к свойственной человеческому сознанию способности оперировать графическими образами. Вместо того чтобы идти по проложенному годами окольному пути, где сначала на основании каких-то представлений приходится формулировать, писать и выполнять запросы на SQL, затем создавать отчеты и в конечном счете визуализировать данные, чтобы сделать их более понятными, Tableau сокращает эту цепочку, позволяя аналитику формулировать запросы в той же форме, в которой он хочет получить ответы. В мире Tableau действует единая графическая форма представления данных и информации.
Для названия основного приема работы с данными специалисты Tableau нашли удачное название — blending, обозначающее прием, при котором человеку что-то известно об отдельных фрагментах данных и он хочет распространить это знание на весь объем доступных ему сведений. Идея эта не нова, примерно так рассуждали психологи, занимавшиеся изучением восприятия зрительной информации, прежде всего Жан Пиаже. Чрезвычайно интересная и близкая по смыслу работа была сделана в 80-е годы отечественным геофизиком Эмилем Островским; его подход к данным может служить наглядной иллюстрацией к сделанному в Tableau. Суть предложенного Островским «Целевого прогноза» состояла в соотнесении измеренных физических показателей открытых месторождений со всей территорией потенциально нефтеносных или рудоносных провинций. Действительно, невозможно поставить месторождению в соответствие какой-либо фиксированный набор признаков, но можно выбирать какие-то подмножества и соотносить их распространение с геологическими представлениями, с данными геологической науки. Если бы удалось создать эффективно работающую систему, то она бы могла помочь с незначительными затратами найти новые места для бурения скважин. К сожалению, Островский опередил время: когда «Целевой прогноз» разрабатывался, не было достаточных вычислительных мощностей, но спустя тридцать лет Tableau удалось распространить прогнозные идеи на различные прикладные области. Предложенные этой компанией методы служат инструментами для исследования данных и для соотнесения результатов анализа с предварительным знанием и предположениями. Задача организованного таким образом анализа не сводится к получению одного ответа на один вопрос, а заключается в получении набора ответов, стимулирующих дальнейшее исследование. Tableau не стремится ошеломить пользователя неожиданной графикой — напротив, система идет от знакомого, от того, что можно понять и осознать.
Ядром Tableau является резидентная в памяти СУБД с поколоночной организацией (рис. 5), по существу, аналогичной Sybase IQ или Vertica, но не поддерживающей множество дисков, а работающей лишь с теми данными, которые ранее загружены в память только одного ПК, и при этом имеющей средства параллельной обработки данных. Работа в памяти позволяет сжимать данные в пропорции 1:10. Если же есть потребность в больших объемах, то включается механизм виртуализации с постраничным обменом данными между памятью и дисками, а в версии 6 у Tableau появилась новая машина СУБД в памяти со встроенным механизмом виртуализации. Постраничный обмен между дисками и памятью практически полностью выводит ее на функциональный уровень больших баз и снимает ограничение на объем анализируемых данных.
Рис. 5. Архитектура СУБД в памяти Tableau |
Аналитика на чипе — шаг в будущее
На конференции Strata 2013, посвященной аналитическим системам, всеобщее внимание привлекла компания SiSense, которой первой удалось выполнить аналитический тест на 10 терабайтах данных менее чем за 10 секунд, используя обычный коммерческий сервер стоимостью не более 10 тыс. долл. Событие тем более удивительное, что продукт SiSense Prism не относится к специализированным «петабайтным молотилкам», а по своему статусу ближе к VA и DD, то есть к тому, что делают Tableau или QlikView. Секрет успеха SiSense в умении использовать вычислительные способности процессора х86-архитектуры, и прежде всего его кэшей. Каждое процессорное ядро имеет собственные кэши первого и второго уровней, а кэш третьего уровня является общим для всех ядер; емкость кэша первого уровня — 32 Кбайт, второго уровня — 256 Кбайт, а третьего уровня — от 8 до 20 Мбайт. Время выборки данных при переходе с уровня на уровень примерно утраивается, а время выборки из оперативной памяти примерно в 3000 раз выше, чем из кэшa первого уровня. Кроме того, специалисты SiSence сумели чрезвычайно эффективно использовать систему команд процессора и, в частности, векторные операции.
Ядром Prism служит технология ElastiCube с поколоночной архитектурой потоков данных, оптимизирующая их передачу от дисков через память в кэш-память. Для минимизации трафика используется компрессия вплоть до попадания в кэш, в котором данные распаковываются. В отличие от резидентных в памяти решений система Prism работает с данными, хранящимися на дисках в базе собственной архитектуры, но при этом обменивается с кэшами по алгоритмам с самообучением, которые могут адаптироваться к специфике данных и аналитических алгоритмов. В итоге достигается примерно в 100 раз более высокая производительность, чем в резидентных в памяти системах. ElastiCube имеет коннекторы к различным внешним источникам данных и развитую поддержку графического пользовательского интерфейса.
***
Сегодня сложилась очень интересная ситуация: в области VA и DD несколько небольших компаний существенно опережают гигантов, что долго не сохранится — скорее всего, их купят примерно так, как это случилось с компаниями Hyperion, BusinessObjects и Cognos.