A method includes receiving a corresponding data (10) in stream data or batch data, and computing content for the received data. The method also includes determining the data used for the segmentation of the data of the event time; processing time determines the output data received by the results; and at least a portion of the processing time and based on the event time to transmit the data received by the results.
【技术实现步骤摘要】
【国外来华专利技术】数据流加窗和触发
本公开涉及数据流加窗和触发。
技术实现思路
本公开的一个方面提供了一种用于对数据流进行加窗和触发的方法。该方法包括:在数据处理硬件处接收与流数据或者批量数据中的一个对应的数据;通过使用数据处理硬件来确定接收到的数据的用于计算的内容;通过使用数据处理硬件来确定数据的用于对数据进行切分的事件时间;以及通过使用数据处理硬件来确定输出接收到的数据的结果的处理时间。该方法还包括基于处理时间和事件时间来发射接收到的数据的结果的至少一部分。本公开的实施方式可以包括以下可选特征中的一个或者多个。在一些实施方式中,该方法包括:通过使用数据处理硬件,基于事件时间,对接收到的数据窗口进行分组。该窗口可以包括由静态时间周期定义的固定窗口、由时间周期和滑动周期定义的滑动窗口、由超时间隔定义的会话窗口、或者由一对函数定义的用户定义的窗口中的一个。每个固定窗口可以被应用于在相关联的时间周期内的所有数据。每个滑动窗口可以被应用于在相关联的时间周期内的所有数据并且与开始时间相关联,由滑动周期将紧接着的窗口的开始时间与该开始时间分开。而且,每个会话窗口可以被应用于在小于相关联的超时 ...
【技术保护点】
一种方法,所述方法包括:在数据处理硬件(710)处接收与流数据(10)或者批量数据中的一个对应的数据(10);通过使用所述数据处理硬件(710)来确定所接收到的数据(10)的内容以用于计算;通过使用所述数据处理硬件(710)来确定所述数据(10)的事件时间以用于对所述数据(10)进行切分;通过使用所述数据处理硬件(710)来确定输出所接收到的数据(10)的结果(20)的处理时间;以及基于所述事件时间和所述处理时间来发射所接收到的数据(10)的结果(20)的至少一部分。
【技术特征摘要】
【国外来华专利技术】2015.08.05 US 62/201,441;2015.11.03 US 14/931,0061.一种方法,所述方法包括:在数据处理硬件(710)处接收与流数据(10)或者批量数据中的一个对应的数据(10);通过使用所述数据处理硬件(710)来确定所接收到的数据(10)的内容以用于计算;通过使用所述数据处理硬件(710)来确定所述数据(10)的事件时间以用于对所述数据(10)进行切分;通过使用所述数据处理硬件(710)来确定输出所接收到的数据(10)的结果(20)的处理时间;以及基于所述事件时间和所述处理时间来发射所接收到的数据(10)的结果(20)的至少一部分。2.根据权利要求1所述的方法,所述方法进一步包括:通过使用所述数据处理硬件(710),基于所述事件时间将所接收到的数据(10)分组成窗口(330、340、500),所述窗口(330、340、500)包括以下中的一个:由静态时间周期定义的固定窗口(330),每个固定窗口(330)被应用于在所关联的时间周期内的所有所述数据(10);由时间周期和滑动周期定义的滑动窗口(340),每个滑动窗口(340)被应用于在所关联的时间周期内的所有所述数据(10)并且与开始时间相关联,所述开始时间通过所述滑动周期与紧接着的窗口的开始时间分开;由超时间隔定义的会话窗口(500),每个会话窗口(500)被应用于在小于所关联的超时间隔的时间跨度内出现的所述数据(10)的子集;或者由一对函数定义的用户定义的窗口。3.根据权利要求1或者2所述的方法,所述方法进一步包括:通过使用所述数据处理硬件(710)来为所接收到的数据(10)的每个元素分配可合并窗口(330、340、500),每个元素包括相关联的输入时间戳,并且每个会话窗口(500)超过所关联的窗口(330、340、500)的所述输入时间戳延伸预定义时间范围。通过使用所述数据处理硬件(710)来合并所述可合并窗口(330、340、500)中重叠成单个合并窗口(330、340、500)的、属于相同密钥的两个或者更多个可合并窗口;以及通过使用所述数据处理硬件(710)将每个元素的相关联的输出时间戳设置为大于或者等于在所关联的合并窗口(330、340、500)或者所关联的可合并窗口(330、340、500)中的最早时间的值。4.根据权利要求3所述的方法,其中,所述单个合并窗口(330、340、500)包括大于所述预定义时间范围的时间范围。5.根据权利要求1至4中任一项所述的方法,所述方法进一步包括:当所接收到的数据(10)与流数据(10)对应时:通过使用所述数据处理硬件(710)将所述流数据(10)分组成窗口(330、340、500);通过使用所述数据处理硬件(710)设置针对所述流数据(10)的元素的输入时间戳;以及当针对所述元素的所述输入时间戳先于水位线出现时,通过使用所述数据处理硬件(710)来确定所述流数据(10)包括最新流数据(10);以及以下中的一个:丢弃所述最新流数据(10);或者通过创建复制窗口(330、340、500)来允许所述最新流数据(10)在所述最新流数据(10)的输出中。6.根据权利要求1至5中任一项所述的方法,所述方法进一步包括:通过使用所述数据处理硬件(710)将所接收到的数据(10)的第一数据子集分组成窗口(330、340、500),所述窗口(330、340、500)定义所述数据子集的子事件时间;通过使用所述数据处理硬件(710)来聚合所述窗口(330、340、500)的所述第一数据子集的第一结果;以及通过使用所述数据处理硬件(710)来确定发射所述第一数据子集的第一聚合结果的触发时间,所述触发时间包括以下中的至少一个:当水位线到达所述窗口(330、340、500)的末端时;挂钟时间的每个阈值秒数;在接收到终止所述窗口(330、340、500)的标点记录之后;每个阈值记录数;在任意的用户逻辑决定触发之后;或者在具体触发器的任意组合之后。7.根据权利要求6所述的方法,所述方法进一步包括:当确定发射所述第一数据子集的所述第一聚合结果的所述触发时间时,在聚合所接收到的数据(10)的后续子集的结果时,通过使用所述数据处理硬件(710)抛弃对所述第一聚合结果的使用。8.根据权利要求6或者7所述的方法,所述方法进一步包括:当确定发射所述第一数据子集的所述第一聚合结果的所述触发时间时:在持久状态下将所述第一聚合结果的副本存储在与所述数字处理硬件(710)通信的存储器硬件(720)内;以及通过所述数据处理硬件(710),利用所述第一聚合结果来细化后续子集的下一个聚合(20)结果。9.根据权利要求6所述的方法,所述方法进一步包括:当确定发射所述第一数据子集的所述第一聚合结果的所述触发时间时,在持久状态下将所述第一聚合结果的副本存储在与所述数据处理硬件(710)通信的存储器硬件(720)内;以及当发射与相同的窗口(330、340、500)相关联的后续子集的下一个聚合结果时:发射对所述第一聚合结果的撤销;以及发射所述窗口(330、340、500)的组合会话结果。10.根据权利要求6所述的方法,所述方法进一步包括:在将所述第一数据子集分组成所述窗口(330、340、500)之后,在所述数据处理硬件(710)处接收最新数据点,所述最新数据点与所述窗口(330、340、500)有关;以及通过使用所述数据处理硬件(710)抛弃所述最新数据点。11.根据权利要求6所述的方法,所述方法进一步包括:在将所述第一数据子集分组成所述窗口(330、340、500)之后,在所述数据处理硬件(710)处接收最新数据点,所述最新数据点与所述窗口(330、340、500)有关;以及通过使用所述数据处理硬件(710)将所述最新数据点累加到所述窗口(330、340、500)中,以利用所述最新数据点来细化所述第一聚合结果。12.根据权利要求6所述...
【专利技术属性】
技术研发人员:泰勒·阿基多,罗伯特·布拉德肖,本·钱伯斯,克雷格·钱伯斯,罗伊文·拉克斯,丹尼尔·米尔斯,弗朗西斯·佩里,
申请(专利权)人:谷歌公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。