none
Any samples to demonistrate the Plug-in architecture of SI?

    Pertanyaan

  • Hi,

    as per the SI architecture, I can plugin adpaters and standing queries. But i am not able realize this practically.

    say for example:

    I have created an SI application with one input adapter, output adapter and standing query. Now when this application is running, user would like to add some more standing queries

    user would like to add some more adapters.

    How to do this without stoping the running application and modifying the code?

    This kind of scenario comes when user want to change rules/queries at runtime based on the need. For example, i have hard coded a SI query: get me events from pump only when pump type = centrifugal

    now applicaiton is running with this query, but user want to get events for all pump types. So basically he needs to add another standing query or modify the existing query.. how to do this without stopping the ruuning SI app?

    Can any one share me their thoughts on the "Plug-in" architecture of SI and any sample to demonistrate the above?

    Thanks.


    Venkat

    24 Februari 2012 8:32

Jawaban

  • Hi Venkat,

    You can get a start here: http://code.msdn.microsoft.com/AdHoc-Filter-Queries-in-c3734ecc. This shows attaching to running queries and adding a simple filter to them. In your scenario, you'd want to have a query that has all of the available items ... even if it's not attached to an active output adapter but just used for DQC ... and then filter from that.

    It's not something that is "built-in" to StreamInsight; you have to write some code around it to make it happen. And you production-ize the sample. you'd also want to add some services around building and executing the new query.

    There is also Colim Meek's blog article on scripting StreamInsight queries. It's more sophisticated and flexible than the ad-hoc sample that I referenced above and may be better for your needs ... but it is also a bit more complex.


    DevBiker (aka J Sawyer)
    My Blog
    My Bike - Concours 14


    If I answered your question, please mark as answer.
    If my post was helpful, please mark as helpful.

    24 Februari 2012 17:17
    Moderator

Semua Balasan

  • Hi Venkat,

    You can get a start here: http://code.msdn.microsoft.com/AdHoc-Filter-Queries-in-c3734ecc. This shows attaching to running queries and adding a simple filter to them. In your scenario, you'd want to have a query that has all of the available items ... even if it's not attached to an active output adapter but just used for DQC ... and then filter from that.

    It's not something that is "built-in" to StreamInsight; you have to write some code around it to make it happen. And you production-ize the sample. you'd also want to add some services around building and executing the new query.

    There is also Colim Meek's blog article on scripting StreamInsight queries. It's more sophisticated and flexible than the ad-hoc sample that I referenced above and may be better for your needs ... but it is also a bit more complex.


    DevBiker (aka J Sawyer)
    My Blog
    My Bike - Concours 14


    If I answered your question, please mark as answer.
    If my post was helpful, please mark as helpful.

    24 Februari 2012 17:17
    Moderator
  • Thanks for reply and the filter sample. Yes, the filters on Queries can help in some scenarios. As you rightly pointed out, In order this to work, I should have query (with all possible query logic) deployed in to SI engine as part of my application installation/deployment, and we can add filters to it at runtime.

    I can't add Queries or Adapters at runtime (there is no direct support from SI Architecture for this). What I was looking for is:
    I can deploy my queries, adapters as plugins and deploy at runtime and StreamInsight should load and run them.. similar to ASP.NET provider Framework.

    Yes, Colim Meek's blog is intersting (and complicated too).. Will check and update my findings on this.


    Venkat

    27 Februari 2012 7:37
  • Hi Venkat,

    That can be done and done quite successfully ... that's a key feature of the framework that we've developed at Logica. AFAIK, there aren't any samples out there in the wild on doing this and, unfortunately, it's not something that I can publicly post.


    DevBiker (aka J Sawyer)
    My Blog
    My Bike - Concours 14


    If I answered your question, please mark as answer.
    If my post was helpful, please mark as helpful.

    02 Maret 2012 17:51
    Moderator