Microsoft . 技术之路...

—— 专注于微软技术, 分享是快乐的源泉......
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Microsoft StreamInsight简介

Posted on 2011-04-27 14:08  赣江源  阅读(357)  评论(0编辑  收藏  举报

Microsoft StreamInsight 是一个功能强大的平台,可用于开发和部署复杂事件处理 (CEP) 应用程序。它具有高吞吐流处理体系结构和基于 Microsoft .NET Framework 的开发平台,可帮助您迅速实现强大而高效的事件处理应用程序。事件流源通常包括来自生产应用程序、财贸应用程序、Web 分析以及运营分析的数据。通过使用 StreamInsight,您开发出的 CEP 应用程序可降低提取、分析和整理数据的成本,还可让您即时监控和管理数据,挖掘数据中的条件、机遇和缺陷,进而从那些原始数据中获得直接业务价值。

Microsoft StreamInsight 为开发和部署复杂事件处理 (CEP) 应用程序提供一个功能强大的平台。CEP
是一种高吞吐、低滞后处理事件流的技术。典型的事件流源包括来自生产应用程序、财贸应用程序、Web 分析或运营分析的数据。StreamInsight
流处理体系结构和熟悉的基于 .NET 的开发平台使开发人员可以快速实现强大而高效的事件处理应用程序。

StreamInsight 具有下列主要优点:

  • 高度优化的性能和数据吞吐量
    StreamInsight
    实现了轻量级流式体系结构,可支持对高速数据高度并行执行连续查询。使用内存中缓存和增量结果计算,可带来高数据吞吐、低滞后时间的卓越性能。因为在关键处理路径中无需进行数据加载或存储操作,所以可实现低滞后时间。借助
    StreamInsight,所有处理都由传入事件自动触发。特别地,应用程序无须为事件轮询付出任何开销。此平台提供了无序事件处理功能。此外,可以访问静态引用或历史数据,这些内容包括在低滞后时间分析中。
  • .NET 开发环境
    开发人员可以使用 Microsoft 的 .NET 语言(如 Visual C#)来编写 CEP
    应用程序,从而利用高级语言平台 LINQ(Language Integrated
    Query,语言集成查询)作为嵌入式查询语言。如果庞大的开发人员社区都已经熟悉了这些技术,则此功能将降低从应用程序开发到生产整个过程中所需的开发成本和时间。在当前版本中,StreamInsight
    只支持 C# 作为宿主语言。
    使用 LINQ,熟悉 SQL
    的开发人员可以很快以声明方式编写查询,将来自多个流的数据处理并关联到有意义的结果中。StreamInsight
    服务器中的优化器和计划程序相继确保优化查询性能。
  • 灵活的开发功能
    StreamInsight 支持三种部署方案:
    • 作为托管(嵌入式)DLL 完全集成到应用程序中。
    • 作为一台拥有多个应用程序和共享该服务器的用户的独立服务器。在其独立配置中,StreamInsight
      服务器在一个包装(如可执行文件)中运行,也可以将服务器打包为一项 Windows 服务。
    • 托管或独立 StreamInsight 服务器可作为服务器场的一部分。
  • 可管理性
    • StreamInsight 服务器中内置了监控和可管理性功能,支持 CEP 应用程序低总拥有成本 (TCO)。StreamInsight
      服务器中提供的管理界面和诊断视图允许管理员监控和管理 CEP 应用程序。可管理性框架也允许 ISV 和系统集成商在生产以及其他扩展安装中远程监控和支持
      StreamInsight 部署的系统。
    • StreamInsight 提供独立的事件流调试程序,可用来分析、诊断和排查 StreamInsight
      中使用的查询。

CEP 方案

在下列业务情形中,通常需要高吞吐、低滞后地处理事件流:

  • 生产过程监视和控制
  • 点击流分析
  • 金融分析
  • 电力设施
  • 健康保健
  • IT 监视
  • 物流管理
  • 电信业

下面讨论一些情形,并探讨其对于事件处理的要求。

生产过程监视和控制

为确保产品和过程在最优状态下运行,停机的时间最少,制造类公司需要低滞后地收集和分析车间设备和传感器数据。通常的生产情形包括下列需求:

  • 基于资产监视和聚合机器的“出生”数据。
  • 基于传感器观察车间的活动和输出。
  • 观察并通过设备控制器作出反应。
  • 能够每秒处理多达 10,000 个数据事件。
  • 发生不良状况的瞬间生成事件和警报。
  • 对关键设备进行前瞻性的基于状况的维护。
  • 低滞后分析聚合的数据(开窗和日志尺度)。

点击流分析

来自商业网站的优化客户体验要求低滞后处理用户在网站上的行为和交互。通常的点击流分析应用程序包括下列要求:

  • 能够基于低滞后点击流分析驱动页布局、导航和呈现。
  • 在高峰时段能够每秒处理多达 100,000 个数据事件。
  • 即刻点击流模式检测并用针对性广告来响应。

金融服务环境中的算法交易

算法交易需要进行大量数据处理,因此通常具有下列需求:

  • 能够每秒处理多达 100,000 个数据事件。
  • 时间紧迫的查询处理
  • 监控和投资目前市场上可能机会转瞬即逝的情形。
  • 智能过滤输入数据。
  • 能够随着多个数据源和时间定义模式以自动为资产组合触发买进/抛售/持有决策。

电力设施

设施传感器需要高效的基础结构来管理电网和其他设备。这些系统通常具有下列要求:

  • 即刻响应能源或水资源消耗变化,最大限度降低或避免断电或其他服务事故。
  • 通过向智能电网转移获得运营和环境效益。
  • 电网沿线多层次聚合。
  • 能够每秒处理来自上百万个数据源的多达 100,000 个事件。