使用 StreamInsight LINQ

 

在将数据递送到 StreamInsight 服务器之后,立即可以连续对数据执行计算。 换言之,当将事件插入到服务器后,将由现有查询处理这些事件,这些查询将发出经处理的输出事件。 这些现有查询以语言框架 LINQ 编写。 LINQ 是一种对数据集表达声明性查询的机制,它与宿主语言(如 C#)完全集成。 在当前版本中,StreamInsight 只支持 C# 作为主机语言。 该框架已针对 StreamInsight 平台进行了调整,从而使 StreamInsight 服务器能够与 C# 更紧密地集成。 本节中的各主题演示了此平台支持的针对事件执行的许多计算操作,并说明了如何使用 StreamInsight LINQ 查询指定这些操作。

System_CAPS_ICON_note.jpg 注意


在 StreamInsight 2.0 版本和早期版本中,临时流通过 CepStream<> 接口实现。 在继续支持 CepStream<> 接口的同时,2.1 版本和更高的临时流通过 IQStreamable<> 接口实现,并且可以使用 StreamInsight LINQ 进行处理。 通过 IQStreamable<> 编写的临时查询的语法与基于 LINQ 提供程序的现有 CepStream<> 的语法是一致的,但是进行了部分更改以利用 IQStreamable<> 接口中的新功能。 在本节中,将会标识 IQStreamable<>CepStream<> 接口之间的任何区别。

有关如何编写用于 StreamInsight 的 LINQ 查询的详细指导,请参阅 A Hitchhiker’s Guide to StreamInsight Queries(StreamInsight 查询的便利指南)。

本节内容

投影
筛选
联接
联合
分组和应用
时间戳修改
用户定义的函数 (StreamInsight)
用户定义的流运算符
使用事件窗口
计数窗口
跳跃窗口
快照窗口
聚合
TopK
用户定义聚合和运算符

请参阅

StreamInsight 服务器概念
语言集成查询