在结果集WSO2 CEP多行(WSO2 CEP Multiple rows in resultset

2019-09-27 17:48发布

我想知道,如果WSO2 CEP /西提查询支持返回多行的如果是如何从这些行的数据可以被映射到输出XML? 例如,我的事件流中有一个字段的StatusCode它可以有值A / B / CI想写一个查询这使我的状态类型计数为过去5分钟,如A-10,B-5,C-2 ..在当前查询我使用GROUP BY的StatusCode得到的状态计数

 MyQuery- ...insert into TestStream statusCode, count(statusCode) as count group by  statusCode

and my output XML is something like

<statusSmry>
  <status>{statusCode}</status>
  <count>{count}</status>
</statusSmry>

the output i receive is something like

   <statusSmry>
      <status>A</status>
       <count>10</status>
    </statusSmry>
   .....
    <statusSmry>
      <status>B</status>
      <count>5</status>
    </statusSmry>
    ....
    <statusSmry>
      <status>C</status>
      <count>2</status>
    </statusSmry>

是否有可能得到查询的结果在一个单一的XML? 即,在上述情况下在单个XML为A,B,C计数?

感谢拉吉夫

Answer 1:

你问西提是不可能的。

这是因为,每当有一个输入事件的总数将被更新,同时需要相应的更新组的输出被触发以通知用户。 由于这是一个实时进程西提不能积累的所有事件和输出作为一个事件/ XML。 如果在任何情况下它要积累事件,则会有它要多长时间积累的,1秒或1天?和输出需要发送什么格式的问题,因此目前它(WSO2 CEP 2.0.1 )不支持的积累。

如果你需要这个功能,那么你必须CEP的输出发送到ESB和运行某种聚集的过程。



文章来源: WSO2 CEP Multiple rows in resultset