分布式事件处理系统中的数据序列化技术方案

技术编号:20986398 阅读:27 留言:0更新日期:2019-04-29 20:04
公开了一种分布式事件处理系统,该系统经由持续数据流接收一批事件并执行对该批事件中的数据的序列化。在某些实施例中,系统识别该批事件中的每个事件的第一属性的第一数据类型,并确定要对由第一属性表示的数据值执行的第一类型的数据压缩。系统基于第一属性的第一数据类型确定要对由第一属性表示的数据值执行的第一类型的数据压缩。然后,系统针对第一属性生成经序列化的数据值的第一集合。系统针对一组一个或多个持续查询来处理经序列化的数据值的第一集合,以生成输出事件的第一集合。

Data Serialization in Distributed Event Processing System

A distributed event processing system is disclosed, which receives a batch of events via a persistent data stream and performs serialization of the data in the batch of events. In some embodiments, the system identifies the first data type of the first attribute of each event in the batch and determines the first type of data compression to be performed on the data values represented by the first attribute. The system determines the first type of data compression to be performed on the data values represented by the first attribute based on the first data type of the first attribute. Then, the system generates a first set of serialized data values for the first attribute. The system processes the first set of serialized data values for one or more continuous queries to generate the first set of output events.

【技术实现步骤摘要】
【国外来华专利技术】分布式事件处理系统中的数据序列化相关申请的交叉引用本申请是于2016年9月15日提交的标题为“FASTSERIALIZATIONOFTUPLEBATCHES”的美国临时申请No.62/395216的非临时申请并且依据35U.S.C.119(e)要求该申请以及于2017年9月11日提交的标题为“DATASERIALIZATIONINADISTRIBUTEDEVENTPROCESSINGSYSTEM”的美国非临时申请No.15/700,784的权益和优先权,两个申请中的每一个的全部内容通过引用并入本文,用于所有目的。本申请还涉及与本申请同一天提交的标题为“GRAPHGENERATIONFORADISTRIBUTEDEVENTPROCESSINGSYSTEM”的代理人案卷No.088325-1043335(177610US)的申请序列No._____________,与本申请同一天提交的标题为“CLUSTERINGEVENTPROCESSINGENGINES”的代理人案卷No.088325-1043336(177620US)的申请序列No._____________,以及与本申请同一天提交的标题为“DATAPARTITIONINGANDPARALLELISMINADISTRIBUTEDEVENTPROCESSINGSYSTEM”的代理人案卷No.088325-1043337(177630US)的申请序列No._____________。每个申请的全部内容依据35U.S.C.§120都通过引用并入本文,如同在本文完全阐述了一样。
技术介绍
在传统的数据库系统中,数据通常以表的形式存储在一个或多个数据库中。然后使用诸如结构化查询语言(SQL)之类的数据管理语言来查询和操纵所存储的数据。例如,可以定义并执行SQL查询,以从存储在数据库中的数据中识别相关数据。因此,SQL查询是对存储在数据库中的有限数据集执行的。另外,当执行SQL查询时,它在有限数据集上执行一次并产生有限静态结果。因此,数据库最适合在有限存储数据集上运行查询。然而,许多现代应用和系统以持续数据或事件流而不是有限数据集的形式生成数据。此类应用的示例包括但不限于传感器数据应用、金融报价机、网络性能测量工具(例如,网络监视和流量管理应用)、点击流分析工具、汽车流量监视等。这些应用引起了对可以处理数据流的新型应用的需求。例如,温度传感器可以被配置为发出温度读数。为这些类型的基于事件流的应用管理和处理数据涉及以强时间焦点(temporalfocus)构建数据管理和查询能力。需要不同类型的查询机制,该查询机制包括对持续无界数据集的长时间运行的查询。虽然一些供应商现在提供面向事件流处理的产品套件,但这些产品仍然缺乏用于处置当今事件处理需求所需的处理灵活性。
技术实现思路
提供了用于对经由事件的持续流接收的事件数据进行序列化的技术(例如,方法、系统、存储可由一个或多个处理器执行的代码或指令的非瞬态计算机可读介质)。在一个实施例中,公开了一种分布式事件处理系统,该系统被配置为经由持续数据流接收一批事件并执行该批事件中的数据的序列化。分布式事件处理系统可以被配置为针对一组持续查询来处理事件数据,以生成输出事件的集合。分布式事件处理系统还可以被配置为将该输出事件的集合发送给分布式事件处理系统的用户。在一个实施例中,公开了一种包括多个计算设备的分布式事件处理系统。该多个计算设备中的计算设备被配置为从事件流接收一批事件。事件流具有相关联的模式(schema)。该模式识别经由该事件流接收的每个事件的一个或多个属性。计算设备被包括在分布式事件处理系统中的计算节点集群中,并且该计算节点集群包括分布式事件处理系统中的该多个计算设备的至少子集。在某些实施例中,计算设备被配置为识别该批事件中的每个事件的一个或多个属性中的第一属性的第一数据类型,并确定要对由第一属性表示的数据值执行的第一类型的数据压缩。在某些示例中,基于第一属性的第一数据类型确定第一类型的数据压缩。然后,计算设备被配置为针对第一属性生成经序列化的数据值的第一集合并存储由第一属性表示的经序列化的数据值的第一集合。在某些实施例中,计算设备还被配置为针对一组一个或多个持续查询来处理与第一属性对应的经序列化的数据值的第一集合,以生成输出事件的第一集合。然后,计算设备被配置为将输出事件的第一集合发送到用户。在一些实施例中,计算设备被配置为基于经序列化的数据值的第一集合生成与第一属性对应的解序列化的数据值的第一集合,并针对一组一个或多个持续查询来处理与第一属性对应的解序列化的数据值的第一集合,以生成输出事件的第一集合。在一些实施例中,计算设备被配置为通过识别要对由第一属性表示的数据值执行的第一类型的数据压缩并根据第一类型的数据压缩对由第一属性表示的经序列化的数据值的第一集合进行解序列化,来生成与第一属性对应的解序列化的数据值的第一集合。在一些实施例中,计算设备被配置为识别该批事件中的每个事件的第二属性的第二数据类型。在一个示例中,第二数据类型与第一数据类型不同。计算设备被配置为针对该批事件中的事件确定要对由第二属性表示的数据值执行的第二类型的数据压缩。在示例中,第二类型的数据压缩与第一类型的数据压缩不同。计算设备还被配置为基于确定第二类型的数据压缩来生成由第二属性表示的经序列化的数据值的第二集合,并存储由第二属性表示的经序列化的数据值的第二集合。在一些示例中,基于第二属性的第二数据类型确定第二类型的数据压缩。在一些实施例中,计算设备被配置为基于经序列化的数据值的第二集合生成与第二属性对应的解序列化的数据值的第二集合,并针对一组一个或多个持续查询来处理与第二属性对应的解序列化的数据值的第二集合,以生成输出事件的第一集合。在一些示例中,第一类型的数据压缩或第二类型的数据压缩包括基部压缩技术、值索引压缩技术、或精度约简和值索引压缩技术中的至少一种。在某些实施例中,计算设备被配置为通过基于一组一个或多个持续查询识别要对该批事件中的每个事件执行的一组一个或多个操作、将该组一个或多个操作表示为变换的持续查询语言(CQL)弹性分布式数据集(RDD)的有向无环图(DAG),并针对变换的该CQLRDDDAG处理与第一属性对应的经序列化的数据值的第一集合,来处理与第一属性对应的经序列化的数据值的第一集合,从而生成输出事件的第一集合。在一些示例中,第一属性的第一数据类型是数值数据类型,并且第二属性的第二数据类型是非数值数据类型。以上和以下描述的技术可以以许多方式并在许多上下文中实现。参考以下附图提供若干示例实现方案和上下文,如下面更详细地描述的。然而,以下实现方案和上下文只是其中的一小部分。附图说明图1描绘了根据本公开实施例的示例事件处理系统体系架构的各方面,该示例事件处理系统体系架构提供可以针对不同的执行环境来处理事件处理应用的环境。图2是根据本公开实施例的、用于事件处理应用的事件处理网络(EPN)的图形表示。图3是图示了根据本公开实施例的应用处理引擎的部件的简化框图。图4是根据本公开实施例的、由公共应用模型生成器生成的“公共应用运行时模型”的表示的示例。图5是根据本公开实施例的、由有向无环图(DAG)生成器生成的部件的运行时DAG的示例。图6是可本文档来自技高网
...

【技术保护点】
1.一种用于使用分布式事件处理系统来处理事件的持续数据流的方法,所述方法包括:在所述分布式事件处理系统中的多个计算设备中的计算设备处接收来自事件流的一批事件,所述事件流具有相关联的,该模式识别经由所述事件流接收的每个事件的一个或多个属性,所述计算设备包括在所述分布式事件处理系统中的计算节点集群中,并且所述计算节点集群包括所述分布式事件处理系统中的所述多个计算设备的至少子集;由所述计算设备识别所述一批事件中的每个事件的所述一个或多个属性中的第一属性的第一数据类型;由所述计算设备针对所述一批事件中的每个事件确定要对由第一属性表示的数据值执行的第一类型的数据压缩,所述第一类型的数据压缩是至少部分地基于第一属性的第一数据类型确定的;至少部分地基于该确定,由所述计算设备针对第一属性生成经序列化的数据值的第一集合;由所述计算设备存储由第一属性表示的经序列化的数据值的第一集合;由所述计算设备针对一组一个或多个持续查询来处理与第一属性对应的经序列化的数据值的第一集合,以生成输出事件的第一集合;以及由所述计算设备将输出事件的第一集合发送到用户。

【技术特征摘要】
【国外来华专利技术】2016.09.15 US 62/395,216;2017.09.11 US 15/700,7841.一种用于使用分布式事件处理系统来处理事件的持续数据流的方法,所述方法包括:在所述分布式事件处理系统中的多个计算设备中的计算设备处接收来自事件流的一批事件,所述事件流具有相关联的,该模式识别经由所述事件流接收的每个事件的一个或多个属性,所述计算设备包括在所述分布式事件处理系统中的计算节点集群中,并且所述计算节点集群包括所述分布式事件处理系统中的所述多个计算设备的至少子集;由所述计算设备识别所述一批事件中的每个事件的所述一个或多个属性中的第一属性的第一数据类型;由所述计算设备针对所述一批事件中的每个事件确定要对由第一属性表示的数据值执行的第一类型的数据压缩,所述第一类型的数据压缩是至少部分地基于第一属性的第一数据类型确定的;至少部分地基于该确定,由所述计算设备针对第一属性生成经序列化的数据值的第一集合;由所述计算设备存储由第一属性表示的经序列化的数据值的第一集合;由所述计算设备针对一组一个或多个持续查询来处理与第一属性对应的经序列化的数据值的第一集合,以生成输出事件的第一集合;以及由所述计算设备将输出事件的第一集合发送到用户。2.如权利要求1所述的方法,其中由所述计算设备处理经序列化的数据值的第一集合还包括:由所述计算设备至少部分地基于经序列化的数据值的第一集合生成与第一属性对应的解序列化的数据值的第一集合;以及由所述计算设备针对所述一组一个或多个持续查询处理与第一属性对应的解序列化的数据值的第一集合,以生成输出事件的第一集合。3.如权利要求2所述的方法,其中由所述计算设备生成与第一属性对应的解序列化的数据值的第一集合还包括:由所述计算设备识别对由第一属性表示的数据值执行的第一类型的数据压缩;以及由所述计算设备根据第一类型的数据压缩对由第一属性表示的经序列化的数据值的第一集合进行解序列化。4.如权利要求1至3中任一项所述的方法,还包括:由所述计算设备识别所述一批事件中的每个事件的所述一个或多个属性中的第二属性的第二数据类型,所述第二数据类型与第一数据类型不同;由所述计算设备针对所述一批事件中的事件确定要对由第二属性表示的数据值执行的第二类型的数据压缩,所述第二类型的数据压缩与第一类型的数据压缩不同;至少部分地基于该确定,由所述计算设备生成由第二属性表示的经序列化的数据值的第二集合;以及由所述计算设备存储由第二属性表示的经序列化的数据值的第二集合。5.如权利要求4或权利要求5所述的方法,其中至少部分地基于第二属性的第二数据类型来确定第二类型的数据压缩。6.如权利要求4或权利要求5所述的方法,还包括由所述计算设备处理经序列化的数据值的第二集合,该处理包括:由所述计算设备基于经序列化的数据值的第二集合生成与第二属性对应的解序列化的数据值的第二集合;以及由所述计算设备针对所述一组一个或多个持续查询来处理与第二属性对应的解序列化的数据值的第二集合,以生成输出事件的第一集合。7.如权利要求4至6中任一项所述的方法,其中第一类型的数据压缩或第二类型的数据压缩包括基部压缩技术、值索引压缩技术、或精度约简和值索引压缩技术中的至少一种。8.如权利要求1至7中任一项所述的方法,其中由所述计算设备处理与第一属性对应的经序列化的数据值的第一集合还包括:基于所述一组一个或多个持续查询,由所述计算设备识别要对所述一批事件中的每个事件执行的一组一个或多个操作;由所述计算设备将所述一组一个或多个操作表示为变换的持续查询语言(CQL)弹性分布式数据集(RDD)有向无环图(DAG);以及由所述计算设备针对CQL变换来处理与第一属性对应的经序列化的数据值的第一集合,以生成输出事件的第一集合。9.如权利要求1至8中任一项所述的方法,其中第一属性的第一数据类型是数值数据类型,并且第二属性的第二数据类型是非数值数据类型。10.一种存储计算机可执行指令的计算机可读介质,所述计算机可执行指令在由一个或多个处理器执行时将一个或多个计算机系统配置为至少执行:使得所述一个或多个处理器在分布式事件处理系统中的多个计算设备中的计算设备处接收来自事件流的一批事件的指令,所述事件流具有相关联的模式,所述模式识别经由所述事件流接收的每个事件的一个或多个属性,所述计算设备包括在所述分布式事件处理系统中的计算节点集群中,并且所述计算节点集群包括所述分布式事件处理系统中的所述多个计算设备的至少子集;使得所述一个或多个处理器识别所述一批事件中的每个事件的所述一个或多个属性中的第一属性的第一数据类型的指令;使得所述一个或多个处理器针对所述一批事件中的每个事件确定要对由第一属性表示的数据值执行的第一类型的数据压缩的指令,所述第一类型的数据压缩是至少部分地基于第一属性的第一数据类型确定的;使得所述一个或多个处理器至少部分地基于该确定而针对第...

【专利技术属性】
技术研发人员:H·帕克S·比施诺伊P·图卡拉姆
申请(专利权)人:甲骨文国际公司
类型:发明
国别省市:美国,US

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

1