Опять наступает конец года, и мы заглядываем через магический кристалл в мир данных. Что же было самым важным в этом мире в 2017 г., и что вероятно останется в этой роли в
Начнем с констатации очевидного: у нас нет возможностей точно предсказывать то, что состоится в будущем, и если кто-то заявляет иное, это надо воспринимать очень скептически. Даже при использовании современных методов анализа данных неизбежно будут присутствовать изъяны и предвзятость.
Мы сознаем субъективность излагаемой ниже точки зрения, но она основана на мониторинге отраслевой информации и новостей, которые принес завершающийся год, и мы пытаемся все это использовать, чтобы выявить самые важные тренды на будущее. Короче говоря, вот пять вещей, которые проявили себя в 2017 г. и продолжат привлекать к себе внимание в году
5. Стриминг становится мейнстримом
В мире данных стриминг отнюдь не только Netflix, хотя Netflix тоже им занимается. Не совсем понятно? Давайте взглянем повнимательнее. Стриминг подразумевает потоки данных, обрабатываемые в реальном времени. Что касается реального времени, это дело не столь уж новое, и эту функцию годами выполняют операционные базы данных.
Новым же является тот факт, что данные не просто принудительно пересылаются на хранение в какой-то бэкэнд, чтобы питать работу приложений, но на лету еще и анализируются. Парадигма стриминга получила свое название от бесконечных потоков данных, генерируемых приложениями, но это одновременно порождает ряд сложных для выполнения требований.
Как поступить с семантикой и реализацией запросов, когда ваши данные не являются конечными, какие формы обработки возможны для таких данных, как их сочетать с данными из других источников или как их направлять в конвейеры машинного обучения и как это делать в продуктивном масштабе?
Это сложные вопросы. Вот почему аналитика данных обратилась к использованию так называемой лямбда-архитектуры — двух различных уровней обработки входящих данных: пакетного уровня, работающего с историческими данными, и уровня реального времени, работающего с «живыми» данными.
Выход не идеальный: надо поддерживать два набора кодовых баз и платформ, что подразумевает лишние труды, лишние затраты и лишние возможности для противоречий. Но пока уровень реального времени не был реально готов к задаче работать со всем на свете, это было единственно жизнеспособной опцией. Однако с взрослением платформ процессинга данных в реальном времени лямбда-архитектура начала уступать место каппа-архитектуре с одним уровнем реального времени, управляющим всеми процессами.
Сферами применения, стимулирующими внедрение приложений стриминга данных в реальном времени, стали Интернет вещей и финансовые сервисы. Однако это не единственные области, где время это деньги, что демонстрируют фирмы, осваивающие программируемые решения для рекламы или розничной торговли. Например, возможность идентифицировать и обрабатывать в реальном времени отклоненные транзакции с кредитными картами может сократить долю таких транзакций на 80%, тем самым увеличив выручку от продаж.
Наиболее известными платформенными опциями здесь являются Open Source-проекты фонда Apache в сочетании с рядом предложений коммерческих организаций по SLA и поддержке и сервисами облачных провайдеров. В первом списке присутствуют Flink от dataArtisans, Spark от DataBricks и Kafka от Confluent, а во втором — сервисы Amazon Kinesis, Azure Stream Analytics и Google Cloud Dataflow.
Интересной инициативой является проект Apache Beam, призванный стать слоем интероперабельности между разными опциями и ставящий задачу предложить один общий API для всех платформ стриминга. Beam вначале разрабатывался Google и стал частью Flink, но похоже оказался в тупиковой ситуации, так как по мнению людей из сообщества Kafka, он им не интересен, пока не пополнится поддержкой таблиц, а сообщество Spark не намерено выделять на его поддержку свои ресурсы.
4. Гибридная транзакционно-аналитическая обработка
Традиционно операционные базы данных и платформы для анализа данных представляли два разных мира. И это воспринималось как нечто естественное, поскольку требования сценариев, нуждающихся в немедленных результатах и целостности транзакций, принципиально очень отличаются от сценариев, задействующих сложный анализ и продолжительную обработку.
Однако тут снова имеет место неидеальная ситуация, в которой данные приходится перемещать между операционными платформами и платформами аналитики. Это влечет за собой значительные затраты и сложности и означает, что аналитика не берет в расчет наиболее свежие данные. Встает вопрос, нельзя ли найти способ объединить транзакционные базы данных с обработкой данных по моделям, используемым для хранилищ данных?
Конечно, это легче сказать, чем сделать, и имеются убедительные причины, почему эта цель до сих пор не достигнута. Однако сегодня у этой цели появилось имя — Hybrid Transactional Analytical Processing (гибридная транзакционно-аналитическая обработка), и что наверно еще важнее, рождаются инициативы, пытающиеся решить эту задачу в реальном мире.
Некоторые из них основаны на подходах in-memory (размещение всех данных в оперативной памяти), примером чего является продукт GridGain, стартовавший как In-Memory Grid, а затем расширившийся до полноценной транзакционной базы данных, или SnappyData, соединяющий In-Memory Grid и транзакционную базу данных (FireGem) с Apache Spark. Аналогичным образом Splice Machine соединяет хранилище ключ-значение из стека Hadoop (HBase) с собственной проприетарной технологией для работы с операционными и аналитическими нагрузками на одной платформе.
Здесь есть что сказать и вендорам Hadoop, поскольку и Cloudera с Kudu, и MapR с MapR-DB пытаются расширить традиционный фокус Hadoop на аналитику на одновременное функционирование операционных баз данных. Другой интересный, но малоизвестный подход избрала компания Swarm64, работающая над тем, чтобы наделить операционные базы данных аналитическими сверхвозможностями.
3. Инсайт-платформы как сервис
Выше мы говорили про то, как используются данные, исходящие из облака. Хотя внимание к этим вопросам не ослабевает, сегодня разворачивается еще один интересный тренд — так называемые инсайт-платформы в форме сервиса (IPaaS). Их идея проста: раз уж ваши данные находятся в облаке, почему бы не иметь платформу, тоже действующую в облаке, чтобы эти данные анализировать при максимальной автоматизации процесса?
Смысл таких платформ в том, чтобы обеспечить управление данными и предоставить функции аналитики в виде коммерческой услуги, чтобы компании могли полноценно использовать глубинную информацию, извлеченную из данных. Зачем вам мучиться с формированием, обслуживанием и хранением коллекции данных, с конвейерами, визуализацией и инструментами аналитики, cо сложными процессами обработки и алгоритмами машинного обучения, чтобы получать искомые инсайты, если вы можете просто подписаться на платформу, которая все это будет делать за вас?
Это предложение соблазнительно для организаций, которые видят в этом способ обойти все сложности и затраты, связанные с теми внутренними задачами, которые потребуется решить, чтобы сделать что-либо подобное своими силами.
Возможный контраргумент заключается в том, что хотя сегодня еще не все организации стали цифровыми предприятиями, управляемыми данными, многие станут почти таковыми в ближайшем будущем. Поэтому аутсорсинг всего на свете, возможно, не самое мудрое решение, не говоря о том, что не все организации готовы или способны перенести все задачи в облако, поскольку это также чревато рядом проблем.
Как и следовало ожидать, основные предложения этой категории исходят от облачных вендоров, таких как AWS, Microsoft Azure, IBM Watson и Google Cloud Platform, однако со своими ценностными предложениями выступают и независимые компании, например, DataBricks и Qubole. Кроме того, эту сферу осваивают Hadoop-вендоры Cloudera, Hortonworks и MapR, которые понимают, что хотя она выходит за рамки собственно Hadoop, ею имеет смысл заниматься.
2. Продвигая стек аналитики
Применительно к аналитике люди традиционно думают о хранилищах данных, отчетах, инструментальных панелях, а в последнее время еще и о визуальных интерфейсах, виджетах и подобных вещах. Иными словами, люди хотят видеть, что происходит в интересующей их области, и возможно понимать, почему это происходит, посредством проникновения вглубь данных и их коррелирования.
Хотя ничто из этого, именуемого соответственно описательной и диагностической аналитикой, не потеряло значения, это прошлогодние новости. Сегодня это во многом данность, и поскольку многие средние организации уже довольно поднаторели в искусстве анализа данных, оно вряд ли может служить фактором их дифференциации.
Поскольку описательная и диагностическая аналитика становятся общедоступными и общеупотребительными, мы продвигаем стек в направлении прогнозной и предписывающей аналитики. Прогнозная аналитика дает способность предсказывать, что будет происходить дальше на базе того, что происходило до сих пор, а предписывающая аналитика позволяет предпринимать правильные действия для достижения желаемого результата.
Прогнозная аналитика типично использует машинное обучение (МО) — технику, основанную на использовании прошлых данных для тренировки алгоритмов предсказания будущих данных, вместо кустарной процедурной обработки традиционными видами ПО. Предписывающая аналитика находится на еще более высокой ступени сложности, зачастую приближающейся к искусственному интеллекту (ИИ), и пока что мало кто умеет ею пользоваться.
Как уже отмечалось ранее, умножение числа приложений и ажиотаж вокруг МО обусловлены не столько прогрессом в алгоритмах, сколько тем фактом, что к настоящему времени мы накопили достаточные объемы данных и вычислительные ресурсы, чтобы МО во многих случаях стало жизнеспособным.
Этот сегмент реально испытывает бурный рост по всем направлениям, будь то библиотеки МО типа Spark MLLib, Caffe2, TensorFlow и DeepLearning4J, которые люди могут использовать, создавая с чистого листа свои собственные алгоритмы и приложения МО; фреймворки встроенной аналитики, такие как Salesforce Einstein, SAP Hana или GoodData, предлагающие аналогичные возможности в своей среде; или именитые компании типа Amazon, Facebook, Uber и YouTube, создающие культовые образцы приложений и зачастую вносящие свой вклад в эту область.
1. Петля обратной связи машинного обучения
Темпы изменений катализируются и ускоряются в основном самими данными в саморазворачивающейся последовательности: продукт, работающий на данных -> больше данных -> лучшие инсайты -> больше прибылей -> больше инвестиций -> лучший продукт -> больше данных. Поэтому в то время, как некоторые организации еще бьются над базовыми вопросами сбора и хранения данных, управления ими, безопасности, организационной культуры и квалифицированных кадров, другие уже озабочены более высокими уровнями в иерархии нужд, связанных с большими данными.
Предыдущий абзац является буквальной копией того, что мы отмечали год назад, но то, что он описывает, стало еще более выраженным до такой степени, что мы слышим призывы журнала Economist выработать «новый подход к антитрастовым нормам, диктуемый экономикой данных». Почему Economist об этом заговорил? Разве не считается, что данные питают инновации и все разновидности новых прекрасных приложений?
Это, безусловно, так. Инновации и автоматизация на базе данных, подпитываемые прогрессом МО и ИИ, меняют все вокруг. В 2017 г. мы даже начали замечать признаки автоматизации самой автоматизации, например, в форме фреймворков МО, конструирующего МО. Проблема, однако, состоит в том, что эта петля обратной связи ведет к появлению новых монополий, которые ничто не сдерживает.
Происходит мощная концентрация данных, опыта и инфраструктуры в руках очень небольшой кучки игроков, и то, что мы это недопонимаем и не действуем, ведет к дальнейшему усугублению ситуации. У этой кучки игроков имеются четкие программы, содержащие единственную цель: продвинуть самих себя. Поэтому слепая вера в инновации и автоматизацию на базе данных может смениться глубоким разочарованием.
Приведу слова исполнительного директора IPSoft Читана Дьюба: «Я не встречал ни одного CEO, от Deutsche Bank до JP Morgan, который бы мне сказал: „да, это значительно повысит наши экономические результаты, но это может повлечь и социальные последствия — давайте погодим и об этом подумаем“. Сейчас самое главное в том, как поднять человечество на новую ступень развития. Если люди не отрезвеют, дальше им придется тяжело — это мое мнение».
«Мы говорим о машинах, вытесняющих людей, машинах, изменяющих формы труда. Кто владеет машинами? Кто должен владеть машинами? Возможно, нам надо задуматься о том, как сделать, чтобы люди, работающие с машинами, являлись частичными владельцами этих машин», — говорит Лора Тайсон, бывший председатель Экономического совета при президенте США.