前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >StreamInsight 基本概念

StreamInsight 基本概念

作者头像
张善友
发布2018-01-22 11:11:10
4670
发布2018-01-22 11:11:10
举报
文章被收录于专栏:张善友的专栏张善友的专栏

微软StreamInsight是开发和部署时空事件流的应用平台。 StreamInSight包含了一个时空数据流模型,统一和查询语言功能进一步丰富,处理在事件传递,并保证输出的一致性。得益于其实时低延时输出,StreamInsight监测,分析和关联来自多个源的数据流提取有意义的规律和趋势。

传统数据库技术发展迅速且得到了广泛应用,但是它不能够处理在诸如网络路由、传感器网络、股票分析等应用中所生成的一种新型数据,即流数据.流数据的特点是数据持续到达,且速度快、规模宏大。传感器数据,信息是以数据序列(流)的形式产生并且需要实时地持续地进行处理,这就需要一种新型的数据流管理系统(Data Stream Management System ,简称DSMS)对这些数据存储、管理和处理.数据流上的应用大多是监控型的,并且这些监控任务一般是简单事件的组合,但简单的数据流管理系统(DSMS)一般只能处理简单事件的过滤和聚合,缺乏复杂事件概念的支持,因此需要构建数据流上的复杂事件处理系统(CEP)来满足这类需求。因为领域实践是在一个特定的业务部门多年来的经验成果,很难指望用一个单流引擎(开箱即用-没有做什么开发)可以解决所有领域的需求。但是,数据流系统可望有一个可扩展机制,无缝集成特定领域的逻辑到查询管道。因此,StreamInsight被设计为一个可扩展的系统,接受并执行定用户自定义模块(UDMs)。

流(Stream)和事件(事件)

      一个物理流是一系列的事件,事件ei = ⟨p; c⟩ 是一个来自于外界的通知,内容包括:(1) 有效负载 p = ⟨p1; : : : ; pk⟩, 和 (2)控制参数 c提供元数据。该控制参数包括一个事件产生的时间,一段时间内影响输出的事件,定义c = ⟨LE; RE⟩, 区间[LE; RE) 的时间内事件的输出,区间的左边端点(LE)称为开始时间(StartTime),是一个事件的发生的时间,也成为事件的时间戳。假设持续时间为x个时间单位,时间的右边端点称为结束时间(EndTime),简单的说就是RE = LE + x。

     Compensations:StreamInsight允许用户对早期的事件进行补偿(或更正),这是通过第三个控制参数REnew,表示右边任意一点发生的事件,删除的事件(成为全收缩),表示为REnew = LE (i.e., zero lifetime)。

     Canonical History Table :Canonical History Table (CHT)是事件流的逻辑表示,每个CHT有一个周期(LE 和RE)和有效负载(payload)组成。所有时间都是应用使用时间,而不是系统时间,因此StreamInsight模型是一个随时间变化的关系数据流。下面是一个CHT的例子,CHT是实际物理事件(无论是新插入还是撤销)和控制参数c = ⟨LE; RE; REnew⟩.

image
image

   Detecting Time Progress :我们需要确保一个事件不是随意的序列,这是使用基于时间的标点来实现,一个基于时间的标点表示一个特殊的事件,这些标点符号在StreamInsight里面叫做Current Time Increments (或者CTIs) 。

    流查询和操作

CQ是由一个树形的操作组成,每一个执行都有一个输入流和产生的输出流,在StreamInsight里查询使用LINQ来表示,StreamInsight操作都是功能良好的,并在它们对CHT而言明确语义。这使得相关的时间算子代数确定性,甚至当数据无序到达的。通过输入适配器进入进入系统,通过输出适配器输出系统。

有两个主要的操作:基于跨度和基于窗口。一个跨度为基础的操作接受从一个输入事件,每个事件执行一些计算,并产生该事件输出。以跨度为基础的操作包括filter,project和temporal  join。另一方面,像Count, Top-K, Sum等等,为每一个独立窗口汇报一个结果(或者系列结果),他们就是基于窗口。其结果是所有事件而计算属于该窗口。 StreamInsight支持几种类型窗户:snapshot (sliding), hopping, tumbling, 和count-based windows。 此外,一个流可以输出到多个操作,叫做多播,而多流合并使用UNION运算符。此外,StreamInsight未来支持用户定义的操作表示自定义计算;

http://www.cnblogs.com/StreamInsight/

http://streaminsight.codeplex.com/

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2010-09-18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据保险箱
数据保险箱(Cloud Data Coffer Service,CDCS)为您提供更高安全系数的企业核心数据存储服务。您可以通过自定义过期天数的方法删除数据,避免误删带来的损害,还可以将数据跨地域存储,防止一些不可抗因素导致的数据丢失。数据保险箱支持通过控制台、API 等多样化方式快速简单接入,实现海量数据的存储管理。您可以使用数据保险箱对文件数据进行上传、下载,最终实现数据的安全存储和提取。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档