복잡한 이벤트 처리
Complex event processing이벤트 처리는 발생한 일(이벤트)[1]에 대한 정보(데이터)의 스트림을 추적, 분석(처리)하여 이들로부터 결론을 도출하는 방법입니다.CEP(Complex Event Processing)는 실시간 이벤트를 처리하고 이벤트 스트림에서 정보를 추출하기 위해 1990년대 초에 개발된 일련의 개념과 기술로 구성됩니다.복잡한 이벤트 처리의 목표는 실시간 상황에서 의미 있는 이벤트(예: 기회 또는 위협)[2]를 식별하고 가능한 한 신속하게 대응하는 것입니다.
이러한 이벤트는 세일즈 리드, 주문 또는 고객 서비스 콜과 같은 조직의 다양한 계층에서 발생할 수 있습니다.또는 뉴스 항목,[3] 문자 메시지, 소셜 미디어 게시물, 주식 시장 피드, 교통 정보, 일기 예보 또는 다른 종류의 [1]데이터일 수 있습니다.측정은 시간, 온도 또는 기타 값의 사전 정의된 임계값을 초과하는 경우 이벤트는 "상태 변경"으로 정의할 수도 있습니다.
분석가들은 CEP가 실시간으로 패턴을 분석하고 비즈니스 측면과 IT 및 서비스 [4]부서 간의 커뮤니케이션을 개선할 수 있는 새로운 방법을 제공할 것이라고 제안했습니다.이후 CEP는 들어오는 이벤트 스트림에 대한 즉각적인 조치를 취하기 위해 사용되는 많은 시스템에서 활성화 기술이 되었습니다.주식 시장 거래 시스템, 모바일 기기, 인터넷 운영, 사기 탐지, 운송 산업, 정부 정보 수집을 포함한 다양한 비즈니스 분야에서(2018년) 애플리케이션을 찾을 수 있다.
이벤트에 대해 사용할 수 있는 방대한 양의 정보를 이벤트 [1]클라우드라고 부르기도 합니다.
개념 설명
예를 들어 수천 개의 착신 이벤트 중 모니터링 시스템은 동일한 소스로부터 다음 3개를 수신할 수 있습니다.
- 교회 종소리가 울리다
- 턱시도를 입은 남자와 흘러내리는 하얀 가운을 입은 여자의 모습
- 하늘을 나는 쌀
이러한 이벤트로부터 모니터링 시스템은 복잡한 이벤트, 즉 결혼식을 추론할 수 있습니다.CEP는 종소리, 웨딩드레스를 입은 남녀, 공중을 날아다니는 쌀 등 다른 [5]사건들을 분석하고 연관시킴으로써 복잡한 사건들을 발견하는 데 도움을 준다.
CEP는 다음과 같은 다양한 기술에 [6]의존합니다.
CEP의 상업적인 응용은 다양한 업종에 존재하며 신용 카드 사기 탐지, 비즈니스 활동 모니터링 및 보안 [7]모니터링이 포함됩니다.
역사
CEP 영역은 이산 이벤트 시뮬레이션, 활성 데이터베이스 영역 및 일부 프로그래밍 언어에 뿌리를 두고 있습니다.1990년대 산업 활동은 연구 프로젝트의 물결로 이어졌다.일반적인 CEP 언어와 실행 모델로 가는 길을 닦은 첫 번째 프로젝트는[8] 데이비드 러컴이 감독한 스탠포드 대학의 Rapide 프로젝트였다.이와 동시에 두 가지 다른 연구 프로젝트가 있었습니다.K가 지휘하는 캘리포니아 공과대학에 있습니다. 마니 챈디, 그리고 존 베이츠가 감독한 케임브리지 대학의 아파마.상업용 제품들은 이러한 연구 프로젝트와 일부 이후의 연구 프로젝트에서 개발된 개념에 의존했다.지역사회의 노력은 이벤트 처리 기술 협회가 주최한 일련의 이벤트 처리 심포지엄에서 시작되었고, 이후 ACM DEBS 컨퍼런스 시리즈에 의해 시작되었습니다.지역사회의 노력 중 하나는 이벤트 처리 [9]매니페스토를 작성하는 것이었습니다.
관련 개념
CEP는 운영 인텔리전스(OI) 제품에 사용되며 라이브 피드 및 이벤트 데이터에 대한 쿼리 분석을 실행하여 비즈니스 운영에 대한 통찰력을 제공합니다.OI는 실시간 데이터를 수집하고 과거 데이터와 상호 연관시켜 통찰력과 분석을 제공합니다.여러 데이터 소스를 결합하여 현재 정보를 사용하는 공통 작동 화면을 제공할 수 있습니다.
네트워크 관리, 시스템 관리, 애플리케이션 관리 및 서비스 관리에서는 일반적으로 이벤트 상관관계를 참조합니다.CEP 엔진으로서 이벤트 상관 엔진(이벤트 상관계)은 대량의 이벤트를 분석하여 가장 중요한 이벤트를 특정하고 액션을 트리거합니다.그러나 대부분은 새로운 추론 이벤트를 생성하지 않습니다.대신 높은 수준의 이벤트와 낮은 수준의 [10]이벤트를 관련짓습니다.
추론 엔진(예: 규칙 기반 추론 엔진)은 일반적으로 인공지능에서 추론 정보를 생성한다.그러나 일반적으로 복잡한(예: 추론된) 사건의 형태로 새로운 정보를 생성하지 않는다.
예
CEP의 보다 체계적인 예는 자동차, 일부 센서 및 다양한 이벤트와 반응을 포함합니다.자동차에는 타이어 공기압을 측정하는 센서, 속도를 측정하는 센서, 그리고 좌석에 앉거나 자리를 뜨는지 감지하는 센서가 여러 개 있다고 상상해 보십시오.
첫 번째 상황에서는 차량이 움직이고 타이어 중 하나의 압력이 45psi에서 41psi로 15분 동안 이동합니다.타이어 공기압이 감소함에 따라 타이어 공기압을 포함하는 일련의 이벤트가 발생합니다.또, 차량의 속도를 포함한 일련의 이벤트가 발생한다.차량의 이벤트 프로세서는 비교적 오랜 시간 동안 타이어 공기압이 손실되면 "LossOfTirePressure" 이벤트가 발생하는 상황을 감지할 수 있습니다.이 새로운 이벤트는 반응 프로세스를 트리거하여 차량의 유지 관리 로그에 공기압 손실을 기록하고 타이어 공기압이 감소했음을 차량 포털을 통해 운전자에게 알릴 수 있습니다.
두 번째 상황에서는 차가 움직이고 타이어 공기압이 45psi에서 20psi로 5초 만에 떨어집니다.다른 상황이 검출됩니다.아마도 압력 손실이 단기간에 발생했거나 각 이벤트 간의 값 차이가 미리 정의된 한계보다 컸기 때문일 수 있습니다.상황이 다르면 새로운 이벤트 "blowOutTire"가 생성됩니다.이 새로운 이벤트는 운전자에게 즉시 경고를 보내고, 미끄러짐으로 인해 제어력을 잃지 않고 차를 정지시킬 수 있도록 도와주는 컴퓨터 루틴을 기동하는 다른 반응 프로세스를 촉발합니다.
또한 더 복잡한 상황을 감지하기 위해 탐지된 상황을 나타내는 이벤트를 다른 이벤트와 결합할 수도 있습니다.예를 들어, 마지막 상황에서는 차가 정상적으로 움직이고 타이어가 펑크나면서 차량이 도로를 이탈하여 나무를 들이받고 운전자는 차에서 튕겨져 나옵니다.일련의 다른 상황이 빠르게 감지됩니다.매우 짧은 시간 내에 "blowOutTire", "zeroSpeed" 및 "driverLeftSeat"를 조합하면 다음과 같은 새로운 상황이 감지됩니다."이러한 것은,「ThuntedAccident」(던져진 사고).운전자가 튕겼는지, 사고가 났는지 단정적으로 판단할 수 있는 직접적인 측정은 없지만, 이러한 이벤트를 조합하여 상황을 감지하고 감지된 상황을 나타내는 새로운 이벤트를 생성할 수 있다.이것이 복잡한(또는 복합적인) 이벤트의 본질입니다.상황을 직접 감지하지 못하기 때문에 복잡하다; 다른 사건들의 조합으로 그 상황이 발생했음을 추론하거나 추론해야 한다.
비즈니스 프로세스 관리와의 통합
CEP에는 비즈니스 프로세스 관리(BPM)[11]가 필수적입니다.BPM은 엔드 투 엔드의 비즈니스 프로세스에 초점을 맞추어 운용 환경을 지속적으로 최적화하고 조정합니다.
그러나 비즈니스의 최적화는 개별 엔드 투 엔드 프로세스에만 의존하지 않습니다.겉으로 보기에 서로 다른 프로세스가 서로 큰 영향을 미칠 수 있습니다.다음 시나리오를 고려해 주십시오.항공우주산업에서는 차량의 고장을 감시하여 동향을 파악하는 것이 좋은 관행이다(제조공정, 재료 등의 잠재적인 약점을 파악한다).또 다른 별도의 프로세스는 현재 운영 중인 차량의 수명 주기를 모니터링하고 필요에 따라 차량을 폐기합니다.CEP의 한 가지 용도는 이러한 개별 프로세스를 연계하여 금속 피로(중요한 사건)에 기초한 오작동을 발견하는 초기 프로세스(고장 모니터링)의 경우, 두 번째 프로세스(라이프 사이클)를 이용하여 에서 결함으로 발견된 동일한 금속 배치를 사용하여 차량에 리콜을 발행하는 조치를 생성할 수 있도록 하는 것이다.반복 프로세스
CEP와 BPM의 통합은 비즈니스 인식 수준(사용자는 개별 프로세스의 잠재적인 총체적 이점을 이해해야 함)과 기술 수준(CEP가 BPM 구현과 상호작용할 수 있는 방법이 있어야 함)의 두 가지 수준에서 존재해야 한다.이벤트 주도형 비즈니스 프로세스 관리라는 라벨이 자주 붙어 있는 CEP와 BPM의 통합에 관한 최신 기술 리뷰는 다음을 참조하십시오.[12]
계산 중심의 CEP의 역할은 비즈니스 규칙 기술과 중복되는 것으로 볼 수 있습니다.
예를 들어 고객서비스센터에서는 클릭스트림 분석 및 고객경험 관리에 CEP를 활용하고 있습니다.CEP 소프트웨어는 초당 수백만 건의 이벤트(클릭 또는 기타 상호작용)에 대한 실시간 정보를 비즈니스 인텔리전스 및 기타 의사결정 지원 애플리케이션에 반영할 수 있습니다.이러한 「추천 애플리케이션」은, 담당자는 고객의 경험에 근거해 커스터마이즈 된 서비스를 제공할 수 있습니다.CEP 어플리케이션은 고객이 현재 전화로 무엇을 하고 있는지, 지점 내 또는 셀프서비스 기능, 인스턴트 메시징 및 이메일을 통해 최근 다양한 채널에서 회사와 어떻게 상호작용했는지에 대한 데이터를 수집할 수 있습니다.다음으로 어플리케이션은 종합적인 고객 경험을 분석하여 에이전트가 전화로 통화할 수 있도록 안내하는 스크립트 또는 다음 단계를 제안합니다.[13]
시계열 데이터베이스와의 통합
시계열 데이터베이스는 시간별로 정리된 데이터를 처리하도록 최적화된 소프트웨어 시스템입니다.시계열은 데이터 항목의 유한 또는 무한 시퀀스이며, 각 항목에는 관련된 타임스탬프가 있으며 타임스탬프의 시퀀스는 감소하지 않습니다.시계열의 요소를 종종 눈금이라고 합니다.실제로 재무 데이터 소스 등의 일부 시스템의 시간 분해능이 매우 낮을 수 있으므로(밀리초, 마이크로초, 심지어 나노초), 연속 이벤트가 동일한 타임스탬프를 가질 수 있습니다.
시계열 데이터는 일반적으로 복잡한 사건 처리와 관련된 분석에 대한 과거 컨텍스트를 제공합니다.이는 금융 등 모든[14] 업종에 적용할 수 있으며 BPM 등 다른 기술과 연계할 수 있습니다.
CEP 분석의 이상적인 경우는 과거 시계열과 실시간 스트리밍 데이터를 단일 시간 연속체로 보는 것입니다.어제, 지난 주 또는 지난 달에 일어난 일은 단지 오늘 일어나고 있는 일과 미래에 일어날 수 있는 일의 연장선에 불과합니다.예를 들면, 거래실행 논리에 대해 현재의 시장량을 과거의 수량, 가격 및 변동성과 비교하는 것이 포함될 수 있다.또는 실제 시장 가격에 따라 행동해야 하는 필요성은 섹터 및 지수 움직임을 포함하는 벤치마크와의 비교를 포함할 수 있다. 이 벤치마크의 주간 및 과거 추세는 변동성을 측정하고 이상치를 완화한다.
사물 인터넷 및 스마트 사이버 물리 시스템
복잡한 이벤트 처리는 사물인터넷(IoT) 설정 및 스마트 사이버 물리 시스템(CPS)에서도 중요한 요소입니다.이러한 [15]경우 다양한 센서에서 나오는 고밀도 및 이종 스트림을 처리하고 이러한 스트림을 기준으로 패턴을 일치시키는 것이 일반적인 작업입니다.이러한 기술의 대부분은 IoT 시스템의 상태와 변경 사항을 나타내는 것이 정적인 구체화 모델을 사용하는 대신 데이터 스트림 형태로 더 효율적이라는 사실에 의존합니다.이러한 스트림 기반 모델에 대한 추론은 기존의 추리 기법과 근본적으로 다르며 일반적으로 모델 변환과 [16]CEP의 조합을 필요로 한다.
「 」를 참조해 주세요.
- 이벤트 상관
- 이벤트 기반 아키텍처 - (EDA)는 이벤트의 생산, 검출, 소비 및 반응을 촉진하는 소프트웨어 아키텍처 패턴입니다.
- SEDA - 복잡한 이벤트 기반 아키텍처를 단계별로 분해하는 단계별 이벤트 기반 아키텍처
- Event Processing Technical Society - (EPTS)는 관심 있는 이벤트 처리 커뮤니티입니다.
- 이벤트 스트림 처리: (ESP)는 관련 데이터의 스트림 처리에 초점을 맞춘 관련 기술입니다.
- Kinetic Rule Language :(KRL)는 복잡한 이벤트 표현 언어가 내장된 이벤트 조건 액션 규칙 언어입니다.
- 운용 인텔리전스 - CEP와 ESP는 모두 운용 인텔리전스를 뒷받침하는 테크놀로지입니다.
- 패턴 매칭
- 실시간 비즈니스 인텔리전스 - 비즈니스 인텔리전스는 CEP 시스템에서 얻은 지식을 응용한 것입니다.
- 실시간 컴퓨팅 - CEP 시스템은 일반적으로 실시간 시스템입니다.
- 실시간 엔터프라이즈
벤더 및 제품
- Apama by Software AG - 빠르게 이동하는 이벤트 스트림을 모니터링하고, 중요한 패턴을 감지 및 분석하며,[17] 규칙에 따라 조치를 취합니다.
- Azure 스트림 분석
- 드루스 퓨전
- EVAM 스트리밍 분석
- Java 및 C#(GPLv2)의 Esper Complex 이벤트 처리.
- 피드자이 - 펄스
- Microsoft StreamInsight Microsoft CEP Engine 구현[18]
- openPDC : 스트리밍 시계열 데이터를 실시간으로 처리하기 위한 일련의 응용 프로그램.
- Oracle Event Processing - 이벤트를 실시간으로 필터링, 상관관계 및 처리하는 애플리케이션을 구축합니다.
- SAP ESP - 여러 데이터 스트림을 실시간으로[19] 처리할 수 있는 짧은 레이텐시, 신속한 개발 및 도입 플랫폼
- SQLstream의 스트림 처리 플랫폼인 s-Server는 대량의 서비스, 센서 및 머신과 로그 파일 데이터를 실시간으로 분석하기 위한 관계형 스트림 컴퓨팅 플랫폼을 제공합니다.
- TIBCO BusinessEvents & Streambase - CEP 플랫폼 및 고성능 저지연 이벤트 스트림 처리
- WebSphere 비즈니스 이벤트
- Java 및 Scala용 CEP[20] API를 사용하는 Apache Flink 오픈 소스 분산 스트림 처리 프레임워크.
- Apache Storm Free 및 오픈 소스 분산 실시간 계산 시스템.스톰은 무제한 데이터 스트림을 실시간으로 처리합니다.
레퍼런스
- ^ a b c Luckham, David C. (2012). Event Processing for Business: Organizing the Real-Time Enterprise. Hoboken, New Jersey: John Wiley & Sons, Inc. p. 3. ISBN 978-0-470-53485-4.
- ^ Bates, John (15 June 2011), John Bates of Progress explains how complex event processing works and how it can simplify the use of algorithms for finding and capturing trading opportunities, Fix Global Trading, retrieved May 14, 2012
- ^ Crosman, Penny (May 18, 2009), Aleri, Ravenpack to Feed News into Trading Algos, Wall Street & Technology[영구 데드링크]
- ^ McKay, Lauren (August 13, 2009), Forrester Gives a Welcoming Wave to Complex Event Processing, Destination CRM
- ^ D. Luckham, "사건의 힘:분산형 엔터프라이즈 시스템의 복잡한 이벤트 처리 개요", Adison-Wesley, 2002.
- ^ O. 에치온과 P.Niblett, "Event Processing in Action", Manning Publications, 2010.
- ^ 시판 제품 및 사용 사례 상세
- ^ Leavit, Neal (April 2009), Complex-Event Processing Poised for Growth, Computer, vol. 42, no. 4, pp. 17-20 Washington
- ^ Chandy, Mani K.; Etzion, Opher; Ammon, Rainer von (22 December 2017). Chandy, K. Mani; Etzion, Opher; Ammon, Rainer von (eds.). "10201 Executive Summary and Manifesto – Event Processing". Dagstuhl Seminar Proceedings. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik, Germany – via Dagstuhl Research Online Publication Server.
- ^ J.P. 마틴-플랫틴, G. 제이콥슨, L.Lewis, "Event Correlation in Integrated Management: Learned and Outlook", 네트워크 및 시스템 관리 저널 제17권 제4호, 2007년 12월
- ^ C. Janiesch, M. Matzner 및 O.뮐러: "이벤트 주도형 비즈니스 액티비티 관리의 청사진", 컴퓨터 사이언스 강의 노트, 2011년, Volume 6896/2011, 17-28, doi: 10.1007/978-3-642-23059-2_4
- ^ J. Krumeich, B.Weis, D.Werth와 P.Loos: "이벤트 주도형 비즈니스 프로세스 관리: 현재 상황:문헌 종합 및 분석", Business Process Management Journal, 2014, Volume 20, 615-633, doi:10.1108/BPMJ-07-2013-0092
- ^ Kobielus, James (September 2008), Really Happy in Real Time, Destination CRM
- ^ "Time Series in Finance". cs.nyu.edu.
- ^ "Balogh, Dávid, Ráth, Varró, Vörös: Distributed and Heterogeneous Event-based Monitoring in Smart Cyber-Physical Systems, In 1st Workshop on Monitoring and Testing of Cyber-Physical Systems, Vienna, Austria. 2016".
- ^ I. David, I. Rath, D. Varro: 복잡한 이벤트 처리에 의한 스트리밍 모델 변환 재단, 소프트웨어 및 시스템 모델링에 관한 국제 저널, pp 1-28, 2016.doi: 10.1007/s10270-05-33-1
- ^ Apama 실시간 분석 개요 Wayback Machine에서 2015-10-25년 아카이브되었습니다.Softwareag.com 를 참조해 주세요.2013-09-18에 회수.
- ^ "Microsoft StreamInsight". technet.microsoft.com.
- ^ "SAP ESP - Developers community". Archived from the original on 2015-01-05. Retrieved 2014-07-17.
- ^ "Apache Flink 1.2 Documentation: FlinkCEP - Complex event processing for Flink". ci.apache.org.