올 하반기는 나에게 있어서 CEP(Complex Event Processing), BEP (Business Event Processing) 솔루션이 업무 화두다. 이 따끈따끈한 주제로 많은 사람들과 이야기를 나누면서 자주 듣는 질문에 대해 다음과 같은 답변을 준비해보았다.
1. 우리 회사는 이미 BRMS를 일부 사용하고 있습니다. CEP(Complex Event Processing)나 BEP(Business Event Processing) 솔루션은 BRMS와 유사해보입니다. 그 둘의 차이는 무엇인가요? BRMS의 확장인가요?
룰에 의해서 특정 조건을 찾아내는 엔진의 차원에서는 BRMS나 BEP, CEP가 크게 다르지 않습니다. 하지만 대부분의 경우 BRMS가 BEP나 CEP보다는 다양한 룰을 작성하는 데 있어서 더 풍부한 옵션을 제공하고 있습니다. BEP, CEP는 대신에 보다 쉽게 룰을 정의할 수 있는 환경을 제공하고 BRMS가 동기적인 처리 방식인데 반하여 CEP, BEP는 비동기적인 특성을 갖고 있어 외부 시스템과 연계에 유연성을 발휘하고 연계가 쉽다는 장점이 있습니다. 또한 BRMS가 특정 시스템의 아키텍처등을 모델링하여 그것들을 이용하여 룰을 정의하는 반면, CEP, BEP는 복잡한 모델링보다는 보다 단순하게 이벤트기반으로 모델을 정의하여 시스템간 연계에 유연함을 강조하고 있습니다.
때문에 BRMS는 입출력이 비교적 확실하고 아키텍처가 명확한 솔루션 안에 포함되어 솔루션을 보다 유연하고 체계적으로 사용하는데 도움을 줄 수 있으며 CEP, BEP는 다양한 솔루션들간의 유연한 연계가 필요한 상황에서 강점이 있습니다. 즉 CRM시스템을 구축한다면 CRM 시스템 내에 필요한 룰엔진은 BRMS가 유리하겠으나 향후 이 CRM시스템과 콜센터나 영업망시스템, 홈페이지등이 지속적으로 연계되어 추가적인 이벤트 처리가 필요한 경우는 CEP나 BEP가 유리하다고 보겠습니다.
2. CEP나 BEP를 이용하여 고객 성향 분석이나 비즈니스 모니터링이 가능하다면 DW와 같은 BI솔루션과는 어떠한 차이가 있는 건가요?
CEP나 BEP는 분석 자체를 하지는 않습니다. BI솔루션들이 실시간보다는 정적이고 Histrorical 데이타 중심의 처리가 중심이라면 CEP, BEP는 실시간 빠른 응답이 필요한 상황에 유리합니다. BI솔루션을 통해 얻은 의미있는 Factor와 패턴 및 트렌드를 바탕으로 CEP, BEP에 적용시 비즈니스 응답 속도를 높일 수 있을 것입니다.
3. 이벤트를 받는 구조라고 한다면 결국 기존 시스템에 부하를 많이 줄 것 같습니다.
다양한 이벤트 수신,발신 기능을 제공합니다. DB polling, DB trigger, 웹서비스, 파일 시스템, FTP, SMTP, HTTP, JMS와 같은 다양한 프로토콜등을 제공하므로 기존 시스템에 영향을 최소한으로 미칠 수 있는 방식을 채택하는 것이 가능합니다. 또한 비동기 방식이므로 동기적인 방식에 비해 부하를 최소화할 수 있습니다.
4. CEP의 개념은 과거에 발생했던 이벤트들도 지금 판단의 근거로 삼을 수 있는 시스템을 필요로 합니다. 그렇다면 과거 이벤트 이력을 전부 보관하고 있다는 것인데 그 많은 이벤트들을 갖고있으려면 저장공간이나 성능이 뒷받침되어야할 것 같습니다만?
맞습니다. 이를테면 한달치 이벤트들을 모두 갖고있는다고 해도 그 크기는 무시할 수 없겠죠. 그것을 모두 DB나 물리적인 공간에 보관하기만 한다면 또 성능에 문제가 있을 수 있겠죠. 때문에 기존의 방법만으로는 힘이 듭니다. 그리드 기반의 기술이 적용되어 있다면 이러한 한계를 충분히 극복할 수 있습니다. 현재 그것을 제가 내부적으로 테스트해보고 있으며 적용 사례에 대해서도 추후 언급할 예정입니다.
1. 우리 회사는 이미 BRMS를 일부 사용하고 있습니다. CEP(Complex Event Processing)나 BEP(Business Event Processing) 솔루션은 BRMS와 유사해보입니다. 그 둘의 차이는 무엇인가요? BRMS의 확장인가요?
룰에 의해서 특정 조건을 찾아내는 엔진의 차원에서는 BRMS나 BEP, CEP가 크게 다르지 않습니다. 하지만 대부분의 경우 BRMS가 BEP나 CEP보다는 다양한 룰을 작성하는 데 있어서 더 풍부한 옵션을 제공하고 있습니다. BEP, CEP는 대신에 보다 쉽게 룰을 정의할 수 있는 환경을 제공하고 BRMS가 동기적인 처리 방식인데 반하여 CEP, BEP는 비동기적인 특성을 갖고 있어 외부 시스템과 연계에 유연성을 발휘하고 연계가 쉽다는 장점이 있습니다. 또한 BRMS가 특정 시스템의 아키텍처등을 모델링하여 그것들을 이용하여 룰을 정의하는 반면, CEP, BEP는 복잡한 모델링보다는 보다 단순하게 이벤트기반으로 모델을 정의하여 시스템간 연계에 유연함을 강조하고 있습니다.
때문에 BRMS는 입출력이 비교적 확실하고 아키텍처가 명확한 솔루션 안에 포함되어 솔루션을 보다 유연하고 체계적으로 사용하는데 도움을 줄 수 있으며 CEP, BEP는 다양한 솔루션들간의 유연한 연계가 필요한 상황에서 강점이 있습니다. 즉 CRM시스템을 구축한다면 CRM 시스템 내에 필요한 룰엔진은 BRMS가 유리하겠으나 향후 이 CRM시스템과 콜센터나 영업망시스템, 홈페이지등이 지속적으로 연계되어 추가적인 이벤트 처리가 필요한 경우는 CEP나 BEP가 유리하다고 보겠습니다.
2. CEP나 BEP를 이용하여 고객 성향 분석이나 비즈니스 모니터링이 가능하다면 DW와 같은 BI솔루션과는 어떠한 차이가 있는 건가요?
CEP나 BEP는 분석 자체를 하지는 않습니다. BI솔루션들이 실시간보다는 정적이고 Histrorical 데이타 중심의 처리가 중심이라면 CEP, BEP는 실시간 빠른 응답이 필요한 상황에 유리합니다. BI솔루션을 통해 얻은 의미있는 Factor와 패턴 및 트렌드를 바탕으로 CEP, BEP에 적용시 비즈니스 응답 속도를 높일 수 있을 것입니다.
3. 이벤트를 받는 구조라고 한다면 결국 기존 시스템에 부하를 많이 줄 것 같습니다.
다양한 이벤트 수신,발신 기능을 제공합니다. DB polling, DB trigger, 웹서비스, 파일 시스템, FTP, SMTP, HTTP, JMS와 같은 다양한 프로토콜등을 제공하므로 기존 시스템에 영향을 최소한으로 미칠 수 있는 방식을 채택하는 것이 가능합니다. 또한 비동기 방식이므로 동기적인 방식에 비해 부하를 최소화할 수 있습니다.
4. CEP의 개념은 과거에 발생했던 이벤트들도 지금 판단의 근거로 삼을 수 있는 시스템을 필요로 합니다. 그렇다면 과거 이벤트 이력을 전부 보관하고 있다는 것인데 그 많은 이벤트들을 갖고있으려면 저장공간이나 성능이 뒷받침되어야할 것 같습니다만?
맞습니다. 이를테면 한달치 이벤트들을 모두 갖고있는다고 해도 그 크기는 무시할 수 없겠죠. 그것을 모두 DB나 물리적인 공간에 보관하기만 한다면 또 성능에 문제가 있을 수 있겠죠. 때문에 기존의 방법만으로는 힘이 듭니다. 그리드 기반의 기술이 적용되어 있다면 이러한 한계를 충분히 극복할 수 있습니다. 현재 그것을 제가 내부적으로 테스트해보고 있으며 적용 사례에 대해서도 추후 언급할 예정입니다.
공유하기 버튼
|
|



덧글