Search code examples
wso2siddhiwso2-cep

WSO2 CEP - Managing large number of execution plans


I am working on developing a tool that has the functionality of custom execution plan builder. So by using this tool end users can create large number of execution plans inside WSO2 CEP. I have following 3 concerns on this.

1) Is there any considerable performance impact when having large number of execution plans in CEP? There can be around 100,000 execution plans.

2) When having large number of execution plans how to group them?

3) Finally I want to load execution plans into the UI of my tool. So end users can customize them. So is there a execution plan parser so we can just pass it though and get it as object. Or any other suggestion about loading execution plan in to UI (java program).

Thanks


Solution

  • Please find my answers to your questions.

    1. Creating such a large number of execution plans will degradation the performance of your system.
    2. At CEP level, we don't have a mechanism to logically grouping Siddhi execution plans. I think it is more appropriate for you to come up with your own grouping scheme to suit your problem domain.
    3. Last year there was a Google Summer of Code (GSoc) project which implements client side text editor for Siddhi execution plans. It was written in JavaScript and included a client side Siddhi parser. So I think that GSoc project would be a good starting point for you. Herewith, I have included the relevant GSoc mail thread and the GitHub repository of the Siddhi text editor.

    I hope above answers will help you to get started with your project. If you need further help regarding this questions, please let me know.

    Good Luck!