CN111611447B - 一种计算机及服务器 - Google Patents
一种计算机及服务器 Download PDFInfo
- Publication number
- CN111611447B CN111611447B CN201910136897.3A CN201910136897A CN111611447B CN 111611447 B CN111611447 B CN 111611447B CN 201910136897 A CN201910136897 A CN 201910136897A CN 111611447 B CN111611447 B CN 111611447B
- Authority
- CN
- China
- Prior art keywords
- rule
- association rule
- computer
- association
- operator
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012545 processing Methods 0.000 claims abstract description 197
- 238000000034 method Methods 0.000 claims abstract description 29
- 230000008569 process Effects 0.000 claims description 25
- 230000004044 response Effects 0.000 claims description 18
- 238000012217 deletion Methods 0.000 claims description 9
- 230000037430 deletion Effects 0.000 claims description 9
- 230000006870 function Effects 0.000 description 22
- 230000008859 change Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 14
- 230000003993 interaction Effects 0.000 description 11
- 230000004048 modification Effects 0.000 description 7
- 238000012986 modification Methods 0.000 description 7
- 238000012790 confirmation Methods 0.000 description 2
- 101100347958 Arabidopsis thaliana NAP1;1 gene Proteins 0.000 description 1
- 101100347962 Arabidopsis thaliana NAP1;2 gene Proteins 0.000 description 1
- 101100347966 Arabidopsis thaliana NAP1;3 gene Proteins 0.000 description 1
- 101100347970 Arabidopsis thaliana NAP1;4 gene Proteins 0.000 description 1
- 101100186790 Arabidopsis thaliana NRP1 gene Proteins 0.000 description 1
- 101100080538 Arabidopsis thaliana NRP2 gene Proteins 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 101150046077 nfa1 gene Proteins 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- ZLIBICFPKPWGIZ-UHFFFAOYSA-N pyrimethanil Chemical compound CC1=CC(C)=NC(NC=2C=CC=CC=2)=N1 ZLIBICFPKPWGIZ-UHFFFAOYSA-N 0.000 description 1
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种计算机及服务器,属于通信领域,应用于由计算机集群实现的流数据的处理系统,计算机集群包括第一计算机、第二计算机和第三计算机,第一计算机存储有第一程序,第二计算机存储有第二程序,第三计算机存储有第三程序,第一计算机运行第一程序生成关联规则算子,第二计算机运行第二程序生成数据源算子,第三计算机运行第三程序生成输出算子;关联规则算子,用于获取来自于服务器的m个第一关联规则;根据m个第一关联规则更新第一计算机中保存的关联规则算子对应的第一关系表,从而得到第二关系表;接收数据源算子发送的流数据,根据第二关系表处理所述流数据,向输出算子发送处理结果。本申请能够提高对流数据处理的稳定性。
Description
技术领域
本申请涉及通信领域,特别涉及一种计算机及服务器。
背景技术
流数据是指由众多的数据源持续生成的数据以顺序、大量、快速、连续到达的方式汇总形成的数据序列。考虑到流数据的数据量很大、对处理时效性的要求很高、用户的个性化需求等因素,现有技术采用计算机集群作为流数据处理的执行主体,计算机集群由多台计算机组成。由于不同用户对流数据处理的目标不同,为了实现不同目标,现有技术采用任务的形式来处理流数据。任务是用户为完成某一目标而编写的并运行在计算机集群上的处理程序。
为了便于理解在一个任务中流数据被处理的具体过程,将这一具体过程逻辑抽象后用流处理流程图来描述。表示一个任务的流处理流程图包括多个用圆圈表示的算子。算子是业务处理逻辑的载体,也是计算机集群进行调度的最小执行单元。算子的类型包括源算子、输出算子和任务处理算子。一个流处理流程图中包括至少一个源算子、至少一个输出算子和至少一个任务处理算子。源算子用于接收流数据;输出算子用于输出处理结果;任务处理算子用于处理流数据。
用户可以编写关联规则,关联规则表达了任务执行过程中的业务处理逻辑。计算机基于关联规则以及关联规则处理的对象和关联规则输出的结果生成任务,任务包含源算子、任务处理算子和输出算子。在计算机中源算子接收不同数据源发送的数据并形成流数据,向任务处理算子发送该流数据,任务处理算子处理该流数据,通过输出算子输出处理的结果。
为了适应业务的多样性以及业务变化的需求,用户可以更新关联规则。例如,当用户增加新关联规则时,用户所使用的计算机(也被称为“任务客户端”)根据该新关联规则生成一个任务并在计算机集群上运行该任务;当用户修改某个关联规则时,任务客户端先通知计算机集群停止该关联规则当前对应的任务,再根据修改后的关联规则生成一个新任务,将该新任务提交到计算机集群中运行该新任务;当用户删除某个关联规则时,任务客户端通知计算机集群停止该关联规则对应的任务。然而,目前用户对关联规则进行更新的操作,会导致计算机集群中频繁的启动任务和停止任务,影响流数据处理的稳定性。
发明内容
为了提高对流数据处理的稳定性,本申请实施例提供了一种计算机及服务器。所述技术方案如下:
第一方面,本申请提供了一种计算机,应用于由计算机集群实现的流数据的处理系统,该计算机为计算机集群中的第一计算机,计算机集群还包括第二计算机和第三计算机,第一计算机存储有第一程序,第二计算机存储有第一程序对应的第二程序,第三计算机存储有第一程序对应的第三程序,第一计算机运行第一程序生成关联规则算子,第二计算机运行第二程序生成关联规则算子对应的数据源算子,第三计算机运行第三程序生成关联规则算子对应的输出算子
关联规则算子,用于获取来自于服务器的m个第一关联规则,该m个第一关联规则属于关联规则算子对应的规则类别,m为大于或等于1的整数;根据该m个第一关联规则更新第一计算机中保存的关联规则算子对应的第一关系表,从而得到第二关系表,第一关系表用于保存第二关联规则和第二关联规则对应的NFA,第二关系表用于保存每个第一关联规则和每个第一关联规则对应的NFA;接收数据源算子发送的流数据,根据第二关系表处理流数据,向输出算子发送处理结果。由于关联规则算子根据m个第一关联规则算子对第一关系表进行更新,然后根据更新得到的第二关系表处理流数据,这样在更新关联规则时,不需要整体上停止或重新启动流数据处理任务,从而提高了计算机系统的稳定性,以实现提高对流数据处理的稳定性。
在第一方面的一种可能的实现方式中,计算机集群还包括第四计算机,第四计算机存储有第一程序对应的第四程序,第四计算机运行第四程序生成关联规则算子对应的关联规则源算子;关联规则算子,用于接收关联规则源算子发送的m个第一关联规则,其中关联规则源算子用于从服务器中获取属于规则类别的m个第一关联规则。m个第一关联规则是用户更新后的关联规则,获取更新后的关联规则的功能从关联规则算子中分离出,由关联规则源算子实现该功能,关联规则算子实现处理流数据的单一功能,以避免中断整个流数据处理任务。
在第一方面的一种可能的实现方式中,关联规则算子,用于从m个第一关联规则中选择出一个第一关联规则,并对选择出的第一关联规则执行以下操作,重复执行该选择步骤,直到对m个第一关联规则中的每个第一关联规则均执行以下操作为止:
如果选择出的第一关联规则的规则标识与第一关系表中的每个第二关联规则的规则标识均不同,则根据选择出的第一目标关联规则生成NFA,将选择出的第一关联规则和生成的NFA保存在第一关系表中;如果选择出的第一关联规则的规则标识与第一关系表中的一个第二关联规则的规则标识相同、且选择出的第一关联规则的规则内容和第二关联规则的规则内容不同,则根据选择出的第一关联规则生成NFA,在第一关系表中将第二关联规则替换为选择出的第一关联规则,以及将第二关联规则对应的NFA替换为生成的NFA。由于关联规则算子根据关联规则生成用于处理流数据的NFA,这样在用户增加关联规则时,关联规则算子基于增加的关联规则生成NFA并将增加的关联规则和该NFA保存在第一关系表中即可;在用户修改某个关联规则时,关联规则算子根据修改后关联规则生成NFA,在第一关系表中将该关联规则和该关联规则对应的NFA分别替换为修改后的关联规则和生成的NFA即可。如此在用户增加或修改关联规则时,不需要停止或重新启动流数据处理任务,从而提高了计算机系统的稳定性,以实现提高对流数据处理的稳定性。
在第一方面的一种可能的实现方式中,关联规则算子,还用于从第一关系表包括的第二关联规则中选择出一个第二关联规则,并对选择出的第二关联规则执行以下操作,重复执行该选择步骤,直到对第一关系表包括的每个第二关联规则均执行以下操作为止:
在m个第一关联规则中的每个第一关联规则的规则标识与选择出的第二关联规则的规则标识均不同时,从第一关系表中删除选择出的第二关联规则和选择出的第二关联规则对应的NFA。由于关联规则算子从第一关系表中删除用户需要删除的关联规则和该关联规则对应的NFA,这样在用户删除关联规则时,不需要停止或重新启动流数据处理任务,从而提高了计算机系统的稳定性,以实现提高对流数据处理的稳定性。
第二方面,本申请提供了一种计算机,应用于由计算机集群实现的流数据的处理系统,该计算机为计算机集群中的第四计算机,计算机集群还包括第一计算机、第二计算机和第三计算机,第一计算机存储有第一程序,第二计算机存储有第一程序对应的第二程序,第三计算机存储有第一程序对应的第三程序,第四计算机存储有第一程序对应的第四程序,第一计算机运行第一程序生成关联规则算子,第二计算机运行第二程序生成关联规则算子对应的数据源算子,第三计算机运行第三程序生成关联规则算子对应的输出算子,第四计算机运行第四程序生成关联规则算子对应的关联规则源算子;
关联规则源算子,用于获取服务器中的存储空间的地址,该存储空间用于存储属于关联规则源算子对应的规则类别的关联规则;根据该存储空间的地址获取该存储空间中保存的m个第一关联规则,m为大于或等于1的整数;向关联规则算子发送该m个第一关联规则,该m个第一关联规则用于关联规则算子处理来自数据源算子发送的流数据并向输出算子发送处理结果。m个第一关联规则是用户更新后的关联规则,关联规则源算子获取更新后的关联规则并发送给关联规则算子,联规则算子只需要实现处理流数据的单一功能,避免中断流数据处理任务。由于关联规则源算子将更新后的m个第一关联规则发送给关联规则算子,关联规则算子不需要停止和重新启动就可以基于该m个第一关联规则处理流数据,从而不需要整体上停止或重新启动流数据处理任务,提高计算机系统的稳定性,以实现提高对流数据处理的稳定性。
在第二方面的一种可能的实现方式中,关联规则源算子,用于向服务器发送订阅请求消息,该订阅请求消息携带关联规则源算子对应的规则类别,该订阅请求消息用于触发服务器获取用于存储属于该规则类别的关联规则的存储空间的地址;接收服务器发送的订阅响应消息,该订阅响应消息携带该存储空间的地址。由于关联规则源算子在服务器中订阅其对应的规则类别,从而可以得到该规则类别对应的存储空间的地址,这样在后续处理中,关联规则源算子可以根据存储空间的地址主动地从服务器中获取属于该规则类别的关联规则,或在属于该规则类别的关联规则发生变化时,服务器可以主动地通知关联规则源算子,以关联规则源算子从服务器中获取属于该规则类别的关联规则。
在第二方面的一种可能的实现方式中,关联规则源算子,用于接收来自服务器的通知消息;在该通知消息的触发下,根据该存储空间的地址获取该存储空间中保存的m个第一关联规则。由于关联规则算子在服务器的通知下获取该存储空间中保存的m个第一关联规则,这样实现只在该存储空间中的关联规则发生变时,才获取该存储空间中的关联规则,可以减小关联规则算子更新第一关系表的次数。
第三方面,本申请提供了一种服务器,应用于由计算机集群和服务器实现的流数据的处理系统,计算机集群包括第一计算机、第二计算机和第三计算机,第一计算机存储有第一程序,第二计算机存储有第一程序对应的第二程序,第三计算机存储有第一程序对应的第三程序,第一计算机运行第一程序生成关联规则算子,第二计算机运行第二程序生成关联规则算子对应的数据源算子,第三计算机运行第三程序生成关联规则算子对应的输出算子;
服务器,用于获取待处理关联规则的规则标识和规则类别,以及对待处理关联规则进行操作的操作类型,操作类型包括添加关联规则、删除关联规则、或修改关联规则三者其中之一;根据该规则标识,对服务器中的该规则类别对应的存储空间执行该操作类型对应的处理操作,该存储空间用于存储属于该规则类别的关联规则;向该规则类别对应的关联规则算子提供该存储空间中存储的m个第一关联规则,m为大于或等于1的整数,该m个第一关联规则用于关联规则算子处理来自数据源算子发送的流数据并向输出算子发送处理结果。在用户对某规则类别的关联规则变更时,服务器对该规则类别对应的存储空间执行该操作类型对应的处理操作,然后向该规则类别对应的关联规则算子提供该存储空间中存储的m个第一关联规则,关联规则算子根据该m个第一关联规则处理流数据,不需要整体上停止或重新启动流数据处理任务,从而提高了计算机系统的稳定性,以实现提高对流数据处理的稳定性。
在第三方面的一种可能的实现方式中,服务器,用于获取待处理关联规则和对待处理关联规则进行操作的操作类型,待处理关联规则包括待处理关联规则的规则内容、规则标识和规则类别,在操作类型为添加关联规则时,将待处理关联规则添加到规则类别对应的存储空间中;在操作类型为修改关联规则时,在规则类别对应的存储空间中将包括规则标识的关联规则更新为待处理关联规则,从而实现了为该规则类别添加新的关联规则或者修改关联规则。
在第三方面的一种可能的实现方式中,服务器,用于获取待处理关联规则的规则标识和规则类别,以及对待处理关联规则进行操作的操作类型,操作类型为删除关联规则,在该规则类别对应的存储空间中将包括该规则标识的待处理关联规则删除,从而实现删除关联规则。
在第三方面的一种可能的实现方式中,计算机集群还包括第四计算机,第四计算机存储有第一程序对应的第四程序,第四计算机运行第四程序生成关联规则算子对应的关联规则源算子;
服务器,用于向规则类别对应的关联规则源算子发送通知消息,该通知消息用于触发关联规则源算子获取该存储空间中存储的m个第一关联规则并向该规则类别对应的关联规则算子发送该m个第一关联规则。这样可以使关联规则算子在服务器的通知下获取该存储空间中保存的m个第一关联规则,实现只在该存储空间中的关联规则发生变时,才获取该存储空间中的关联规则,可以减小关联规则算子更新第一关系表的次数。
在第三方面的一种可能的实现方式中,服务器,还用于接收关联规则源算子发送的订阅请求消息,该订阅请求消息携带该规则类别;向关联规则源算子发送订阅响应消息,该订阅响应消息携带该规则类别对应的存储空间的地址。由于服务器接收了关联规则源算子的订阅请求消息,这样在后续处理中,在属于该规则类别的关联规则发生变化时,服务器可以主动地通知关联规则源算子,以关联规则源算子从服务器中获取属于该规则类别的关联规则。
第四方面,本申请提供了一种计算机,该计算机包括处理器、存储器、网络接口和总线,处理器、存储器和网络接口通过总线相连,存储器中存储有程序,该程序可以被处理器运行,用于实现第一方面或第一方面任一可能的实现方式中的关联规则算子的功能。
第五方面,本申请提供了一种计算机,该计算机包括处理器、存储器、网络接口和总线,处理器、存储器和网络接口通过总线相连,存储器中存储有程序,该程序可以被处理器运行,用于实现第二方面或第二方面任一可能的实现方式中的关联规则源算子的功能。
第六方面,本申请提供了一种服务器,该计算机包括处理器、存储器、网络接口和总线,处理器、存储器和网络接口通过总线相连,存储器中存储有程序,该程序可以被处理器运行,用于实现第三方面所述的服务器的实现功能或第三方面任一可能的实现方式所述的服务器的实现功能。
附图说明
图1是本申请实施例提供的一种流数据的处理系统结构示意图;
图2是本申请实施例提供的另一种流数据的处理系统结构示意图;
图3是本申请实施例提供的一种流数据的处理流程示意图;
图4是本申请实施例提供的一种关联规则的变更流程示意图;
图5是本申请实施例提供的另一种流数据的处理系统结构示意图;
图6是本申请实施例提供的一种服务器结构示意图;
图7是本申请实施例提供的一种服务器、任务管理主机和计算机集群之间数据交互示意图;
图8是本申请实施例提供的一种第一计算机结构示意图;
图9是本申请实施例提供的一种第二计算机结构示意图;
图10是本申请实施例提供的一种第三计算机结构示意图;
图11是本申请实施例提供的一种第四计算机结构示意图;
图12是本申请实施例提供的一种任务管理主机结构示意图。
具体实施方式
下面将结合附图对本申请实施方式作进一步地详细描述。
参见图1,本申请实施例提供了一种流数据的处理系统,该系统包括服务器1和计算机集群2。服务器1中包括至少一个流数据处理任务。例如一个流数据处理任务包括第一程序、第一程序对应的第二程序和第三程序。服务器1可以在计算机集群2中的至少一个计算机上部署该流数据处理任务包括的第一程序、第二程序和第三程序。
为了便于说明,将计算机集群2中存储有第一程序的计算机称为第一计算机21,将计算机集群2中存储有第二程序的计算机称为第二计算机22,将计算机集群2中存储有第三程序的计算机称为第三计算机23。
服务器1可以将流数据处理任务包括的第一程序、第二程序和第三程序部署在一台计算机上或部署在多台计算机上。在该至少一个计算机包括的计算机数目为3,服务器1将第一程序、第二程序和第三程序部署在三台不同计算机上,第一计算机21、第二计算机22和第三计算机23为三个不同的计算机。在该至少一个计算机包括的计算机数目为1,服务器1将第一程序、第二程序和第三程序部署在一台计算机上,第一计算机21、第二计算机22和第三计算机23为同一台计算机。在该至少一个计算机包括的计算机数目为2,服务器1将第一程序、第二程序和第三程序中的任意两个程序部署在其中一台计算机上,将剩下的程序部署在另一台计算机上,第一计算机21和第二计算机22为同一台计算机,或者,第二计算机22和第三计算机23为同一台计算机,或者,第一计算机21和第三计算机23为同一台计算机。
流数据处理任务包括的第一程序与一个规则类别相对应,属于该规则类别的关联规则用于在流数据处理任务中执行预定处理逻辑。可选的,第一程序对应的规则类别信息可以记录在第一程序中。可选的,规则类别信息可以是该规则类别的关联规则用于处理的数据源的主题名称或该数据源的标识信息等。服务器1中包括该规则类别对应的存储空间,该规则类别对应的存储空间用于保存属于该规则类别的关联规则。
可选的,服务器1中的流数据处理任务可以是技术人员设置的。技术人员在服务器1中设置该流数据处理任务时,技术人员可以在预设的第一程序的模板写入用于执行该流数据处理逻辑的关联规则属于的规则类别,将写入规则类别的第一程序的模板、预设的第二程序的模板和预设的第三程序的模板输入服务器1。服务器1对输入的第一程序的模板、第二程序的模板和第三程序的模板分别进行编译得到该流数据处理任务包括的第一程序、第二程序和第三程序。第二程序指示了上述规则类别的关联规则处理的对象。第三程序指示了上述规则类别的关联规则输出的结果。
第一计算机21运行第一程序生成关联规则算子,第二计算机22运行第二程序生成该关联规则算子对应的数据源算子,第三计算机23运行第三程序生成该关联规则算子对应的输出算子。
关联规则算子,用于获取来自于服务器1的m个第一关联规则,该m个第一关联规则属于该关联规则算子对应的规则类别,m为大于或等于1的整数。由于生成关联规则算子的第一程序是与一个规则类别对应的,关联规则算子对应的规则类别即为生成该关联规则算子的第一程序对应的规则类别。
关联规则算子,还用于根据该m个第一关联规则更新第一计算机21中保存的该关联规则算子对应的第一关系表,从而得到第二关系表。第一关系表用于保存第二关联规则和第二关联规则对应的非确定性有限状态自动机(Non-deterministic FiniteAutomaton,NFA),第二关系表用于保存每个第一关联规则和每个第一关联规则对应的NFA。换句话说,第一关系表中保存的第二关联规则是关联规则算子获取m个第一关联规则之前,先前已获取的对应规则类别的关联规则和NFA。
关联规则算子,还用于接收该数据源算子发送的流数据,根据第二关系表处理该流数据,向该输出算子发送处理结果。
第二关系表中的每个第一关联规则包括规则标识、规则类别和规则内容等信息。第一关联规则中的规则内容包括至少一个匹配条件,该至少一个匹配条件可以包括流数据中的数据的源地址、目标地址和/或数据类型等信息。
第一计算机21运行第一程序生成关联规则算子时,第一计算机21会在其包括的存储器中为该关联规则算子分配存储区域,该关联规则算子对应的第一关系表存储在该存储区域中,该关联规则算子对应的规则类别为第一程序中记录的规则类别。
第二计算机22运行第二程序生成数据源算子时,第二计算机22可以与至少一个数据源建立网络连接,该数据源算子被生成后,用于接收该至少一个数据源中的每个数据源发送的数据并形成流数据,向该关联规则算子发送该流数据。可选地,数据源是产生数据的设备,例如,手机、电脑和服务器等设备在运行时会产生数据,手机、电脑和服务器等设备均为数据源。
关联规则算子,用于接收数据源算子发送的流数据,使用第二关系表中的NFA处理该流数据,得到处理结果。
该NFA对该流数据执行的处理操作包括数据属性条件判断操作。可选的,该处理操作还可以包括临时匹配数据保存操作、计数条件匹配操作和关联条件判断操作中的至少一个。
由于关联规则算子在获取到m个第一关联规则时,只需要根据该m个第一关联规则对第一计算机21中保存的第一关系表进行更新,从而得到第二关系表,在接收到数据源算子发送的流数据时,使用第二关系表中的NFA对流数据进行处理。这样在对关联规则进行更新时,只需要对第一计算机21中保存的第一关系表中的内容进行更新,对关联规则的更新不需要停止或重新启动整个流数据处理任务,从而可以提高计算机集群的稳定性和流数据处理的稳定性。
处理流数据的功能是关联规则算子的主要实现功能,服务器1中的属于每个规则类别的关联规则可被用户变更,为了减小对该功能的影响,流数据处理任务还包括关联规则源算子,该关联规则源算子具有从服务器1中获取关联规则的功能。接下来结合图2对关联规则源算子进行详细描述,以及结合图3对于关联规则源算子、关联规则算子、数据源算子和输出算子之间的数据交互过程进行详细描述。详细描述内容如下:
可选的,参见图2,该流数据处理任务还包括第一程序对应的第四程序,第四程序与第一程序对应的规则类别相对应。
可选的,技术人员在预设的第四程序的模板中写入该规则类别,输入到服务器1中。服务器1对第四程序的模板进行编译得到第四程序。服务器1在部署流数据处理任务时,在计算机集群2中的至少一个计算机上部署该流数据处理任务包括的第一程序、第二程序、第三程序和第四程序。
为了便于说明,将计算机集群2中存储有第四程序的计算机称为第四计算机24。第四计算机24运行第四程序生成该关联规则算子对应的关联规则源算子,该关联规则源算子与第四程序中记录的规则类别相对应,也就是该关联规则源算子对应的规则类别与该关联规则算子对应的规则类别相同。
参见图3,关联规则源算子,用于从服务器1中获取属于该关联规则源算子对应的规则类别的m个第一关联规则,向该关联规则源算子对应的关联规则算子发送该m个第一关联规则。
关联规则算子,用于接收m个第一关联规则,根据该m个第一关联规则更新第一计算机21中保存的该关联规则算子对应的第一关系表,从而得到第二关系表。
数据源算子,用于接收至少一个数据源发送的数据,向该关联规则算子发送流数据,该流数据包括该至少一个数据源发送的数据。
关联规则算子,还用于接收该数据源算子发送的流数据,根据第二关系表处理该流数据得到处理结果,向该输出算子发送该处理结果。
输出算子,用于接收该处理结果,将该处理结果保存在第四计算机24中或保存到存储设备中。
可选的,第四计算机24可以包括存储文件,该输出算子可以将该处理结果保存到该存储文件中。或者,第四计算机24包括网卡,该网卡中包括存储器,该输出算子可以将该处理结果保存到该网卡的存储器中,第四计算机24再通过该网卡上的网络接口将该存储器中保存的处理结果保存到存储设备中。
参见图4,用户可以对服务器1中的属于每个规则类别的关联规则进行变更或更新操作。例如,用户可以为某个规则类别增加新的关联规则,修改某个规则类别包括的关联规则或者删除某个规则类别包括的一个或多个关联规则。
如图4所示,在计算机集群2中部署了三个流数据处理任务,分别为流数据处理任务1、2、3。可选地,流数据处理任务1、2、3分别为基于Apache软件基金会的Apache Flink框架创建并运行的流数据处理任务。Apache Flink是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。Flink以数据并行和流水线方式执行任意流数据程序,Flink的流水线运行时系统可以执行流处理程序。
流数据处理任务1包括数据源算子1、关联规则源算子1、关联规则算子1和输出算子1。服务器1中关联规则1、2、3属于关联规则算子1对应的规则类别,且存储在该规则类别对应的存储空间中。关联规则源算子1从该存储空间中获取关联规则1、2、3并向关联规则算子1发送关联规则1、2、3。关联规则算子1根据关联规则1生成NFA1,根据关联规则2生成NFA2,根据关联规则3生成NFA3。
流数据处理任务2包括数据源算子2、关联规则源算子2、关联规则算子2和输出算子2。服务器1中关联规则4、5、6属于关联规则算子2对应的规则类别,且存储在该规则类别对应的存储空间中。关联规则源算子2从该存储空间中获取关联规则4、5、6并向关联规则算子2发送关联规则4、5、6。关联规则算子2根据关联规则4生成NFA4,根据关联规则5生成NFA5,根据关联规则6生成NFA6。
流数据处理任务3包括数据源算子3、关联规则源算子3、关联规则算子3和输出算子3。服务器1中关联规则7、8属于关联规则算子3对应的规则类别,且存储在该规则类别对应的存储空间中。关联规则源算子3从该存储空间中获取关联规则7、8并向关联规则算子3发送关联规则7、8,关联规则算子3根据关联规则7生成NFA7,根据关联规则8生成NFA8。
可选的,服务器1用于获取待处理关联规则的规则标识和规则类别,以及对待处理关联规则操作的操作类型,根据该规则标识,对服务器1中的该规则类别对应的存储空间执行该操作类型对应的处理操作。其中,待处理关联规则可以为用户增加的新的关联规则、修改的关联规则或需要删除的关联规则,该操作类别可以为添加关联规则、删除关联规则和修改关联规则三者其中之一。
可选的,参见下表1,服务器1中可以包括规则类别与存储空间的地址的对应关系。服务器1可以根据该规则类别,从该对应关系中获取对应的存储空间的地址,在该地址对应的存储空间中对该规则标识对应的关联规则执行该操作类型对应的处理操作。
可选的,用于存储关联规则的存储空间可以是数据库表等形式,存储空间的地址可以数据库表的表名、索引或存储地址等。
表1
规则类别 | 存储空间的地址 |
Rule_category | address |
…… | …… |
可选的,用户可以通过终端对服务器1中的每个规则类别的关联规则进行变更操作,或者,用户在服务器1中对每个规则类别的关联规则进行变更操作。
可选的,在用户通过终端对服务器1中的每个规则类别的关联规则进行变更操作的场景中,用户对应的终端可以向用户显示操作界面。用户可以在该操作界面中设置操作类型、待处理关联规则的规则标识和规则类别。终端从该操作界面中获取该操作类型、待处理关联规则的规则标识和规则类别,向服务器1发送操作请求消息。该操作请求消息携带该操作类型、待处理关联规则的规则标识和规则类别。
当操作类型为添加关联规则时,也就是说用户在操作界面中设置的操作类型为添加关联规则,以及设置待处理关联规则。待处理关联规则为需要添加的新关联规则,待处理关联规则包括规则标识、规则内容和规则类别等内容。终端从该操作界面中获取该操作类型和待处理关联规则,向服务器1发送操作请求消息,该操作请求消息携带该操作类型和待处理关联规则。
当操作类型为修改关联规则时,也就是说用户在操作界面中设置的操作类型为修改关联规则,以及设置待处理关联规则。待处理关联规则包括规则标识、规则内容和规则类别等内容,待处理关联规则的规则标识与服务器1中保存的属于该规则类别的一个关联规则的规则标识相同,但待处理关联规则的规则内容与该一个关联规则的规则内容不同。终端从该操作界面中获取该操作类型和待处理关联规则,向服务器1发送操作请求消息,该操作请求消息携带该操作类型和待处理关联规则。
当操作类型为删除关联规则时,也就是说用户在操作界面中设置的操作类型为删除关联规则,以及设置待处理关联规则的规则标识和规则类别。终端从该操作界面中获取该操作类型、待处理关联规则的规则标识和规则类别,向服务器1发送操作请求消息,该操作请求消息携带该操作类型、待处理关联规则的规则标识和规则类别。
服务器1,用于接收操作请求消息,该操作请求消息携带操作类型、待处理关联规则的规则标识和规则类别,根据该规则标识,对服务器1中的该规则类别对应的存储空间执行该操作类型对应的处理操作。
可选的,在用户在服务器1中对每个规则类别的关联规则进行变更操作的场景中,服务器1可以向用户显示操作界面。用户可以在该操作界面中设置操作类型、待处理关联规则的规则标识和规则类别。服务器1从该操作界面中读取该操作类型、待处理关联规则的规则标识和规则类别,根据该规则标识,对服务器1中的该规则类别对应的存储空间执行该操作类型对应的处理操作。
可选的,当用户需要添加新的关联规则时,用户在该操作界面中设置的操作类型为添加关联规则,以及设置待处理关联规则,待处理关联规则包括规则标识、规则类别和规则内容。当用户需要修改某个关联规则时,用户在该操作界面中设置的操作类型为修改关联规则,以及设置待处理关联规则,待处理关联规则为修改后的关联规则,待处理关联规则包括规则标识、规则类别和规则内容。当用户需要删除某个关联规则时,用户在该操作界面中设置的操作类型为删除关联规则,以及设置待处理关联规则的规则标识和规则类别。
可选的,在操作类型为添加关联规则时,操作请求消息携带该操作类型和待处理关联规则,或者,服务器1从操作界面中读取该操作类型和待处理关联规则,待处理关联规则包括规则内容、规则标识和规则类别。服务器1用于将待处理关联规则添加到该规则类别对应的存储空间中。
在操作类型为修改关联规则时,该操作请求消息携带该操作类型和待处理关联规则,或者,服务器1从操作界面中读取该操作类型和待处理关联规则。服务器1用于在该规则类别对应的存储空间中将包括该规则标识的关联规则更新为待处理关联规则。
在操作类型为删除关联规则时,该操作请求消息携带该操作类型、待处理关联规则的规则标识和规则类别,或者,服务器1从操作界面中读取该操作类型、待处理关联规则的规则标识和规则类别。服务器1用于在该规则类别对应的存储空间中删除包括该规则标识的待处理关联规则。
可选的,在第四计算机24生成关联规则源算子后,该关联规则源算子用于获取服务器1中的存储空间的地址,根据该存储空间的地址获取该存储空间中保存的m个第一关联规则,向该关联规则算子发送该m个第一关联规则。其中,该存储空间用于存储属于该关联规则源算子对应的规则类别的关联规则。
可选的,该关联规则源算子向服务器1发送订阅请求消息,该订阅请求消息携带该关联规则源算子对应的规则类别,并接收服务器1发送的订阅响应消息,该订阅响应消息携带该存储空间的地址。
服务器1接收该订阅请求消息,根据该订阅请求消息携带的该规则类别,获取该规则类别对应的存储空间的地址,向关联规则源算子发送订阅响应消息,该订阅响应消息携带该存储空间的地址。
可选的,关联规则源算子从服务器1中获取m个第一关联规则的方式有多种。在此列举了如下两种方式,对于其他的实现方式在此不再一一列举。该两种方式分别为:
第一种方式,该关联规则源算子周期性地根据该存储区域的地址,获取服务器1中的该存储区域中保存的m个第一关联规则。
第二种方式,服务器1在该存储区域中保存的关联规则发生变化时,向该关联规则源算子发送通知消息;该关联规则源算子接收该通知消息,在该通知消息的触发下,根据该存储空间的地址,获取服务器1中的该存储区域中保存的m个第一关联规则。
可选的,第一关系表中的每个第二关联规则可以是该关联规则算子最近上一次获取的、属于该关联规则算子对应的规则类别的关联规则。
可选的,该关联规则算子在接收到该m个第一关联规则后,可以按如下两种方式更新第一关系表。
方式一
关联规则算子从该m个第一关联规则中选择出一个第一关联规则,并对选择出的第一关联规则执行以下操作,重复执行该选择步骤,直到对该m个第一关联规则中的每个第一关联规则均执行以下操作为止:
该关联规则算子将选择出的第一关联规则与第一关系表中的每个第二关联规则进行比较。在比较出第一关系表中的每个第二关联规则的规则标识和选择出的第一关联规则的规则标识不同时,表明选择出的第一关联规则是用户为属于该关联规则算子对应的规则类别增加的新的关联规则,根据选择的第一关联规则生成NFA,将选择出的第一关联规则和生成的NFA保存在第一关系表中。在比较出选择的第一关联规则的规则标识与一个第二关联规则的规则标识相同且选择的第一关联规则的规则内容和该一个第二关联规则的规则内容不同时,表明用户对该一个第二关联规则进行修改,选择出的第一关联规则为修改后的关联规则,根据选择出的第一关联规则生成NFA,在第一关系表中将该一个第二关联规则替换为该选择出的第一关联规则,将该一个第二关联规则对应的NFA替换为生成的NFA。
方式二
关联规则算子从第一关系表包括的第二关联规则中选择出一个第二关联规则,并对选择出的第二关联规则执行以下操作,重复执行该选择步骤,直到对第一关系表包括的每个第二关联规则均执行以下操作为止:
该关联规则算子将选择出的第二关联规则与m个第一关联规则进行比较。在比较出每个第一关联规则的规则标识与选择出的第二关联规则的规则标识不同时,表明用户从属于该关联规则算子对应的规则类别的关联规则中删除了选择出的第二关联规则,该关联规则算子可以从第一关系表中删除选择出的第二关联规则和选择出的第二关联规则对应的NFA。
可选的,第一计算机21、第二计算机22、第三计算机23和第四计算机24可以为同一台计算机,或者,可以为不同的计算机,或者,第一计算机21、第二计算机22、第三计算机23和第四计算机24中的部分计算机为同一台计算机。
在第一计算机21、第二计算机22、第三计算机23和第四计算机24为同一台计算机的情况下,关联规则算子、关联规则源算子、数据源算子和输出算子运行在同一台计算机中。关联规则算子、关联规则源算子、数据源算子和输出算子为该计算机中四个不同的进程或线程。关联规则算子、关联规则源算子、数据源算子和输出算子之间的数据交互是四个进程之间的数据交互或是四线程之间的数据交互。
在第一计算机21、第二计算机22、第三计算机23和第四计算机24为不同的计算机的情况下,关联规则算子、关联规则源算子、数据源算子和输出算子之间的数据交互是该四个计算机之间的数据交互。
在第一计算机21、第二计算机22、第三计算机23和第四计算机24中的部分计算机为同一台计算机的情况下,关联规则算子、关联规则源算子、数据源算子和输出算子中的部分算子运行在同一台计算机中,在该计算机中该部分算子是不同的进程或线程。对于关联规则算子、关联规则源算子、数据源算子和输出算子中的任一个算子而言,该算子与其他算子之间的数据交互可能是该算子所在的计算机与其他算子所在的计算机之间的数据交互,可能是该算子所在的进程与其他算子所在的进程之间的数据交互,也可能是该算子所在的线程与其他算子所在的线程之间的数据交互。
参见图5,该系统还可以包括任务管理主机3,任务管理主机3可以与服务器1之间建立有网络连接以及与计算机集群2中的每个计算机之间建立有网络连接。
任务管理主机3可以实时获取计算机集群2中的每个计算机包括的空闲资源量。可选的,任务管理主机3可以周期性的主动查询计算机集群2中的每个计算机包括的空闲资源量;或者,计算机集群2中的每个计算机在其包括的空闲资源发生变化时向任务管理主机3发送其包括的空闲资源量,任务管理主机3接收该计算机发送的空闲资源量。
服务器1中包括至少一个流数据处理任务,在服务器1中一个流数据处理任务包括关联规则算子对应的第一程序、数据源算子对应的第二程序和输出算子对应的第三程序等内容,或者,一个流数据处理任务包括关联规则算子对应的第一程序、数据源算子对应的第二程序、输出算子对应的第三程序和关联规则源算子对应的第四程序等内容。
服务器1,还可以用于向任务管理主机3发送流数据处理任务,即向任务管理主机3发送流数据处理任务包括的关联规则算子对应的第一程序、数据源算子对应的第二程序和输出算子对应的第三程序等内容,或者,向任务管理主机3发送流数据处理任务包括的关联规则算子对应的第一程序、数据源算子对应的第二程序、输出算子对应的第三程序和关联规则源算子对应的第四程序等内容。
任务管理主机3,用于接收该流数据处理任务,根据计算机集群2包括的每个计算机的空闲资源量,选择至少一个计算机,在该至少一个计算机部署该流数据处理任务。
可选的,任务管理主机3根据计算机集群2包括的每个计算机的空闲资源量选择三个不同的计算机。为了便于说明,该三个计算机分别为称为第一计算机21、第二计算机22和第三计算机23。任务管理主机3向第一计算机21发送关联规则算子对应的第一程序,向第二计算机22发送数据源算子对应的第二程序,向第三计算机23发送输出算子对应的第三程序,以实现在第一计算机21、第二计算机22和第三计算机23上部署该流数据处理任务。第一计算机21可以接收并保存第一程序,在运行第一程序时可以生成关联规则算子;第二计算机22可以接收并保存第二程序,在运行第二程序时可以生成该关联规则算子对应的数据源算子;第三计算机23可以接收并保存第三程序,在运行第三程序时可以生成该关联规则算子对应的输出算子。
可选的,任务管理主机3根据计算机集群2包括的每个计算机的空闲资源量选择四个不同的计算机。为了便于说明,该四个计算机分别为称为第一计算机21、第二计算机22、第三计算机23和第四计算机24。任务管理主机3向第一计算机21发送关联规则算子对应的第一程序,向第二计算机22发送数据源算子对应的第二程序,向第三计算机23发送输出算子对应的第三程序,以及向第四计算机24发送关联规则源算子对应的第四程序,以实现在第一计算机21、第二计算机22、第三计算机23和第四计算机24上部署该流数据处理任务。第一计算机21可以接收并保存第一程序,在运行第一程序时可以生成关联规则算子;第二计算机22可以接收并保存第二程序,在运行第二程序时可以生成该关联规则算子对应的数据源算子;第三计算机23可以接收并保存第三程序,在运行第三程序时可以生成该关联规则算子对应的输出算子;以及,第四计算机24可以接收并保存第四程序,在运行第四程序时可以生成该关联规则算子对应的关联规则源算子。
可选的,任务管理主机3选择一个计算机,向该计算机发送该流数据处理任务包括的第一程序、第二程序和第三程序,以实现在该计算机上部署该流数据处理任务。该计算机可以运行第一程序、第二程序和第三程序,以生成关联规则算子、数据源算子和输出算子;或者,任务管理主机3向该计算机发送该流数据处理任务包括的第一程序、第二程序、第三程序和第四程序,以实现在该计算机上部署该流数据处理任务。该计算机可以运行第一程序、第二程序、第三程序或第四程序,以生成关联规则算子、数据源算子、输出算子和关联规则源算子。
可选的,在任务管理主机3接收到第一程序、第二程序和第三程序时,任务管理主机3选择的计算机数目可以为2,这样任务管理主机3向选择的每个计算机发送至少一个程序;该计算机可以接收该至少一个程序,运行该至少一个程序中的每个程序,以生成每个程序对应的算子。在任务管理主机3接收到第一程序、第二程序、第三程序和第四程序时,任务管理主机3选择的计算机数目可以大于1且小于4,这样任务管理主机3向选择的每个计算机发送至少一个程序;该计算机可以接收该至少一个程序,运行该至少一个程序中的每个程序,以生成每个程序对应的算子。
在本申请实施例中,任务管理主机在计算机集群中部署流数据处理任务包括的关联规则算子、数据源算子、关联规则源算子和输出算子。在部署流数据处理任务后,当用户更新属于某个规则类别的关联规则时,例如,在用户为该规则类别增加新的关联规则时,该规则类别对应的关联规则算子根据该新的关联规则生成NFA,将该新的关联规则和生成的NFA保存到第一计算机保存的第一关系表中;在用户修改该规则类别包括的关联规则时,该规则类别对应的关联规则算子根据修改后的关联规则生成NFA,将第一关系表中包括的该关联规则和该关联规则对应的NFA分别更新为修改后的关联规则和生成的NFA;在用户删除该规则类别包括的关联规则时,该规则类别对应的关联规则算子从第一关系表中删除该关联规则和该关联规则对应的NFA。由于关联规则算子具有根据关联规则生成NFA的功能以及更新第一关系表的功能,如此用户在对关联规则进行更新时,不会整体上停止或启动计算机集群中的流数据处理任务,从而提高了计算机集群系统的稳定性和对流数据进行处理的稳定性。另外,由于关联规则源算子从服务器中获取第一关联规则并发送给关联规则算子,这样获取更新后的关联规则的功能从关联规则算子中分离出,由关联规则源算子实现该功能,关联规则算子实现处理流数据的单一功能,以避免中断整个流数据处理任务。以及,关联规则源算子还在服务器中订阅其对应的规则类别,这样服务器在该规则类别对应的存储空间中保存的关联规则发生变时通知关联规则源算子,关联规则源算子只在该存储空间中的关联规则发生变时,才获取该存储空间中的关联规则,可以减小关联规则算子更新第一关系表的次数或频率。
参见图6,本申请实施例提供了一种服务器1,应用于图1、图2或图5所示的由计算机集群实现的流数据的处理系统。服务器1包括处理器11、存储器12和网络接口13。处理器11、存储器12和网络接口13之间可以通过总线14连接,存储器12中存储有操作系统和规则中心代码模块。
存储器12中包括至少一个规则类别中的每个规则类别对应的存储空间,该规则类别对应的存储空间用于存储属于该规则类别的关联规则。
在服务器1启动时,处理器11从存储器12中读取操作系统并运行操作系统,以及从存储器12中读取规则中心代码模块并运行规则中心代码模块。
处理器11运行规则中心代码模块后,处理器11,用于获取待处理关联规则的规则标识和规则类别,以及对待处理关联规则进行操作的操作类型,根据该规则标识,对存储器12中的该规则类别对应的存储空间执行该操作类型对应的处理操作;以及通过网络接口13向该规则类型对应的关联规则算子提供该存储空间中保存的m个第一关联规则。
关联规则算子获取该服务器1提供的该m个第一关联规则,根据该m个第一关联规则,对第一计算机中的该关联规则算子对应的第一关系表进行更新,得到第二关系表,第一关系表用于保存第二关联规则和第二关联规则对应的NFA,第二关系表用于保存每个第一关联规则和每个第一关联规则对应的NFA,第一计算机是该关联规则算子所在的计算机。
用户可以对存储器12中的每个规则类别对应的存储空间保存的关联规则进行变更操作,例如,用户可以为某个规则类别增加新的关联规则,修改某个规则类别包括的关联规则或者删除某个规则类别包括的一个或多个关联规则。待处理关联规则即是用户增加的新的关联规则、修改的关联规则或需要删除的关联规则,操作类别为添加关联规则、删除关联规则和修改关联规则三者其中之一。
可选的,用户通过终端对服务器1中的每个规则类别的关联规则进行变更操作,或者,在服务器1中对每个规则类别的关联规则进行变更操作。
可选的,在用户通过终端对服务器1中的每个规则类别的关联规则进行变更操作的场景中,用户对应的终端向用户显示操作界面。用户在该操作界面中设置操作类型、待处理关联规则的规则标识和规则类别。终端从该操作界面中获取该操作类型、待处理关联规则的规则标识和规则类别,向服务器1发送操作请求消息,该操作请求消息携带该操作类型、待处理关联规则的规则标识和规则类别。
当操作类型为添加关联规则时,该操作请求消息携带该操作类型和待处理关联规则,待处理关联规则包括规则标识、规则内容和规则类别等内容。当操作类型为修改关联规则时,该操作请求消息携带该操作类型和待处理关联规则。当操作类型为删除关联规则时,该操作请求消息携带该操作类型、待处理关联规则的规则标识和规则类别。
可选的,处理器11通过网络接口13接收该操作请求消息,该操作请求消息携带该操作类型、待处理关联规则的规则标识和规则类别,然后根据该规则标识,对存储器12中的该规则类别对应的存储空间执行该操作类型对应的处理操作。
可选的,在用户在服务器1中对每个规则类别的关联规则进行变更操作的场景中,参见图6,服务器还可以包括输入设备15和显示器16,输入设备15和显示器16通过总线14与处理器11、存储器12和网络接口13连接。
处理器11在显示器16中显示操作界面,以使用户通过输入设备15在该操作界面中设置操作类型、待处理关联规则的规则标识和规则类别。在用户设置完用户可以在该操作界面中触发确认命令,处理器11接收该确认命令,从该操作界面中读取该操作类型、待处理关联规则的规则标识和规则类别,然后根据该规则标识,对服务器1中的该规则类别对应的存储空间执行该操作类型对应的处理操作。
可选的,当用户需要添加新的关联规则时,用户在该操作界面中设置的操作类型为添加关联规则,以及设置待处理关联规则,待处理关联规则包括规则标识、规则类别和规则内容。当用户需要修改某个关联规则时,用户在该操作界面中设置的操作类型为修改关联规则,以及设置待处理关联规则,待处理关联规则为修改后的关联规则,待处理关联规则包括规则标识、规则类别和规则内容。当用户需要删除某个关联规则时,用户在该操作界面中设置的操作类型为删除关联规则,以及设置待处理关联规则的规则标识和规则类别。
可选的,在该操作类型为添加关联规则时,该操作请求消息携带该操作类型和待处理关联规则,或者,处理器11从操作界面中读取该操作类型和待处理关联规则,待处理关联规则包括规则内容、规则标识和规则类别,处理器11,用于将待处理关联规则添加到存储器12中的该规则类别对应的存储空间中。
在该操作类型为修改关联规则时,该操作请求消息携带该操作类型和待处理关联规则,或者,处理器11从操作界面中读取该操作类型和待处理关联规则,处理器11,用于在存储器12中的该规则类别对应的存储空间中将包括该规则标识的关联规则更新为待处理关联规则。
在该操作类型为删除关联规则时,该操作请求消息携带该操作类型、待处理关联规则的规则标识和规则类别,或者,处理器11从操作界面中读取该操作类型、待处理关联规则的规则标识和规则类别,处理器11,用于在存储器12中的该规则类别对应的存储空间中删除包括该规则标识的待处理关联规则。
可选的,处理器11还通过网络接口13接收关联规则源算子发送的订阅请求消息,该订阅请求消息携带该关联规则源算子对应的规则类别,从存储器12中获取该规则类别对应的存储空间的地址;通过该网络接口13向该关联规则源算子发送订阅响应消息,该订阅响应消息携带该存储空间的地址。
可选的,处理器11在接收该订阅请求消息后,当该订阅请求消息携带的规则类别对应的存储空间中保存的关联规则发生变化时,通过网络接口13向该规则类别对应的关联规则源算子发送通知消息,该通知消息用于触发该关联规则源算子获取属于该规则类别对应的存储空间中保存的m个第一关联规则并向该规则类别对应的关联规则算子发送该m个第一关联规则,以实现向该规则类别对应的关联规则算子提供该m个第一关联规则。
可选的,存储器12还保存有至少一个流数据处理任务,该流数据处理任务包括第一程序、第一程序对应的第二程序和第三程序。可选的,该流数据处理任务还包括第一程序对应的第四程序。
可选的,处理器11在计算机集群2中的至少一个计算机上部署该流数据处理任务包括的第一程序、第二程序和第三程序,或者部署该流数据处理任务包括的第一程序、第二程序、第三程序和第四程序。
可选的,处理器11通过如下方式在该至少一个计算机上部署流数据处理任务。该方式参见图7。如图7所示,处理器11通过网络接口13向任务管理主机3发送流数据处理任务,即向任务管理主机3发送流数据处理任务包括的关联规则算子对应的第一程序、数据源算子对应的第二程序和输出算子对应的第三程序等内容,或者,向任务管理主机3发送流数据处理任务包括的关联规则算子对应的第一程序、数据源算子对应的第二程序、输出算子对应的第三程序和关联规则源算子对应的第四程序等内容。
任务管理主机3接收该流数据处理任务,根据计算机集群包括的每个计算机的空闲资源量,选择至少一个计算机,可以在该至少一个计算机部署该流数据处理任务。
任务管理主机3如何在计算机集群中部署该流数据处理任务的详细过程,可以参见上述图1所示实例中的相关内容,在此不再详细说明。
可选的,存储器12中保存的流数据处理任务可以是技术人员设置的。技术人员可以在预设的第一程序的模板写入用于处理该流数据处理任务的关联规则属于的规则类别,将写入规则类别的第一程序的模板、预设的第二程序的模板和预设的第三程序的模板输入服务器1。处理器11对输入的第一程序的模板、第二程序的模板和第三程序的模板分别进行编译得到该流数据处理任务包括的第一程序、第二程序和第三程序。
可选的,技术人员在预设的第四程序的模板写入用于处理该流数据处理任务的关联规则属于的规则类别,将写入规则类别的第四程序的模板输入服务器1。处理器11还对输入的第四程序的模板进行编译得到该流数据处理任务包括的第四程序。
在本申请实施例中,服务器中包括规则类别对应的存储空间,该存储空间用于存储属于该规则类别的关联规则。用户可以对该存储空间中的关联规则进行更新,在用户更新后,服务器可以将该存储空间中保存的m个第一关联规则提供给该规则类别对应的关联规则算子,该关联规则算子根据该m个第一关联规则对第一关系表进行更新,得到第二关系表,第二关系表用于保存每个第一关联规则和每个第一关联规则对应的NFA。由于该关联规则算子将第一关系表中保存的关联规则和NFA更新为每个第一关联规则和每个第一关联规则对应的NFA,在实现关联规则更新的过程中不需要整体上停止或重新启动流数据处理任务,从而提高了计算机集群系统的稳定性和对流数据进行处理的稳定性。服务器还向该规则类别对应的关联规则源算子发送通知消息,该通知消息用于触发关联规则源算子获取该存储空间中存储的m个第一关联规则并向该规则类别对应的关联规则算子发送该m个第一关联规则。这样可以使关联规则算子在服务器的通知下获取该存储空间中保存的m个第一关联规则,实现只在该存储空间中的关联规则发生变时,才获取该存储空间中的关联规则,可以减小关联规则算子更新第一关系表的次数或频率。
参见图8,本申请实施例提供了一种计算机21,应用于图1、图2或图5所示的由计算机集群2实现的流数据的处理系统。可选地,该计算机为上述实施例中计算机集群中的第一计算机21,该计算机包括:处理器211、存储器212和网络接口213,处理器211、存储器212和网络接口213之间通过总线214连接,存储器212中存储有操作系统和第一程序。处理器211从存储器212中读取操作系统并运行该操作系统,然后从该存储器212中读取第一程序,运行第一程序生成关联规则算子。参见图1、图2或图5,该计算机集群2还包括第二计算机22和第三计算机23,第二计算机22存储有第一程序对应的第二程序,第三计算机23存储有第一程序对应的第三程序,第二计算机22运行第二程序生成该关联规则算子对应的数据源算子,第三计算机23运行第三程序生成该关联规则算子对应的输出算子。
关联规则算子被处理器211生成后,处理器211运行关联规则算子,使关联规则算子,用于通过网络接口213获取来自于服务器的m个第一关联规则,该m个第一关联规则属于该关联规则算子对应的规则类别,m为大于或等于1的整数;
关联规则算子,还用于根据该m个第一关联规则更新存储器212中保存的该关联规则算子对应的第一关系表,从而得到第二关系表,第一关系表用于保存第二关联规则和第二关联规则对应的NFA,第二关系表用于保存每个第一关联规则和每个第一关联规则对应的NFA;
关联规则算子,还用于通过网络接口213接收该数据源算子发送的流数据,根据第二关系表处理该流数据,向该输出算子发送处理结果。
关联规则算子使用第二关系表中包括NFA处理该流数据,得到处理结果。该NFA对该流数据执行的处理操作包括数据属性条件判断操作。可选的,该处理操作还可以包括临时匹配数据保存操作、计数条件匹配操作和关联条件判断操作中的至少一个。
第二关系表中的每个第一关联规则包括规则标识、规则类别和规则内容等信息。第一关联规则中的规则内容包括至少一个匹配条件,该至少一个匹配条件可以包括流数据中的数据的源地址、目标地址和/或数据类型等信息。
处理器211运行第一程序生成关联规则算子时,处理器211会在存储器212中为该关联规则算子分配存储区域,该关联规则算子对应的第一关系表存储在该存储区域中,该关联规则算子对应的规则类别为第一程序中记录的规则类别。
可选的,第二关系表中的每个第一关联规则包括规则标识、规则类别和规则内容等信息。第一关联规则中的规则内容包括至少一个匹配条件,该至少一个匹配条件可以包括流数据中的数据的源地址、目标地址和/或数据类型等信息。
可选的,参见图1、图2或图5,计算机集群还包括第四计算机24,第四计算机24存储有第一程序对应的第四程序,第四计算机24运行第四程序生成关联规则算子对应的关联规则源算子,关联规则源算子与第四程序中记录的规则类别相对应,也就是关联规则源算子对应的规则类别与关联规则算子对应的规则类别相同。
参见图2,关联规则源算子,用于从服务器1中获取属于该关联规则源算子对应的规则类别的m个第一关联规则,向该关联规则源算子对应的关联规则算子发送该m个第一关联规则。
关联规则算子,用于接收m个第一关联规则,根据该m个第一关联规则更新存储器212中保存的该关联规则算子对应的第一关系表,得到第二关系表。
可选的,关联规则算子可以按如下两种方式更新第一关系表:
方式一:关联规则算子,用于从该m个第一关联规则中选择出一个第一关联规则,并对选择出的第一关联规则执行以下操作,重复执行该选择步骤,直到对该m个第一关联规则中的每个第一关联规则均执行以下操作为止:
将选择出的第一关联规则与第一关系表中的每个第二关联规则进行比较。在比较出第一关系表中的每个第二关联规则的规则标识和选择出的第一关联规则的规则标识不同时,根据选择的第一关联规则生成NFA,将选择出的第一关联规则和生成的NFA保存在第一关系表中。在比较出选择的第一关联规则的规则标识与一个第二关联规则的规则标识相同且选择的第一关联规则的规则内容和该一个第二关联规则的规则内容不同时,根据选择出的第一关联规则生成NFA,在第一关系表中将该一个第二关联规则替换为该选择出的第一关联规则,将该一个第二关联规则对应的NFA替换为生成的NFA。
方式二:从第一关系表包括的第二关联规则中选择出一个第二关联规则,并对选择出的第二关联规则执行以下操作,重复执行该选择步骤,直到对第一关系表包括的每个第二关联规则均执行以下操作为止:
将选择出的第二关联规则与m个第一关联规则进行比较。在比较出每个第一关联规则的规则标识与选择出的第二关联规则的规则标识不同时,可以从第一关系表中删除选择出的第二关联规则和选择出的第二关联规则对应的NFA。
可选的,参见图1、2或5,该处理系统还可以包括任务管理主机3,存储器212中的第一程序可以是服务器1事先部署的。
参见图7,服务器1可以向任务管理主机3发送第一程序,任务管理主机3从计算机集群2中选择第一计算机21,向第一计算机21发送第一程序。处理器211通过网络接口213接收第一程序,将第一程序保存在存储器212中。
在本申请实施例中,在第一计算机中生成关联规则算子后,当用户更新属于某个规则类别的关联规则时,例如,在用户为该规则类别增加新的关联规则时,该关联规则算子根据该新的关联规则生成NFA,将该新的关联规则和生成的NFA保存到第一关系表中;在用户修改该规则类别包括的关联规则时,该关联规则算子根据修改后的关联规则生成NFA,将第一关系表中包括的该关联规则和该关联规则对应的NFA分别更新为修改后的关联规则和生成的NFA;在用户删除该规则类别包括的关联规则时,该关联规则算子从第一关系表中删除该关联规则和该关联规则对应的NFA。如此用户在对关联规则进行更新时,不会整体上停止或启动流数据处理任务,从而提高了计算机集群系统的稳定性和对流数据进行处理的稳定性。另外,由于关联规则算子只需要接收关联规则源算子从服务器中获取的第一关联规则,这样获取更新后的关联规则的功能从关联规则算子中分离出,由关联规则源算子实现该功能,关联规则算子实现处理流数据的单一功能,以避免中断整个流数据处理任务。
参见图9,本申请实施例提供了一种计算机22,应用于图1、图2或图5所示的由计算机集群2实现的流数据的处理系统。可选的,该计算机22为计算机集群中的第二计算机22,该计算机22包括:处理器221、存储器222和网络接口223,处理器221、存储器222和网络接口223之间通过总线224连接,存储器222中存储有操作系统和第二程序。处理器221从存储器222中读取操作系统并运行该操作系统,然后从该存储器222中读取第二程序,运行第二程序生成数据源算子。参见图1、图2或图5,该计算机集群2还包括第一计算机21和第三计算机23,第一计算机21存储有第一程序,第二计算机22存储的第二程序与第一计算机21存储的第一程序相对应,第三计算机23存储有第一程序对应的第三程序,第一计算机21运行第二程序生成关联规则算子,处理器221生成的数据源算子与第一计算机21生成的关联规则算子相对应,第三计算机23运行第三程序生成该关联规则算子对应的输出算子。
数据源算子被处理器221生成后,处理器221通过网络接口223与至少一个数据源建立网络连接,处理器221运行数据源算子,使数据源算子,用于通过网络接口223接收至少一个数据源中的每个数据源发送的数据,向关联规则算子发送流数据,该流数据包括接收的每个数据源发送的数据。
其中,关联规则算子接收该流数据,并对该流数据进行处理,向输出算子发送处理结果。
可选的,参见图1、2或5,该处理系统还包括服务器1和任务管理主机3,存储器222中的第二程序是服务器1事先部署的。
参见图7,服务器1向任务管理主机3发送第二程序,任务管理主机3从计算机集群2中选择第二计算机22,向第二计算机22发送第二程序。处理器221通过网络接口223接收第二程序,将第二程序保存在存储器222中。
参见图10,本申请实施例提供了一种计算机23,应用于图1、图2或图5所示的由计算机集群2实现的流数据的处理系统。可选的,该计算机23为计算机集群中的第三计算机23,该计算机23包括:处理器231、存储器232和网络接口233,处理器231、存储器232和网络接口233之间通过总线234连接,存储器232中存储有操作系统和第三程序。处理器231从存储器232中读取操作系统并运行该操作系统,然后从该存储器232中读取第三程序,运行第三程序生成数据源算子。参见图1、图2或图5,该计算机集群2还包括第一计算机21和第二计算机22,第一计算机21存储有第一程序,第二计算机22存储有第一程序对应的第二程序,第三计算机23存储的第三程序与第一计算机21存储的第一程序相对应,第一计算机21运行第二程序生成关联规则算子,第二计算机22运行第二程序生成该关联规则算子对应的数据源算子,处理器231生成的输出算子与第一计算机21生成的关联规则算子相对应。
输出算子被处理器231生成后,处理器221运行输出算子,使输出算子,用于通过网络接口233接收关联规则算子对流数据进行处理得到的处理结果,保存该处理结果。
可选的,存储器232中包括存储文件,输出算子可以将该处理结果保存在该存储文件中。或者,输出算子通过网络接口233将该处理结果保存在存储设备中。
可选的,参见图1、2或5,该处理系统还包括服务器1和任务管理主机3,存储器232中的第三程序是服务器1事先部署的。
参见图7,服务器1向任务管理主机3发送第三程序,任务管理主机3从计算机集群2中选择第三计算机23,向第三计算机23发送第三程序。处理器231通过网络接口233接收第三程序,将第三程序保存在存储器232中。
参见图11,本申请实施例提供了一种计算机24,应用于图1、图2或图5所示的由计算机集群2实现的流数据的处理系统。可选的,该计算机24为计算机集群中的第四计算机24,该计算机24包括:处理器241、存储器242和网络接口243,处理器241、存储器242和网络接口243之间通过总线244连接,存储器242中存储有操作系统和第四程序。处理器241从存储器242中读取操作系统并运行该操作系统,然后从该存储器242中读取第四程序,运行第四程序生成关联规则源算子。参见图1、图2或图5,该计算机集群2还包括第一计算机21、第二计算机22和第三计算机23,第一计算机21存储有第一程序,第二计算机22存储有第一程序对应的第二程序,第三计算机23存储有第一程序对应的第三程序,存储器242存储的第四程序与第一计算机21存储的第一程序相对应,第一计算机21运行第一程序生成关联规则算子,第二计算机22运行第二程序生成该关联规则算子对应的数据源算子,第三计算机23运行第三程序生成该关联规则算子对应的输出算子,处理器241生成的关联规则源算子与第一计算机21生成的关联规则算子相对应。
关联规则源算子被处理器241生成后,处理器221运行关联规则源算子,使关联规则算子,用于获取服务器中的存储空间的地址,该存储空间用于存储属于关联规则源算子对应的规则类别的关联规则;
关联规则源算子,还用于根据该存储空间的地址获取该存储空间中保存的m个第一关联规则,m为大于或等于1的整数;
关联规则源算子,还用于向关联规则算子发送该m个第一关联规则,该m个第一关联规则用于关联规则算子处理来自该数据源算子发送的流数据并向输出算子发送处理结果。
处理器241生成关联规则源算子后,关联规则源算子,还通过网络接口243向服务器发送订阅请求消息,该订阅请求消息携带该关联规则源算子对应的规则类别,接收服务器发送的订阅响应消息,该订阅响应消息携带该规则类别对应的存储空间的地址。
其中,服务器接收该订阅请求消息,获取用于存储属于该规则类别的关联规则的存储空间的地址,向该关联规则源算子发送订阅响应消息,该订阅响应消息携带该规则类别对应的存储空间的地址。
可选的,该关联规则源算子从服务器中获取m个第一关联规则的方式有多种。在此列举了如下两种方式,对于其他的实现方式在此不再一一列举。该两种方式分别为:
第一种方式,关联规则源算子,用于通过网络接口243周期性地根据该存储区域的地址,获取服务器中的该存储区域中保存的m个第一关联规则。
第二种方式,服务器1在该存储区域中保存的关联规则发生变化时,向关联规则源算子发送通知消息;关联规则源算子,用于通过网络接口243接收该通知消息,在该通知消息的触发下,根据该存储空间的地址,获取服务器1中的该存储区域中保存的m个第一关联规则。
可选的,参见图5,该处理系统还包括服务器1和任务管理主机3,存储器232中的第三程序是服务器1事先部署的。
参见图7,服务器1向任务管理主机3发送第四程序,任务管理主机3从计算机集群2中选择第四计算机24,向第四计算机24发送第四程序。处理器241通过网络接口243接收第四程序,将第四程序保存在存储器242中。
在本申请实施例中,在第四计算机中生成关联规则源算子后,从服务器中获取属于该关联规则源算子对应规则类别的m个第一关联规则,向该关联规则源算子对应的关联规则算子发送该m个第一关联规则,使该关联规则算子根据该m个第一关联规则处理流数据。该m个第一关联规则可以是用户更新后的关联规则,这样用户在对关联规则进行更新时,不会整体上停止或启动流数据处理任务,从而提高了计算机集群系统的稳定性和对流数据进行处理的稳定性。另外,由于关联规则源算子从服务器中获取第一关联规则并发送给关联规则算子,这样获取更新后的关联规则的功能从关联规则算子中分离出,由关联规则源算子实现该功能,关联规则算子实现处理流数据的单一功能,以避免中断整个流数据处理任务。以及,关联规则源算子还在服务器中订阅其对应的规则类别,这样服务器在该规则类别对应的存储空间中保存的关联规则发生变时通知关联规则源算子,关联规则源算子只在该存储空间中的关联规则发生变时,才获取该存储空间中的关联规则,可以减小关联规则算子更新第一关系表的次数或频率。
参见图12,本申请实施例提供了一种任务管理主机3,应用于图5所示的由计算机集群2实现的流数据的处理系统。该任务管理主机3包括:处理器31、存储器32和网络接口33,处理器31、存储器32和网络接口33之间通过总线34连接,存储器22中存储有操作系统和任务管理代码模块。
在任务管理主机3启动时,处理器31从存储器32中读取操作系统并运行操作系统,以及从存储器32中读取任务管理代码模块并运行任务管理代码模块。
该处理系统还包括服务器1,服务器1中包括至少一个流数据处理任务,该流数据处理任务包括第一程序、第一程序对应的第二程序和第三程序。可选的,该流数据处理任务还包括第一程序对应的第四程序。
参见图7,服务器1在计算机集群2中部署流数据处理任务时,向任务管理主机3发送该流数据处理任务包括的第一程序、第二程序和第三程序,或者,向任务管理主机3发送该流数据处理任务包括的第一程序、第二程序、第三程序和第四程序。
处理器31运行规则中心代码模块后,处理器31,用于通过该网络接口33接收该流数据处理任务,根据计算机集群2包括的每个计算机的空闲资源量,选择至少一个计算机,在该至少一个计算机部署该流数据处理任务。
可选的,处理器31选择三个不同的计算机。为了便于说明,该三个计算机分别为称为第一计算机21、第二计算机22和第三计算机23。处理器31通过网络接口33向第一计算机21发送关联规则算子对应的第一程序,向第二计算机22发送数据源算子对应的第二程序,向第三计算机23发送输出算子对应的第三程序,以实现在第一计算机21、第二计算机22和第三计算机23上部署该流数据处理任务。或者,
可选的,处理器31选择四个不同的计算机。为了便于说明,该四个计算机分别为称为第一计算机21、第二计算机22、第三计算机23和第四计算机24。处理器31通过网络接口33向第一计算机21发送关联规则算子对应的第一程序,向第二计算机22发送数据源算子对应的第二程序,向第三计算机23发送输出算子对应的第三程序,以及向第四计算机24发送关联规则源算子对应的第四程序,以实现在第一计算机21、第二计算机22、第三计算机23和第四计算机24上部署该流数据处理任务。
可选的,处理器31选择一个计算机,通过网络接口33向该计算机发送该流数据处理任务包括的第一程序、第二程序和第三程序,以实现在该计算机上部署该流数据处理任务;或者,通过网络接口33向该计算机发送该流数据处理任务包括的第一程序、第二程序、第三程序和第四程序,以实现在该计算机上部署该流数据处理任务。
可选的,在处理器31接收到第一程序、第二程序和第三程序时,处理器31选择的计算机数目可以为2,这样处理器31通过网络接口33向选择的每个计算机发送至少一个程序;该计算机接收该至少一个程序,运行该至少一个程序中的每个程序,以生成每个程序对应的算子。在处理器31接收到第一程序、第二程序、第三程序和第四程序时,处理器31选择的计算机数目可以大于1且小于4,这样处理器31通过网络接口33向选择的每个计算机发送至少一个程序;该计算机接收该至少一个程序,运行该至少一个程序中的每个程序,以生成每个程序对应的算子。
处理器31实时获取计算机集群2中的每个计算机包括的空闲资源量并保存在存储器32中。可选的,处理器31通过网络接口33周期性的主动查询计算机集群2中的每个计算机包括的空闲资源量;或者,计算机集群2中的每个计算机在其包括的空闲资源发生变化时向任务管理主机3发送其包括的空闲资源量,处理器31通过网络接口33接收该计算机发送的空闲资源量。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (11)
1.一种计算机,应用于由计算机集群实现的流数据的处理系统,其特征在于,所述计算机为所述计算机集群中的第一计算机,所述计算机集群还包括第二计算机和第三计算机,所述第一计算机存储有第一程序,所述第二计算机存储有所述第一程序对应的第二程序,所述第三计算机存储有所述第一程序对应的第三程序,所述第一计算机运行所述第一程序生成关联规则算子,所述第二计算机运行所述第二程序生成所述关联规则算子对应的数据源算子,所述第三计算机运行所述第三程序生成所述关联规则算子对应的输出算子;
所述关联规则算子,用于获取来自于服务器的m个第一关联规则,所述m个第一关联规则属于所述关联规则算子对应的规则类别,m为大于或等于1的整数;
所述关联规则算子,还用于根据所述m个第一关联规则更新所述第一计算机中保存的所述关联规则算子对应的第一关系表,从而得到第二关系表,所述第一关系表用于保存第二关联规则和所述第二关联规则对应的非确定性有限状态自动机NFA,所述第二关系表用于保存每个第一关联规则和所述每个第一关联规则对应的NFA;
所述关联规则算子,还用于接收所述数据源算子发送的流数据,根据所述第二关系表处理所述流数据,向所述输出算子发送处理结果。
2.如权利要求1所述的计算机,其特征在于,所述计算机集群还包括第四计算机,所述第四计算机存储有所述第一程序对应的第四程序,所述第四计算机运行所述第四程序生成所述关联规则算子对应的关联规则源算子;
所述关联规则算子,用于接收所述关联规则源算子发送的m个第一关联规则,其中所述关联规则源算子用于从所述服务器中获取属于所述规则类别的m个第一关联规则。
3.如权利要求1或2所述的计算机,其特征在于,所述关联规则算子,用于:
从所述m个第一关联规则中选择出一个第一关联规则,并对选择出的第一关联规则执行以下操作,重复执行该选择步骤,直到对所述m个第一关联规则中的每个第一关联规则均执行以下操作为止:
如果所述选择出的第一关联规则的规则标识与所述第一关系表中的每个第二关联规则的规则标识均不同,则根据所述选择出的第一目标关联规则生成NFA,将所述选择出的第一关联规则和所述生成的NFA保存在所述第一关系表中;
如果所述选择出的第一关联规则的规则标识与所述第一关系表中的一个第二关联规则的规则标识相同、且所述选择出的第一关联规则的规则内容和所述第二关联规则的规则内容不同,则根据所述选择出的第一关联规则生成NFA,在所述第一关系表中将所述第二关联规则替换为所述选择出的第一关联规则,以及将所述第二关联规则对应的NFA替换为所述生成的NFA。
4.如权利要求1至3任一项所述的计算机,其特征在于,所述关联规则算子,还用于:
从所述第一关系表包括的第二关联规则中选择出一个第二关联规则,并对选择出的第二关联规则执行以下操作,重复执行该选择步骤,直到对所述第一关系表包括的每个第二关联规则均执行以下操作为止:
在所述m个第一关联规则中的每个第一关联规则的规则标识与所述选择出的第二关联规则的规则标识均不同时,从所述第一关系表中删除所述选择出的第二关联规则和所述选择出的第二关联规则对应的NFA。
5.一种计算机,应用于由计算机集群实现的流数据的处理系统,其特征在于,所述计算机为所述计算机集群中的第四计算机,所述计算机集群还包括第一计算机、第二计算机和第三计算机,所述第一计算机存储有第一程序,所述第二计算机存储有所述第一程序对应的第二程序,所述第三计算机存储有所述第一程序对应的第三程序,所述第四计算机存储有所述第一程序对应的第四程序,所述第一计算机运行所述第一程序生成关联规则算子,所述第二计算机运行所述第二程序生成所述关联规则算子对应的数据源算子,所述第三计算机运行所述第三程序生成所述关联规则算子对应的输出算子,所述第四计算机运行所述第四程序生成所述关联规则算子对应的关联规则源算子;
所述关联规则源算子,用于获取服务器中的存储空间的地址,所述存储空间用于存储属于所述关联规则源算子对应的规则类别的关联规则;
所述关联规则源算子,还用于根据所述存储空间的地址获取所述存储空间中保存的m个第一关联规则,m为大于或等于1的整数;
所述关联规则源算子,还用于向所述关联规则算子发送所述m个第一关联规则,所述m个第一关联规则用于所述关联规则算子处理来自所述数据源算子发送的流数据并向所述输出算子发送处理结果。
6.如权利要求5所述的计算机,其特征在于,所述关联规则源算子,用于:
向所述服务器发送订阅请求消息,所述订阅请求消息携带所述关联规则源算子对应的规则类别,所述订阅请求消息用于触发所述服务器获取用于存储属于所述规则类别的关联规则的存储空间的地址;
接收所述服务器发送的订阅响应消息,所述订阅响应消息携带所述存储空间的地址。
7.如权利要求5或6所述的计算机,其特征在于,所述关联规则源算子,用于:
接收来自所述服务器的通知消息;
在所述通知消息的触发下,根据所述存储空间的地址获取所述存储空间中保存的m个第一关联规则。
8.一种服务器,应用于由计算机集群和所述服务器实现的流数据的处理系统,其特征在于,所述计算机集群包括第一计算机、第二计算机和第三计算机,所述第一计算机存储有第一程序,所述第二计算机存储有所述第一程序对应的第二程序,所述第三计算机存储有所述第一程序对应的第三程序,所述第一计算机运行所述第一程序生成关联规则算子,所述第二计算机运行所述第二程序生成所述关联规则算子对应的数据源算子,所述第三计算机运行所述第三程序生成所述关联规则算子对应的输出算子;
所述服务器,用于获取待处理关联规则的规则标识和规则类别,以及对所述待处理关联规则进行操作的操作类型,所述操作类型包括添加关联规则、删除关联规则、或修改关联规则三者其中之一;
所述服务器,还用于根据所述规则标识,对所述服务器中的所述规则类别对应的存储空间执行所述操作类型对应的处理操作,所述存储空间用于存储属于所述规则类别的关联规则;
所述服务器,还用于向所述规则类别对应的关联规则算子提供所述存储空间中存储的m个第一关联规则,m为大于或等于1的整数,所述m个第一关联规则用于所述关联规则算子处理来自所述数据源算子发送的流数据并向所述输出算子发送处理结果。
9.如权利要求8所述的服务器,其特征在于,所述服务器,用于:
获取待处理关联规则和对所述待处理关联规则进行操作的操作类型,所述待处理关联规则包括所述待处理关联规则的规则内容、所述规则标识和所述规则类别,在所述操作类型为添加关联规则时,将所述待处理关联规则添加到所述规则类别对应的存储空间中;在所述操作类型为修改关联规则时,在所述规则类别对应的存储空间中将包括所述规则标识的关联规则更新为所述待处理关联规则;或者,
获取待处理关联规则的规则标识和规则类别,以及对所述待处理关联规则进行操作的操作类型,所述操作类型为删除关联规则,在所述规则类别对应的存储空间中将包括所述规则标识的待处理关联规则删除。
10.如权利要求8或9所述的服务器,其特征在于,所述计算机集群还包括第四计算机,所述第四计算机存储有所述第一程序对应的第四程序,所述第四计算机运行所述第四程序生成所述关联规则算子对应的关联规则源算子;
所述服务器,用于向所述规则类别对应的关联规则源算子发送通知消息,所述通知消息用于触发所述关联规则源算子获取所述存储空间中存储的m个第一关联规则并向所述规则类别对应的关联规则算子发送所述m个第一关联规则。
11.如权利要求10所述的服务器,其特征在于,所述服务器,还用于:
接收所述关联规则源算子发送的订阅请求消息,所述订阅请求消息携带所述规则类别;
向所述关联规则源算子发送订阅响应消息,所述订阅响应消息携带所述规则类别对应的存储空间的地址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910136897.3A CN111611447B (zh) | 2019-02-25 | 2019-02-25 | 一种计算机及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910136897.3A CN111611447B (zh) | 2019-02-25 | 2019-02-25 | 一种计算机及服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111611447A CN111611447A (zh) | 2020-09-01 |
CN111611447B true CN111611447B (zh) | 2022-07-22 |
Family
ID=72199960
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910136897.3A Active CN111611447B (zh) | 2019-02-25 | 2019-02-25 | 一种计算机及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111611447B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104216766A (zh) * | 2014-08-26 | 2014-12-17 | 华为技术有限公司 | 对流数据进行处理的方法及装置 |
CN104572182A (zh) * | 2014-12-23 | 2015-04-29 | 杭州华为数字技术有限公司 | 一种流应用的配置方法、节点及流计算系统 |
CN104994219A (zh) * | 2015-05-18 | 2015-10-21 | 北京奇虎科技有限公司 | 一种数据处理方法和系统 |
CN107451151A (zh) * | 2016-05-31 | 2017-12-08 | 北京京东尚科信息技术有限公司 | 基于分布式数据源的数据集中系统和方法 |
EP3441895A1 (en) * | 2017-08-08 | 2019-02-13 | Palantir Technologies Inc. | Processing streaming data in a transaction-based distributed database system |
CN109345377A (zh) * | 2018-09-28 | 2019-02-15 | 北京九章云极科技有限公司 | 一种数据实时处理系统及数据实时处理方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9514159B2 (en) * | 2010-10-27 | 2016-12-06 | International Business Machines Corporation | Database insertions in a stream database environment |
US9773040B2 (en) * | 2015-05-04 | 2017-09-26 | Alan Weisman | Search token mnemonic replacement |
US10792565B2 (en) * | 2016-10-25 | 2020-10-06 | King.Com Ltd. | Computer server, a method and computer program product |
-
2019
- 2019-02-25 CN CN201910136897.3A patent/CN111611447B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104216766A (zh) * | 2014-08-26 | 2014-12-17 | 华为技术有限公司 | 对流数据进行处理的方法及装置 |
CN104572182A (zh) * | 2014-12-23 | 2015-04-29 | 杭州华为数字技术有限公司 | 一种流应用的配置方法、节点及流计算系统 |
CN104994219A (zh) * | 2015-05-18 | 2015-10-21 | 北京奇虎科技有限公司 | 一种数据处理方法和系统 |
CN107451151A (zh) * | 2016-05-31 | 2017-12-08 | 北京京东尚科信息技术有限公司 | 基于分布式数据源的数据集中系统和方法 |
EP3441895A1 (en) * | 2017-08-08 | 2019-02-13 | Palantir Technologies Inc. | Processing streaming data in a transaction-based distributed database system |
CN109345377A (zh) * | 2018-09-28 | 2019-02-15 | 北京九章云极科技有限公司 | 一种数据实时处理系统及数据实时处理方法 |
Non-Patent Citations (1)
Title |
---|
一种基于算子的可扩展复杂事件处理模型;孟由等;《软件学报》;20141130;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111611447A (zh) | 2020-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108572845B (zh) | 分布式微服务集群的升级方法及相关系统 | |
CN106953746A (zh) | 集群节点升级系统及方法 | |
CN110719187B (zh) | 配置管理方法、系统及计算机可读存储介质 | |
CN111930770A (zh) | 数据查询方法、装置及电子设备 | |
CN109492181B (zh) | 页面跳转方法、装置、计算机设备和存储介质 | |
CN112463290A (zh) | 动态调整计算容器的数量的方法、系统、装置和存储介质 | |
CN107391622B (zh) | 一种数据访问方法及设备 | |
CN112765166A (zh) | 数据处理方法、装置及计算机可读存储介质 | |
CN112631686A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN111831191A (zh) | 工作流配置方法、装置、计算机设备和存储介质 | |
CN111026530A (zh) | 一种任务调度方法、装置、计算机设备和存储介质 | |
CN112685091A (zh) | 基于大数据的业务请求处理方法、装置、设备和介质 | |
CN114020840A (zh) | 一种数据处理方法、装置、服务器、存储介质及产品 | |
CN111666265B (zh) | 一种数据管理方法、装置、服务器及存储介质 | |
CN111736982B (zh) | 一种5g数据转发平面的数据转发处理方法和服务器 | |
US10769153B2 (en) | Computer system and method for setting a stream data processing system | |
US10491674B2 (en) | Network topology templates for internal states of management and control planes | |
CN107729421B (zh) | 存储过程的执行方法、装置及存储介质 | |
CN108536541B (zh) | 流程引擎对象处理方法及装置 | |
CN113051271A (zh) | 一种冷热数据分离方法、装置及其设备 | |
CN111611447B (zh) | 一种计算机及服务器 | |
CN112230978A (zh) | 一种多数据源动态切换方法、电子设备及存储介质 | |
CN110045983B (zh) | 版本库管理方法、装置及服务器 | |
CN111767126A (zh) | 分布式批量处理的系统和方法 | |
CN113439418A (zh) | 更改资源状态的方法、系统、终端及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |