Apama (программное обеспечение) - Apama (software)
Разработчики) | Software AG |
---|---|
Стабильный выпуск | 10.5.0 |
Написано в | C ++ и Java (язык программирования) |
Операционная система | Кроссплатформенность |
Тип | Обработка сложных событий, Обработка потока событий, Интернет вещей, Аналитика данных |
Лицензия | Коммерческий / Freemium |
Интернет сайт | общность |
Апама это Комплексная обработка событий (CEP) и Обработка потока событий (ESP) двигатель, разработанный Software AG. Apama служит платформой для выполнения потоковой аналитики по ряду входов и приложений с большим объемом / низкой задержкой, таких как Интернет вещей устройства, финансовые биржи, обнаружение мошенничества, социальные сети и т. д.[1] Пользователи могут определять шаблоны данных для прослушивания и действия, которые следует предпринять при обнаружении этих шаблонов, которые определены в предоставленном Специфический для домена язык называется языком обработки событий (EPL). Ядро движка Apama написано на C ++; процесс также может дополнительно содержать JVM для взаимодействия с созданным пользователем Ява код. Apama делает упор на высокую пропускную способность, низкую задержку и эффективное использование памяти; используется в обоих Intel ориентиры[2] и меньшие машины, такие как Raspberry Pi,[3] роутеры и другие Край / Интернет вещей[4] устройств. Это особенно примечательно в пространстве КЭП как один из самых ранних проектов, долгосрочный лидер рынка,[5][6][7][8] и изобретатель многих патентов.[9][10][11][12][13][14][15][16]
История
Apama Ltd. была основана в 1999 г. Д-р Джон Бейтс, Д-р Джайлз Нельсон и д-р Мохамад Афшар, которые встретились во время исследования в Кембриджский университет, факультет компьютерных наук и технологий.
В 2005 году Apama Limited была приобретена Программное обеспечение Progress за 25 миллионов долларов.[17]
В 2013 году компания Apama была приобретена Software AG у компании Progress за нераскрытую сумму.[18]
В 2016 г. freemium была выпущена версия Apama Community Edition,[19] наряду с поддерживающими форумами и GitHub пробелы.
Обзор
Язык обработки событий
Приложения для Apama создаются на языке обработки событий (EPL). EPL содержит языковые функции, разработанные исключительно для Программирование, управляемое событиями,[20] включая:
- События - простые структуры данных, содержащие поля и действия.
- Мониторы - подобно классам на других языках, мониторы содержат слушателей и действия и загружаются при внедрении.
- Слушатели - декларативные шаблоны, определяющие интересные условия / комбинации событий. Поддерживаются агрегация, временные операторы и операторы фильтрации.
- Действия - императивные функции, обычно выполняемые слушателями при активации или мониторами при загрузке.
- Контексты - Подобно потокам, мониторы существуют внутри контекстов.
- Каналы - Механизм связи между контекстами и внешними системами.
- Потоки - упорядоченные разделы событий с поддержкой агрегации и SQL -подобные запросы
Синтаксис, подобный EPL C ++ / Java, разработан для лаконичного создания приложений CEP в сочетании с вышеуказанными функциями, пример которых можно найти ниже:
мероприятие MyEvent { целое число myInt; последовательность<нить> myListOfStrings; логический myBool;} монитор MyMonitor { действие в процессе() { порождать рабочий() к контекст("mySideThread"); } действие рабочий() { на все MyEvent(myInt>10) в качестве myCoassignedEvent -> MyEvent(myInt>20) или же MyEvent(myBool=истинный) в 30.0 { если(Выполнять работу(myCoassignedEvent.myListOfStrings) != истинный) { бревно "Проблема!"; } } } действие Выполнять работу(последовательность<нить>) возвращается логический { // работаем над списком возвращаться истинный; }}
Запросы Apama
Apama Queries - это альтернативный язык для создания правил для определенных наборов данных, таких как последние пять минут полученных данных или последние двадцать полученных событий, в автоматически многопоточной среде, масштабируемой между машинами. Запросы Apama лучше подходят для мониторинга очень больших наборов данных, например банковских транзакций. Как правило, каждая сущность (то есть владелец учетной записи) будет разделена и обработана независимо от остальной части набора. Запросы и мониторы могут обмениваться данными по каналам. Пример предыдущего сценария можно найти ниже:
запрос FindSuspicious { параметры { плавать ПРОДОЛЖИТЕЛЬНОСТЬ; плавать ПОРОГ; } входы { Снятие() ключ номер карты в ПРОДОЛЖИТЕЛЬНОСТЬ; } найти каждый Снятие в качестве ш куда ш.количество > 100 Выбрать последний(ш.ID транзакции) в качестве tid Выбрать последний(ш.номер карты) в качестве Сид имея последний(ш.количество) > ПОРОГ * средний(ш.количество) { Отправить SuspiciousTransaction(tid, Сид) к SuspiciousTransactionManager; }}
Дизайнер
Software AG Designer - это Затмение основан IDE со специальной поддержкой разработки и развертывания приложений Apama, которая входит в стандартную установку. Возможности включают поддержку кода, управление пакетами, профилирование, разработку графического интерфейса и управление развертыванием.
Плагины
Apama поддерживает возможность пользователей создавать плагины для расширения возможностей. Эти плагины бывают двух видов: плагины EPL (добавить функции в EPL ) и плагины подключения (для связи с внешним миром). API-интерфейсы C ++ и Java доступны для обоих типов плагинов. Плагины подключения бывают двух форм, кодеков (которые переводят данные из одного формата в другой, например, из внутреннего представления Apama в JSON ) и транспорты (которые обрабатывают отправку / получение во / из внешних систем, таких как JMS ). Соединения с внешними системами выполняются путем составления цепочек кодеков и одного транспорта для достижения желаемой топологии; эти связи определяются YAML файл конфигурации при запуске или через динамическое управление с помощью предоставленных инструментов. Несколько готовых плагинов для популярных технологий (например, р, MQTT, Кафка, HTTP, MatLab ), а также возможность подключения к другим продуктам Software AG (например, Universal Messaging, Терракотовый, Cumulocity) поставляются с установками Apama.
Упорство
Процесс Apama полностью находится в памяти и поддерживает дополнительный SQLite основанная на встроенной системе сохраняемости. Кроме того, API подключения поддерживает надежный обмен сообщениями с системами, которые его поддерживают, например JMS. Наконец, предварительно созданный плагин распределенного хранилища памяти предоставляется со стандартными установками для использования с соответствующими внутренними компонентами.
Визуализация
Apama предоставляет встроенный приборная панель технология, разработанная в Software AG Designer, а также встроенные подключения к MashZone NextGen компании Software AG.
Смотрите также
- Обработка сложных событий (CEP) - Связанная технология для построения и управления информационными системами, управляемыми событиями.
- Система управления потоками данных (DSMS) - тип программной системы для управления потоками данных и запросов к ним.
- Корреляция событий
- Архитектура, управляемая событиями - (EDA) - это шаблон архитектуры программного обеспечения, способствующий производству, обнаружению, потреблению и реакции на события.
- Обработка потока событий - (ESP) - это связанная технология, которая ориентирована на обработку потоков связанных данных.
- Оперативная разведка - И CEP, и ESP - это технологии, лежащие в основе оперативного интеллекта.
- Сопоставление с образцом
- Бизнес-аналитика в реальном времени - Бизнес-аналитика - это применение знаний, полученных из системы CEP
Рекомендации
- ^ «Платформа потоковой аналитики и обработки событий Apama». Получено 2018-01-16.
- ^ «Apama Streaming Analytics * с процессором Intel® Xeon® E7 v3». Intel. Получено 2018-01-16.
- ^ «Объявление о выпуске Apama Community Edition Apama 9.12 Community Edition». www.apamacommunity.com. Получено 2018-01-16.
- ^ «Software AG представляет Apama EagleEye для обновленного решения по наблюдению за рынком на базе ИИ - IoT Now - Как вести бизнес, основанный на IoT». Интернет вещей сейчас - как вести бизнес с использованием Интернета вещей. 2017-11-23. Получено 2018-01-16.
- ^ "Sell-Side Technology Awards 2013: Лучшая технология обработки сложных событий (CEP) на стороне продавца ─ Progress Apama - WatersTechnology.com". WatersTechnology.com. 2013-06-03. Получено 2018-02-08.
- ^ «Магический квадрант для интеллектуальных пакетов управления бизнес-процессами». www.gartner.com. Получено 2018-01-19.
- ^ «Forrester Wave ™: потоковая аналитика, третий квартал 2017 г.». www.forrester.com. Получено 2018-01-19.
- ^ «Платформы потоковой аналитики - Bloor Research». www.bloorresearch.com. Получено 2018-01-19.
- ^ [1], Нельсон, Джайлс и Джон Бейтс, "Метод и устройство для оценки запросов относительно полученной информации о событиях"
- ^ [2], Митчелл, Роберт Скотт; Марк К. Хорсбург и Ричард М. Бентли, «Комплексная система обработки событий, имеющая несколько дублирующих механизмов обработки событий»
- ^ [3], Бейтс, Джон; Гарет Смит и Ричард М. Бентли, «Конфигурация процесса на основе событий»
- ^ [4], Бейтс, Джон; Гарет Смит и Ричард М. Бентли, «Автоматизированное создание и развертывание сложных приложений обработки событий и панелей мониторинга деловой активности»
- ^ [5], Рид, Кристофер и Марк Хорсбург, "Система и метод управления выделением и освобождением объектов в многопоточной системе"
- ^ [6], Смит, Гарет, "Системы и / или методы наблюдения и мониторинга торговли"
- ^ [7], Смит, Гарет, «Динамически адаптируемый менеджер по работе с клиентами в реальном времени и / или связанный метод»
- ^ [8], СМИТ, Лейтон и Гарет Смит, «Системы и методы наблюдения и реагирования на крупных объектах с использованием динамически анализируемых эмоциональных входов»
- ^ «Progress Software объявляет о приобретении Apama». Получено 2018-01-16.
- ^ «Progress Software объявляет о соглашении о продаже решения Apama компании Software AG (NASDAQ: PRGS)». инвесторы.progress.com. Архивировано из оригинал на 2018-02-09. Получено 2018-01-16.
- ^ «Apama Community Edition представляет Apama Community Edition». www.apamacommunity.com. Получено 2018-01-16.
- ^ http://www.apamacommunity.com/wp-content/uploads/2016/06/SAG_The_Apama_Platform_20PG_WP_Jun16-Web.pdf
внешняя ссылка
- Версия для сообщества Apama
- Коммерческое издание Apama
- Software AG
- Forrester Wave: Streaming Analytics, III квартал 2017 г.
- Подрывная аналитика Томаса В. Динсмора, Apress (ISBN 978-1-4842-1312-4), книгу о новых тенденциях в аналитике, включая Apama
- PrEstoCloud, исследовательская статья с участием Apama[постоянная мертвая ссылка ]