使用属性特征化预测性地移除运行时数据的方法和系统技术方案

技术编号:7197714 阅读:155 留言:0更新日期:2012-04-11 18:40
提供了用于处理数据流的计算机实现的方法和系统,其中,说明了以在基于流的应用中减小处理数据引起的任何延迟的影响的方式而从基于流的应用中选择性地移除运行时数据的技术。除了从所述基于流的应用的主处理路径中移除数据之外,可以以替换的方式处理所述数据,要么使用替换的处理资源,要么通过延迟所述数据的处理。

【技术实现步骤摘要】

本专利技术涉及数据处理,特别地,涉及使用属性特征化预测性地移除运行时数据的方法和系统
技术介绍
当计算机数据库变得极其复杂时,施加于数据库系统上的计算命令也迅速增加。 数据库系统典型地被配置为将存储数据的处理与访问、操作或使用存储在数据库中的数据相分离。更具体地,数据库使用数据先被存储、接着被索引、然后被查询的模型。然而,这个模型不能满足一些实时应用的性能要求。例如,数据库系统能够接收并存储传入的数据的速率会限制可以被处理或者被评估的数据的数量。这继而限制了数据库应用实时处理大量数据的能力。
技术实现思路
本专利技术的实施例提供了一种用于处理数据流的计算机实现的方法、系统和计算机程序产品。所述方法、系统和计算机程序产品包括接收要处理的数据流的第一元组,其中所述第一元组包括多个属性。所述方法、系统和计算机程序产品还包括至少部分基于所述第一元组中的多个属性中的一个或多个属性,计算用于处理所述数据流的所接收到的第一元组的估计处理时间。另外,所述方法、系统和计算机程序产品包括当确定所计算的估计处理时间不超过预定的阈值时间时,使用第一执行路径以第一方式处理所述数据流的第一元组。所述方法、系统和计算机程序产品还包括当确定所计算的估计处理时间超过所述预定的阈值时间时,以第二方式处理所述数据流的所接收到的第一元组,相对于以第一方式处理所述第一元组,所述第二方式降低所述第一执行路径中的处理延迟。本专利技术的替代实施例提供了一种用于处理数据流的方法、系统和计算机程序产品。所述方法、系统和计算机程序产品包括接收要处理的数据流的第一元组,其中所述第一元组包括多个属性。所述方法、系统和计算机程序产品还包括基于(i)所述第一元组中的多个属性中的一个或多个属性和(ii)与所接收到的元组相关联的元数据两者中的至少一个,计算用于处理所述数据流的所接收到的第一元组的估计处理时间。另外,所述方法、系统和计算机程序产品包括当确定所计算的估计处理时间不超过预定阈值时间时,使用第一执行路径以第一方式处理所述数据流的第一元组。所述方法、系统和计算机程序产品还包括当确定所计算的估计处理时间超过预定阈值时间时,以第二方式处理所述数据流的所接收到的第一元组,相对于以第一方式处理所述第一元组,所述第二方式降低所述第一执行路径中的处理延迟。附图说明由此,获得并可以详细理解上述方面的方式、上面简要概括的本专利技术的实施例的更具体的说明,可以参考附图。然而,要注意,所述附图仅仅说明了本专利技术的典型实施例,因此不被认为是对它的范围的限制,本专利技术可以认可其他同样有效的实施例。图1A-1B说明了根据本专利技术的一个实施例的、被配置用于执行流应用的计算基础结构100。图2是根据本专利技术的一个实施例的、图1A-1B的计算节点130的更详细的视图。图3是根据本专利技术的一个实施例的、图1的服务器计算系统105的更详细的视图。图4说明了根据本专利技术的一个实施例的、流应用中的计算节点的示例。图5是说明了根据本专利技术的一个实施例的、预测性地移除运行时数据的方法的流程图。图6是说明了根据本专利技术的一个实施例的、概要分析(profiling)元组的方法的流程图。具体实施例方式基于流的计算和基于流的数据库计算随着数据库系统技术的发展而出现。可以获得允许用户在流数据到达数据库文件之前创建处理和查询流数据的应用的产品。利用该出现的技术,当传入(inbound)的数据记录“在飞行中(in flight) ”时,用户能够指定处理逻辑以应用到传入的数据记录,可以在非常短的时间内得到结果,通常是毫秒级的。使用这种类型的处理构建应用开辟了允许多样性的创新应用、系统和进程(process)得以开发的新编程范例,并且对应用程序员和数据库开发人员提出了新的挑战。在流应用中,操作码(operator)相互连接使得数据从一个处理元素流向下一个 (如,在TCP/IP套接字上)。通过创建许多小的可执行代码片(操作码)而在节点之间分布应用、以及通过在多个节点上复制处理元素并在它们之间进行负载平衡,来达到可扩展性(scalability)。流应用中的处理元素(以及操作码)可以融合在一起形成更大的处理元素。这样做允许处理元素共享共同的处理空间,从而在操作码之间产生比使用进程间通信技术(例如,使用TCP/IP套接字)可获得的通信快得多的通信。此外,可以从表示经过流应用的数据流的操作码图中动态地移除或插入处理元素,并且可以在运行时期间将其从流应用中解融合或融合。流应用的一个优势是它们允许用户细粒度地控制经过所述应用的数据的处理流。 换言之,用户可以为对进入数据执行不同操作的各个处理元素指派具体的操作码,并可以通过修改所述操作码以及它们被执行的顺序来动态地改变流应用。此外,流应用能够在限制处理中的任意“瓶颈”的同时处理大量的数据。然而,在很多情况下,瓶颈将仍然出现,其可能引起流应用的部分减速。此外,这样的瓶颈导致的问题可能会随着额外数据的接收而继续加重。如此,对于必须尽可能接近实时地处理进入数据的流应用,任何潜在的瓶颈都应该被避免,因为它们可能会严重影响应用的性能以及应用的实时处理进入数据的能力。本专利技术的实施例提供了用于识别可能不能在阈值时间量内处理完的进入流数据并且将所述进入数据从主执行路径中移除的技术。特别地,本专利技术的实施例提供了用于计算针对所接收到的数据流的元组的估计处理时间、并且基于所计算的估计处理时间确定是否处理所接收到的元组的技术。例如,假定给定的处理元素处理元组的平均处理时间是5 毫秒。如果本专利技术的实施例接收到特定的元组并计算出给定的处理元素大约需要5分钟处理所述特定元组,则本专利技术的实施例可以接着阻止给定的处理元素处理所述元组。如此,本专利技术的实施例可以防止流应用中的瓶颈。另外,在某些实施例中,可以接着使用所述主要执行路径之外的其他资源处理所述特定元组。下面,参考本专利技术的实施例。然而,应该理解,本专利技术不局限于具体说明的实施例。 相反,下面的特征和元素的任意组合(不管是否与不同的实施例相关)在实现和实践本专利技术时都被考虑在内。此外,虽然本专利技术的实施例可以达到优于其他可能的解决方案和/或现有技术的优点,但给定实施例是否达到特定优势并不是对本专利技术的限制。因此,以下方面、特征、实施例和优势仅仅是说明性的,除了在权利要求书中显式声明之外,并不认为是所附权利要求的元素或限制。同样地,对“本专利技术”的引用不应该被解释为对这里公开的任意专利技术主题的概括,并且除了在权利要求书中显式声明之外,也不应该被认为是所述权利要求的元素或限制。本领域的技术人员将理解,本专利技术的方面可以被实施为系统、方法或计算机程序产品。因此,本专利技术的方面可以采用完全硬件实施例、完全软件实施例(包括固件、常驻软件、微代码,等等)或将软件和硬件方面组合的实施例的形式,这里,它们全部被一般地称为“电路”、“模块”或“系统”。此外,本专利技术的方面可以采用被实施在一个或多个计算机可读介质中的计算机程序产品的形式,所述计算机可读介质具有在其上包含的计算机可读程序。可以利用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是,例如但不限于,电子的、磁性的、光学的、电磁的、红外的或半导体的系统、装置或器件,或前述的任意合适的组合。所述本文档来自技高网...

【技术保护点】
1.一种用于处理数据流的计算机实现的方法,包括:接收要处理的数据流的第一元组,其中所述第一元组包括多个属性;通过一个或多个计算机处理器的操作,至少部分地基于所述第一元组中的多个属性中的一个或多个属性,计算用于处理所述数据流的所接收到的第一元组的估计处理时间;当确定所计算的估计处理时间不超过预定阈值时间时,使用第一执行路径以第一方式来处理所述数据流的第一元组;以及当确定所计算的估计处理时间超过所述预定阈值时间时,以第二方式处理所述数据流的所接收到的第一元组,相对于以所述第一方式处理所述第一元组,所述第二方式降低所述第一执行路径中的处理延迟。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:MJ布兰森JM桑托索索
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1