Apama (software) - Apama (software)
Vývojáři | Software AG |
---|---|
Stabilní uvolnění | 10.5.0 |
Napsáno | C ++ a Java (programovací jazyk) |
Operační systém | Cross-platform |
Typ | Komplexní zpracování událostí, Zpracování proudu událostí, IoT, Analýza dat |
Licence | Komerční / Freemium |
webová stránka | apamacommunity |
Apama je Komplexní zpracování událostí (CEP) a Zpracování proudu událostí (ESP) motor, vyvinutý společností Software AG. Apama slouží jako platforma pro provádění streamovacích analýz v řadě vstupů a aplikací s vysokou hlasitostí / nízkou latencí a aplikací, jako jsou IoT zařízení, finanční burzy, detekce podvodů, sociální média a podobné.[1] Uživatelé mohou definovat datové vzory k naslouchání a akce, které se mají provést, když se tyto vzory naleznou, které jsou definovány v zadané části Jazyk specifický pro doménu nazývá jazyk zpracování událostí (EPL). Je napsán jádrový modul Apama C ++; proces může také volitelně obsahovat JVM pro interakci s vytvořeným uživatelem Jáva kód. Apama se zaměřuje na vysokou propustnost, nízkou latenci a efektivní výkon paměti; použitý v obou Intel měřítka[2] a menší stroje, jako je Raspberry Pi,[3] routery a další Okraj / IoT[4] zařízení. Je pozoruhodné zejména v rámci prostoru CEP jeden z prvních projektů, dlouhodobý lídr na trhu,[5][6][7][8] a inovátor mnoha patentů.[9][10][11][12][13][14][15][16]
Dějiny
Společnost Apama Ltd. byla založena v roce 1999 společností Dr. John Bates, Dr. Giles Nelson a Dr. Mohamad Afshar, kteří se setkali při provádění výzkumu na Katedra počítačů a univerzity na univerzitě v Cambridge.
V roce 2005 společnost Apama Limited získala společnost Software Progress za 25 milionů dolarů.[17]
V roce 2013 získala společnost Apama Software AG od společnosti Progress za nezveřejněnou částku.[18]
V roce 2016 freemium byla vydána verze Apama Community Edition,[19] vedle podpůrných fór a GitHub mezery.
Přehled
Jazyk zpracování událostí
Autorem aplikací pro Apama je jazyk pro zpracování událostí (EPL). EPL obsahuje jazykové funkce určené čistě pro Programování řízené událostmi,[20] počítaje v to:
- Události - jednoduché datové struktury obsahující pole a akce
- Monitory - Podobně jako třídy v jiných jazycích obsahují monitory posluchače a akce a načítají se po injekci
- Posluchači - Deklarativní vzory definující zajímavé podmínky / kombinace událostí. Podporovány jsou agregační, časové a filtrační operátory
- Akce - imperativní funkce, obvykle spuštěné posluchači po aktivaci nebo monitory po načtení
- Kontexty - Podobně jako vlákna, monitory existují uvnitř kontextů
- Kanály - Mechanismus pro komunikaci mezi kontexty a externími systémy
- Proudy - seřazené oddíly událostí s podporou agregace a SQL -jako dotazy
Syntaxe typu EPL C ++ / Java je navržena tak, aby stručně vytvářela aplikace CEP ve spojení s výše uvedenými funkcemi, jejichž příklad je uveden níže:
událost MyEvent { celé číslo myInt; sekvence<tětiva> myListOfStrings; booleovský myBool;} monitor MyMonitor { akce onload() { potěr pracovník() na kontext(„mySideThread“); } akce pracovník() { na Všechno MyEvent(myInt>10) tak jako myCoassignedEvent -> MyEvent(myInt>20) nebo MyEvent(myBool=skutečný) v rámci 30.0 { -li(doWork(myCoassignedEvent.myListOfStrings) != skutečný) { log "Problém!"; } } } akce doWork(sekvence<tětiva>) se vrací booleovský { // pracujte na seznamu vrátit se skutečný; }}
Apama dotazy
Apama Queries je alternativní jazyk pro vytváření pravidel nad definovanými datovými sadami, jako je posledních pět minut přijatých dat nebo posledních dvacet přijatých událostí, v automaticky vícevláknovém prostředí, které je škálovatelné napříč stroji. Apama Queries jsou vhodnější pro monitorování velmi velkých souborů, jako jsou bankovní transakce. Každá entita (tj. Majitel účtu) bude obvykle rozdělena a zpracována nezávisle na zbytku sady. Dotazy a monitory mohou komunikovat prostřednictvím kanálů. Příklad předchozího scénáře najdete níže:
dotaz Najděte podezřelé výběry { parametry { plovák DOBA TRVÁNÍ; plovák PRÁH; } vstupy { Vybrání() klíč číslo karty v rámci DOBA TRVÁNÍ; } nalézt každý Vybrání tak jako w kde w.množství > 100 vybrat poslední(w.ID transakce) tak jako příliv vybrat poslední(w.číslo karty) tak jako cid mít poslední(w.množství) > PRÁH * prům(w.množství) { poslat SuspiciousTransaction(příliv, cid) na SuspiciousTransactionManager; }}
Návrhář
Software AG Designer je Zatmění na základě IDE se speciální podporou pro vývoj a nasazení aplikací Apama, která je součástí standardní instalace. Mezi funkce patří pomoc s kódem, správa balíčků, profilování, vývoj grafického uživatelského rozhraní a správa nasazení.
Pluginy
Apama podporuje schopnost uživatelů vytvářet pluginy pro rozšíření schopností. Tyto pluginy přicházejí ve dvou formách, pluginy EPL (přidat funkce do EPL ) a Pluginy pro připojení (pro komunikaci s vnějším světem). C ++ a Java API jsou k dispozici pro oba typy pluginů. Pluginy pro připojení přicházejí ve dvou formách, kodeky (které překládají data z jednoho formátu do jiného, například interní zastoupení Apama do JSON ) a transporty (které zpracovávají odesílání / příjem do / z externích systémů, jako je JMS ). Připojení k externím systémům se provádí složením řetězců kodeků a jednoho přenosu, aby se dosáhlo požadované topologie; tato spojení jsou definována a YAML konfigurační soubor při spuštění nebo prostřednictvím dynamické správy s poskytnutými nástroji. Několik předem připravených pluginů pro populární technologie (např. R, MQTT, Kafka, HTTP, MatLab ) a také připojení k dalším produktům Software AG (např. Universal Messaging, Terakota, Cumulocity) jsou dodávány s instalacemi Apama.
Vytrvalost
Proces Apama je zcela v paměti a podporuje volitelné SQLite zabudovaný persistenční systém. Rozhraní API pro připojení navíc podporuje spolehlivé zasílání zpráv systémům, které jej podporují, například JMS. Nakonec je předem připravený plugin úložiště distribuované paměti vybaven standardní instalací pro použití s příslušnými back-endy.
Vizualizace
Apama poskytuje vestavěné palubní desky technologie vyvinutá v rámci Software AG Designer, stejně jako nativní připojení k MashZone NextGen společnosti Software AG.
Viz také
- Složité zpracování událostí (CEP) - Související technologie pro budování a správu informačních systémů řízených událostmi.
- Systém pro správu datových toků (DSMS) - Typ softwarového systému pro správu a dotazování na datové toky
- Korelace událostí
- Architektura založená na událostech - (EDA) je vzor softwarové architektury podporující výrobu, detekci, spotřebu a reakci na události.
- Zpracování proudu událostí - (ESP) je související technologie, která se zaměřuje na zpracování toků souvisejících dat.
- Provozní inteligence - Jak CEP, tak ESP jsou technologie, které podporují provozní inteligenci.
- Porovnávání vzorů
- Business inteligence v reálném čase - Business Intelligence je aplikace znalostí získaných ze systému CEP
Reference
- ^ „Platforma Apama Streaming Analytics a zpracování událostí“. Citováno 2018-01-16.
- ^ „Apama Streaming Analytics * s procesorem Intel® Xeon® E7 v3“. Intel. Citováno 2018-01-16.
- ^ „Oznámení o vydání Apama Community Edition Apama 9.12 Community Edition“. www.apamacommunity.com. Citováno 2018-01-16.
- ^ „Software AG představuje Apama EagleEye pro aktualizované řešení dozoru nad trhem s umělou inteligencí - IoT Now - Jak provozovat podnikání s povoleným IoT“. IoT Now - Jak provozovat podnikání s povoleným IoT. 2017-11-23. Citováno 2018-01-16.
- ^ „Sell-Side Technology Awards 2013: Best Sell-Side Complex-Event Processing (CEP) Technology ─ Progress Apama - WatersTechnology.com“. WatersTechnology.com. 2013-06-03. Citováno 2018-02-08.
- ^ „Magic Quadrant pro sady Intelligent Business Process Management Suites“. www.gartner.com. Citováno 2018-01-19.
- ^ „The Forrester Wave ™: Streaming Analytics, 3. čtvrtletí 2017“. www.forrester.com. Citováno 2018-01-19.
- ^ „Streamovací analytické platformy - Bloor Research“. www.bloorresearch.com. Citováno 2018-01-19.
- ^ [1] „Nelson, Giles & John Bates,„ Metoda a zařízení pro vyhodnocení dotazů proti přijatým informacím o události “
- ^ [2], Mitchell, Robert Scott; Mark K. Horsburgh & Richard M. Bentley, „Komplexní systém zpracování událostí s více redundantními motory pro zpracování událostí“
- ^ [3], Bates, John; Gareth Smith & Richard M. Bentley, „Konfigurace procesu podle událostí“
- ^ [4], Bates, John; Gareth Smith & Richard M. Bentley, „Automatizovaná konstrukce a nasazení komplexních aplikací pro zpracování událostí a řídicích panelů monitorování obchodních aktivit“
- ^ [5] „Reed, Christopher & Mark Horsburgh,„ Systém a metoda pro správu přidělování a uvolňování objektů v systému s více vlákny “
- ^ [6], Smith, Gareth, „Systémy nebo metody dozoru nad obchodem a monitorování“
- ^ [7], Smith, Gareth, „Dynamicky přizpůsobitelný manažer zkušeností zákazníků v reálném čase a / nebo související metoda“
- ^ [8] „SMITH, Leighton & Gareth Smith,„ Systémy a metody sledování a reakce velkých prostor využívající dynamicky analyzované emocionální vstupy “
- ^ „Progress Software oznamuje akvizici společnosti Apama“. Citováno 2018-01-16.
- ^ „Společnost Progress Software oznamuje dohodu o prodeji řešení Apama společnosti Software AG (NASDAQ: PRGS)“. investors.progress.com. Archivovány od originál dne 2018-02-09. Citováno 2018-01-16.
- ^ „Komunitní vydání Apama Představujeme komunitní vydání Apama“. www.apamacommunity.com. Citováno 2018-01-16.
- ^ http://www.apamacommunity.com/wp-content/uploads/2016/06/SAG_The_Apama_Platform_20PG_WP_Jun16-Web.pdf
externí odkazy
- Komunitní vydání Apama
- Komerční vydání Apama
- Software AG
- Forrester Wave: Streaming Analytics, 3. čtvrtletí 2017
- Rušivá analýza Thomas W. Dinsmore, Apress (ISBN 978-1-4842-1312-4), kniha o nových trendech v analytice, včetně Apamy
- PrEstoCloud, výzkumný článek představující Apamu[trvalý mrtvý odkaz ]