IBM InfoSphere Streams

Продукт
Название базовой системы (платформы): Apache Hadoop
Разработчики: IBM
Технологии: BI

Содержание

IBM выпустила новое программное обеспечение InfoSphere BigInsights и InfoSphere Streams, которое позволяет клиентам получать быстрое представление о потоках информации в зоне интересов их бизнеса. Программное обеспечение, которое включает в себя более 50 патентов, анализирует традиционные структурированные данные, найденные в базах данных, а также неструктурированные данные – такие как текст, видео, аудио, изображения, информация социальных медиа и данные о маршруте перемещения пользователей по Web-сайтам ("click streams") – давая возможность лицам, принимающим решения, действовать с учетом этой информации с беспрецедентной оперативностью.

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

Новые усовершенствования в InfoSphere Streams дают возможность анализировать различные «Большие данные» – такие как твиты, сообщения и комментарии в блогах, видеокадры, данные электрокардиограмм, координаты GPS, данные, поступающие от датчиков, и данные, поступающие с фондовых бирж – со скоростью, на 350% большей, чем прежде. InfoSphere BigInsights дополняет InfoSphere Streams, применяя средства анализа к статистическим данным организации, а также к потокам данным, «проходящим» через Streams. Все это представляет собой непрерывный цикл анализа, который приобретает все большую мощность по мере увеличения объема доступных данных и результатов анализа в реальном времени для моделирования с целью улучшений.

Являясь давним сторонником программных технологий с открытым исходным кодом ("open source"), IBM выбрала проект Hadoop в качестве краеугольного камня своей стратегии «Больших данных». Продолжая уделять повышенное внимание созданию передовых аналитических решений для предприятий, IBM опирается на возможности этих открытых технологий, расширяя их улучшенными функциями управления, обеспечения безопасности и надежности, что требуется бизнесу. Способность Hadoop поддерживать обработку широкого спектра видов информации на многочисленных вычислительных платформах в сочетании с аналитическими возможностями IBM позволяет клиентам решать сегодняшние растущие проблемы с «Большими данными». Портфель IBM с предложениями, основанными на Hadoop, включает продукт IBM Cognos Consumer Insight, который объединяет контент социальных медиа с традиционной бизнес-аналитикой, и продукт IBM Coremetrics Explore, который сегментирует покупательские модели потребителей и позволяет детально исследовать мобильные данные. Кроме того, Hadoop является базовой программной инфраструктурой, которую вычислительная система IBM Watson использует с целью распределения рабочей нагрузки для обработки информации, что поддерживает революционную способность системы понимать естественный язык и давать конкретные ответы на вопросы со сверхвысокой скоростью.

Streams — это среда разработки и одновременно среда исполнения приложений для потоковых данных. Продукт включает в себя наборы библиотек, которые позволяют строить аналитические приложения для обработки различных типов данных — финансовых, текстовых, видео, аудио. Например, с помощью соответствующего тулкита в Streams можно написать приложение для обработки информации, поступающей с видеокамер, которое будет сопоставлять все лица с определенной базой данных и выполнять некоторые действия при выявлении совпадения. Приложение, разработанное с использованием набора библиотек для аудиоданных, сможет, например, выделять звук человеческого голоса из шума моря. Библиотеки для финансовых данных дают возможность разбирать форматы этого типа информации. Streams предоставляет инструменты разработки на специальном языке Streams Processing Language, созданном в IBM. После того как программа на SPL написана и отлажена, она переносится в продуктивную среду Streams. В этот момент начинает работать технология по оптимизации. Во время написания программы разработчик не знает, в какой среде она будет исполняться. В зависимости от интенсивности потока данных приложение может быть развернуто на одном ноутбуке или на кластере из сотни мощных машин, которые будут вести параллельную обработку. Красота решения IBM в том, что программа на декларативном языке преобразуется в эффективный машинный код. Streams сначала получает задание осуществить те или иные преобразования данных, а затем информацию о том, что эти преобразования надо реализовать, например, для потока данных в 1 Тбайт в час. И приложение будет развернуто на оптимальной аппаратной конфигурации для такой скорости обработки.

Описание

Платформа полезна для бизнеса из-за возможности оперативного получения нужных данных и лучшим результатам при работе с приложениями, чувствительными к времени отклика (таким как выявление случаев мошенничества или управление сетью). InfoSphere Streams может объединять потоки, помогая получать новые знания из нескольких потоков, как показано на рисунке.


Главные задачи InfoSphere Streams

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

В составе InfoSphere Streams модель программирования и интегрированная среда разработки для определения источников данных, программные аналитические модули - операторы, объединенные в исполнительные модули обработки. InfoSphere Streams содержит инфраструктуру, составляющую из этих компонентов масштабируемые приложения для обработки потоков. Догнать и перегнать: Российские ВКС прирастают новыми функциями 5.8 т

Основные компоненты платформы

  • Среда времени выполнения - включает в себя стандартизированные сервисы и планировщик для развертывания и мониторинга Streams-приложений на одном или нескольких интегрированных узлах.
  • Модель программирования - позволяет создавать Streams-приложения при помощи декларативного языка Streams Processing Language (SPL). Этот язык позволяет описывать требуемые факты, а среда времени выполнения отвечает за выбор наилучшего способа обработки запроса. В этой модели Streams-приложения представляются в виде графов, которые состоят из операторов и соединяющих их потоков.
  • Инструменты мониторинга и интерфейсы администрирования - скорость работы Streams-приложений с данными намного больше, чем та, которую могут отследить обычные средства мониторинга операционной системы. InfoSphere Streams содержит инструменты, предназначенные для работы в такой среде.

Язык Streams Processing Language

SPL - это язык программирования для InfoSphere Streams, являющийся языком построения распределенных потоков данных. SPL представляет собой полнофункциональный язык программирования наподобие C++ или Java, поддерживающий пользовательские типы данных. Собственные функции можно писать как на SPL, так и на языках C++ или Java. Определяемые пользователем операторы можно писать на C++ или Java.

Непрерывное приложение InfoSphere Streams описывает ориентированный граф, состоящий из отдельных операторов, соединенных и работающих с несколькими потоками данных. Потоки данных могут попадать в систему как извне, так и генерироваться приложениями внутри нее. SPL-приложения состоят из следующих основных составных элементов:

  • Поток - бесконечная последовательность структурированных записей. Может обрабатываться операторами построчно или на основе заданного окна.
  • Запись - структурированный список атрибутов и их типов. Каждая запись потока соответствует форме, определяемой типом потока.
  • Тип потока - определяет имя и тип данных для каждого атрибута записи.
  • Окно - ограниченная последовательная группа записей. Окно может быть основано на счетчике, времени, значении атрибута или знаках препинания.
  • Оператор - главный составной элемент SPL. Операторы обрабатывают данные потоков и могут порождать новые потоки.
  • Обрабатывающий элемент - главный исполнительный блок, может состоять из одного или нескольких операторов.
  • Задание - Streams-приложение, развертываемое для выполнения, состоит из одного или нескольких обрабатывающих элементов. Помимо обрабатывающих элементов компилятор SPL генерирует файл на языке Application Description Language (ADL), описывающий структуру приложения. ADL-файл содержит подробную информацию о каждом обрабатывающем элементе: информацию о том, какой двоичный файл необходимо загрузить и выполнить, данные об ограничениях планировщика, описания форматов потока и внутренний граф потока данных оператора.

На рисунке показан рабочий цикл SPL-приложения в среде InfoSphere Streams.

Файл:Infostreams_59510612.png

Рабочий цикл InfoSphere

Среда разработки

В InfoSphere Streams включена среда разработки, она состоит из Eclipse IDE, Streams Live Graph, и Streams Debugger. Кроме того, в состав платформы включены наборы инструментов, ускоряющие и облегчающие разработку решений для определенных типов задач или направлений:

  • Стандартный набор инструментов - содержит операторы, поставляемые в продукте по умолчанию
  • Операторы сопряжения
  • Вспомогательные операторы
  • Набор инструментов для Интернета

  • Набор инструментов для работы с базами данных - поддерживает различные СУБД, включая DB2, Netezza, Oracle Database, SQL Server и MySQL.
  • Другие встроенные инструменты для работы с финансами, текстом и "большими данными", а также для глубинного анализа данных.

Интеграция и взаимодействие BigInsights и InfoSphere Streams

Компании, где генерируются большие объемы информации, пытаются решать проблему анализа данных исходя из важных причин:

  • необходимость своевременного распознавания и реагирования на возникающие события
  • прогнозирование действий на основе накопленной информации.

Эти причины ведут к необходимости наличия функций: прозрачная работа с данными, находящимися "в движении" (текущие данные), анализ данных, находящихся "в покое" (накопленные данные), работа с огромными объемами разнородных данных "в движении". Интеграция IBM InfoSphere Streams (данные "в движении") и BigInsights (данные "в покое") подходит для следующих сценариев:

Масштабируемый процесс захвата информации - процесс непрерывной передачи данных из Streams в BigInsights. Например, неструктурированные текстовые данные социальных сетей (подобных Twitter и Facebook), как правило, подвергают обработке для того, чтобы узнать о различных мнениях или тенденциях. В этом случае гораздо эффективнее будет извлекать нужные данные по мере их получения, а ненужные данные (например, спам) уничтожать на ранних этапах. Такая интеграция позволит компаниям избежать лишних затрат на хранение огромных объемов ненужной информации.

Усовершенствование и обогащение - исторический контекст, генерируемый BigInsights для усовершенствованного анализа и обогащения входящих данных Streams. BigInsights можно использовать для анализа интегрированных данных, полученных из различных динамических и статических источников за длительный период времени. Результаты этого анализа формируют содержимое для различных методов анализа в реальном времени, и эти результаты можно привести к требуемому состоянию. Если мы снова рассмотрим социальные сети, то увидим, что в сообщении сети Twitter содержится только идентификатор человека, написавшего это сообщение. Однако накопленные исторические данные могут дополнить эту информацию различными атрибутами (например, первопричина сообщения), создав возможность проанализировать данные на более низком уровне и правильно отреагировать на настроение этого пользователя. Адаптивные модели анализа - модели, генерируемые в BigInsights в процессе анализа (такими моделями могут являться глубинный анализ данных, машинное самообучение или статистическое моделирование). Эти модели могут служить базой для анализа входящих данных в Streams и обновляться на основе наблюдений в реальном времени.

Данные "в движении" и данные "в покое" - часть платформы IBM Big Data, можно интегрировать с помощью трех основных типов компонентов:

  • Общие средства анализа - как в Streams, так и в BigInsights можно использовать одни и те же средства анализа данных.
  • Общие форматы данных - операторы форматирования Streams могут преобразовывать данные из формата записей Streams в форматы, используемые в BigInsights.
  • Адаптеры обмена данными - для обмена данными с BigInsights можно использовать адаптеры.



ПРОЕКТЫ (1) ИНТЕГРАТОРЫ (2) РЕШЕНИЕ НА БАЗЕ (1)
СМ. ТАКЖЕ (4)


Распределение вендоров по количеству проектов внедрений (систем, проектов) с учётом партнёров

За всю историю
2021 год
2022 год
2023 год
Текущий год

  Qlik (QlikTech) (59, 464)
  Форсайт (19, 330)
  SAP SE (70, 301)
  Oracle (65, 267)
  Loginom Company (ранее BaseGroup Labs Аналитические технологии) (4, 236)
  Другие (1083, 1520)

  SAP SE (6, 13)
  Qlik (QlikTech) (2, 8)
  Форсайт (2, 8)
  Microsoft (2, 6)
  Доверенная среда (1, 5)
  Другие (46, 72)

Распределение систем по количеству проектов, не включая партнерские решения

За всю историю
2021 год
2022 год
2023 год
Текущий год