CEP 엔진을 찾고 있는데 어떤 엔진이 내 요구 사항을 충족하는지 알 수 없습니다. 내 시스템은 이벤트 데이터의 여러 스트림을 처리하고 복잡한 이벤트를 생성해야하며 이는 거의 모든 CEP 엔진이 완벽하게 적합합니다 (ESPER, Drools).CEP가 필요한 이유 (시스템 상태 및 이벤트 재생)
모든 원시 이벤트를 데이터베이스에 저장합니다 (CEP 부분은 아니지만 이것을 수행합니다). 규칙 (또는 연속적인 쿼리 또는 무언가)을 사용하여 복잡한 이벤트에 대한 사용자 지정 작업을 생성합니다. 그러나 내 규칙 중 일부는 과거의 사건에 의존합니다. 예 : 배우자가 집에 오거나 갈 때마다 센서에서 이벤트를 보내는 센서를 가질 수 있습니다. 내 차와 내 멋진 여성의 차가 집 근처에 있으면 '위험한'SMS가 표시됩니다.
문제는 이벤트 처리 서비스를 다시 시작하면 시스템 상태 (집에있는 아내)에 대한 모든 정보를 잃어 버리고 문제를 해결하기 위해 일정 기간 동안 이벤트를 재생해야합니다. 시스템 상태는 원시 이벤트뿐만 아니라 복잡한 이벤트에도 의존 할 수 있습니다.
과거 복잡한 이벤트에 대한 보고서가 필요할 때도 같은 문제가 발생합니다. 데이터베이스에 저장된 원시 이벤트 데이터가 있고 원시 이벤트를 재생하는 이러한 복잡한 이벤트를 생성 할 수는 있지만 정확한 재생 기간을 알 수는 없습니다.
동시에 대부분의 규칙에서 시스템 상태를 복원하기 위해 과거 (또는 처리 할 이벤트로드 시간)에서 처리 할 이벤트의 수를 자동으로 찾을 수 있음이 분명합니다. 주어진 행동이 집에있는 아내의 존재 여부에 달려있는 경우 CEP 시스템은 마지막 상태 변경을 요청해야합니다. 복잡한 사건에 대한 보고서가 요청되고 복잡한 사건이 이전 기간의 평균 가격에 달려있는 경우이 기간의 모든 가격 변경 이벤트를 재생해야합니다. 등등 ...
내가 무엇인가 놓친다면?
... 규칙 언어로 위치를 지원하므로 사람 X가 A, B 또는 C 영역에 들어갈 때주의가 필요합니다 ... 물건의 상태를 기억합니다 통화와 엔티티는 기억합니다 부인이 현재있는 곳 – Simon