CN106681781B - 实时计算业务的实现方法和系统 - Google Patents
实时计算业务的实现方法和系统 Download PDFInfo
- Publication number
- CN106681781B CN106681781B CN201510746960.7A CN201510746960A CN106681781B CN 106681781 B CN106681781 B CN 106681781B CN 201510746960 A CN201510746960 A CN 201510746960A CN 106681781 B CN106681781 B CN 106681781B
- Authority
- CN
- China
- Prior art keywords
- real
- service
- component
- time
- time computing
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/447—Target code generation
Abstract
本发明提供了一种实时计算业务的实现方法,所述方法包括:调用Pig Latin脚本编译所得到的业务组件;将所述调用的业务组件提交至计算执行引擎;通过所述计算执行引擎运行所述业务组件,以通过所述业务组件的运行对数据流执行实时计算业务,得到相应的实时计算结果。此外,还提供了一种与该方法相匹配的实时计算业务的实现系统。上述实时计算业务的实现方法和系统能够在进行跨框架支持时有效节约时间成本,且降低开发成本。
Description
技术领域
本发明涉及计算机应用技术领域,特别涉及一种实时计算业务的实现方法和系统。
背景技术
随着互联网应用的发展,大数据场景越来越多,随之存在着各种实时计算业务,即通过对互联网中存在的数据流进行实时计算得到所需的实时计算结果。
现有的实时计算业务的实现中,所有实际操作流程均建立在预置的一个丰富的模板库。该模板库是基于现有的特定流式计算框架的,对跨框架的支持非常薄弱,在实际业务运行期间如需要切换计算框架,即变换计算执行引擎,将需要对整个模板库进行重写,并对相应的模板配置页面进行重新编码,需要投入昂贵的成本,也会对实时计算业务的开发相应带来延期影响,并无法有效节约时间成本和降低开发成本。
发明内容
基于此,有必要提供一种实时计算业务的实现方法,该方法能够在进行跨框架支持时有效节约时间成本,且降低开发成本。
此外,还有必要提供一种实时计算业务的实现系统,该系统能够在进行跨框架支持时有效节约时间成本,且降低开发成本。
为解决上述技术问题,将采用如下技术方案:
一种实时计算业务的实现方法,包括:
调用Pig Latin脚本编译所得到的业务组件;
将所述调用的业务组件提交至计算执行引擎;
通过所述计算执行引擎运行所述业务组件,以通过所述业务组件的运行对数据流执行实时计算业务,得到相应的实时计算结果。
一种实时计算业务的实现系统,包括:
组件调用模块,用于调用Pig Latin脚本编译所得到的业务组件;
提交模块,用于将所述调用的业务组件提交至计算执行引擎;
计算执行引擎,用于运行所述业务组件,以通过所述业务组件的运行对数据流执行实时计算业务,得到相应的实时计算结果。
由上述技术方案可知,为实现实时计算业务,将调用相应的业务组件,该业务组件是由Pig Latin脚本编译所得到的,将调用的业务组件提交至计算执行引擎,以通过计算执行引擎运行业务组件,在业务组件的运行下对数据流执行实时计算业务,得到相应的实时计算结果,由于该业务组件是由Pig Latin脚本编译所得到,其封装了与实时计算业务逻辑相关的操作,并且在编译之后依托Java的跨平台性可轻易适配不同的计算执行引擎,因此在进行跨框架支持时有效节约时间成本,且降低开发成本。
附图说明
图1是本发明实施例提供的一种集群设备的结构示意图;
图2是一个实施例中实时计算业务的实现方法的流程图;
图3是另一个实施例中实时计算业务的实现方法的流程图;
图4是图3中编译Pit Latin脚本得到实时计算业务所对应的业务组件的方法流程图;
图5是图2中通过计算执行引擎运行业务组件,以通过业务组件的运行对数据流执行实时计算业务,得到相应的实时计算结果的方法流程图;
图6是一个实施例中实时计算业务的实现系统的结构示意图;
图7是另一个实施例中实时计算业务的实现系统的结构示意图;
图8是图7中编译模块的结构示意图;
图9是图6中计算执行引擎的结构示意图。
具体实施方式
体现本发明特征与优点的典型实施方式将在以下的说明中详细叙述。应理解的是本发明能够在不同的实施方式上具有各种的变化,其皆不脱离本发明的范围,且其中的说明及图示在本质上是当作说明之用,而非用以限制本发明。
如前所述,集群设备中,根据各种实时计算业务逻辑对数据流执行实时计算业务。其中,为实现实时计算业务,现在大都是需要预先编写模板,由编写的模板组成模板库。在实际需要执行实时计算业务时,从模板库中选取相应模板,通过对模板属性的配置达到开发定制数据流的实时计算的目的。
然而,该模板的编译主要是使用Java语言进行开发,因此,需要编写大量的Java代码,包括相当一部分与实时计算业务本身无关的代码,从而使得现有实时计算业务的实现难以实现跨框架支持,或者说,现有实时计算业务中跨框架支持的实现需要耗费高昂的时间成本和开发成本。
对此,为便于实时计算业务的跨框架支持,以使实时计算业务可适用于各种计算执行引擎,特提出了一种实时计算业务的实现方法,该方法由计算机程序实现,与之相对应的,所构建的实时计算业务的实现系统则被存储于集群设备中,以在该集群设备中运行,进而对流入的数据流执行实时计算业务。
图1是本发明实施例提供的一种集群设备的结构示意图。该集群设备100可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessing units,CPU)110(例如,一个或一个以上处理器)和存储器120,一个或一个以上存储应用程序131或数据133的存储介质130(例如一个或一个以上海量存储设备)。其中,存储器120和存储介质130可以是短暂存储或持久存储。存储在存储介质130的程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器110可以设置为与存储介质130通信,在服务器100上执行存储介质130中的一系列指令操作。服务器100还可以包括一个或一个以上电源150,一个或一个以上有线或无线网络接口170,一个或一个以上输入输出接口180,和/或,一个或一个以上操作系统135,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。下述所示实施例中执行的步骤可以基于该图1所示的集群设备结构。
如上面所详细描述的,适配本发明的集群设备100将执行实时计算业务的指定操作,即通过中央处理器110运行存储器120中的程序指令,以执行实时计算业务的指定操作,进而实现集群设备100中的实时计算业务。
此外,通过硬件电路或者硬件电路结合软件指令也能同样实现本发明,因此,实现本发明并不限于任何特定硬件电路、软件以及两者的组合。
在一个实施例中,具体的,该实时计算业务的实现方法如图2所示,包括:
步骤210,调用Pig Latin脚本编译所得到的业务组件。
Pig Latin脚本是基于脚本语言Pig Latin编写得到的脚本,其与相应的实时计算业务逻辑相对应。也就是说,通过Pig Latin脚本,将实时计算业务逻辑所对应的操作全部封装在该Pig Latin脚本所编译得到的业务组件中,因此,对于任一实时计算业务的实现,开发者只需要关注于该实时计算业务所涉及的操作进行编码而得到Pig Latin脚本即可,而不需要关注与实时计算业务本身无关的操作,进而极大的降低了开发成本,提高开发效率。
步骤230,将调用的业务组件提交至计算执行引擎。
计算执行引擎是基于一定的流式计算框架搭建的程序组件。其中,该流式计算框架可以是Apache Storm实时计算框架、InfoSphere Stream框架等。该计算执行引擎用于对实时计算业务实现中各种与实时计算业务逻辑无关的操作进行抽象、封装,进而达到屏蔽计算层面的细节的目的,这也就使得由Pig Latin脚本编译的业务组件可不必关注于底层的操作,只需要实现实时计算业务本身的逻辑即可,二者相分离,将大为提高了鲁棒性。
通过计算执行引擎的实现,使得由Pig Latin脚本所编译的业务组件与计算框架本身无关,从而使得实时计算业务的实现可适用于任一计算框架,对于实时计算业务中跨框架的实现而言,不再需要耗费较高的时间成本和开发成本,提高了实时计算业务实现的通用性。
步骤250,通过计算执行引擎运行业务组件,以通过业务组件的运行对数据流执行实时计算业务,得到相应的实时计算结果。
提交至计算执行引擎的业务组件,将由该计算执行引擎直接运行。此时,计算执行引擎中,数据流持续不断地流入,运行的业务组件将对此进行实时计算,以便于输出相应的实时计算结果。
该数据流是指互联网环境中存在并且不断产生的数据。例如,该数据流可以是某一门户网站中不断产生的点击流、电子商务平台中任意用户所进行的虚拟物品的点击、搜索等数据、各种用户行为数据等,进而由该数据流进行实时计算即可实现统计以及推荐等应用。
因此,与之相对应的,该实时计算结果是与数据流以及对该数据流所进行的实时计算相对应的,其可为门户网站中点击流的统计结果,也可以是电子商务平台或者其它应用中根据用户行为所得到的虚拟物品、其它网络信息的推荐结果等,在此不一一进行列举。
计算执行引擎中实时计算业务的实现即为互联网络中该实时计算业务所对应的应用的实现,例如,某一统计应用的实现和推荐应用的实现,进而基于Pig Latin脚本和计算执行引擎,将为互联网中各种大数据的应用提供了实现的简易性和方便性。
通过如上所述的Pig Latin脚本和计算执行引擎的配合,将实时计算业务分离出来,即Pig Latin脚本仅实时计算业务逻辑相关,计算执行引擎则封装了所有的底层执行,从而使得Pig Latin脚本可在各计算执行引擎之间无缝切换,并且切换成本极低,并借此实现Pig Latin脚本的复用。
进一步的,由于通过Pig Latin脚本,将实时计算业务逻辑所对应的操作全部封装在该Pig Latin脚本所编译得到的业务组件中,故实时计算业务是由Pig Latin脚本实现的,因此,对于开发者而言,将极大地降低了开发的成本,提升开发效率,缩短交付时间,进而使得实时计算业务的开发得以从复杂繁琐的Java开发中解放出来。
在一个实施例中,该步骤210之前,如图3所示,如上所述的方法还包括:
步骤310,获取与实时计算业务相符的Pig Latin脚本。
根据当前所需要执行的实时计算业务,获取相应的Pig Latin脚本,以便于通过相应的Pig Latin脚本的编译而得到实现实时计算业务的业务组件。
步骤330,编译Pig Latin脚本得到实时计算业务所对应的业务组件。
对获取得到的Pig Latin脚本进行编译,以便于得到可直接在计算执行引擎上执行的业务组件。其中,该业务组件可以是jar包的形式。即,通过编译Pig Latin脚本,将PigLatin脚本转换成Java程序。
进一步的,在本实施例中,该步骤310的具体过程为:将编辑器中的编辑内容导出,以得到按照实时计算业务逻辑编写的Pig Latin脚本。
该编辑器对于开发者而言,是一可视化的编程环境,开发者可在编辑器中根据实时的实时计算业务需求进行相关内容的编辑,进而将编辑内容导出便得到Pig Latin脚本。
由此可知,通过Pig Latin脚本,将有效简化了实时计算业务的实现难度,可轻易将构思好的实时计算业务逻辑转换为可运行的应用程序,例如Java程序。
进一步的,在本实施例中,如图4所示,该步骤330包括:
步骤331,解析获取的Pig Latin脚本生成抽象语法树。
由解析器读取Pig Latin脚本中的源代码,以将Pig Latin脚本中的源代码进行识别和转换,进而生成抽象语法树。其中,该识别包括了文法和语法识别。
例如,Pig Latin脚本中,将以QUERY和STATEMENT两个关键字作为节点进行组织,以形成抽象语法树,其中,该解析过程可通过开源的编程语言识别和处理工具Antlr完成。
步骤333,转换抽象语法树为逻辑执行计划。
抽象语法树中,根据抽象语法树中包含的语句,得到对应的代码描述信息,该代码描述信息便形成了逻辑执行计划。其中,抽象语法树为一树形结构,而逻辑执行计划则是由抽象语法树转换得到的多条代码描述信息构成。
抽象语法树中,一语句包括了数据输入和输出的关联关系、UDF函数名称、函数的输出参数、数据类型等信息;抽象语法树是纯文本描述,而代码描述信息则是对将要执行的代码所进行的描述,但也还未到真正执行的代码。
具体的,抽象语法树中,每一语句均存在着输入和输出的关联关系,即RWA_DATA关系,其中,RWA为输入,DATA为输出。在抽象语法数据中设置了若干个节点,以便于通过该节点实现抽象语法树的转换。该节点可为RWA_DATA关系或者DATA所在的位置,在转换过程中,通过该节点即可得到每一条语句所对应的代码描述信息。该代码描述信息包括Logical操作的类名、参数名称和参数数据类型。
在优选的实施例中,与抽象语法树的树型结构相对应的,逻辑执行计划被转换为一个根据关联关系生成的DAG图(有向无环图)。
步骤335,将逻辑执行计划编译为实时计算业务所对应的业务组件。
业务组件作为计算执行引擎中运行的实时应用,其在运行中将是以业务拓扑任务,即Topology(拓扑任务)的形式存在的,其包含的各子组件之间的数据流动形成了逻辑上的拓扑结构。
而业务组件将必然是计算执行引擎中可真实执行的代码,即业务组件即为物理执行计划。对逻辑执行计划所进行的编译包括了物理执行计划的生成过程。其中,物理执行计划即为根据逻辑执行计算所得到的真正能够执行的代码。在优选的实施例中,此根据逻辑执行计划编译所得到的物理执行计划将仍然是一个DAG图。
在一个实施例中,如图5所示,该步骤250包括:
步骤251,在计算执行引擎对业务组件进行划分,以将业务组件转化为业务拓扑任务。
如前所述的,业务组件在计算执行引擎的执行中是以业务拓扑任务的形式存在的,因此,对于业务组件的运行,将首先对业务组件进行划分以使其变换为业务拓扑任务的形式。
其中,划分所得到的业务拓扑任务包括了若干个子组件。如若计算执行引擎所在的计算框架为Storm,则业务拓扑任务中的子组件则是Spout和Bolt中的任意一种,Spout和Bolt作为业务组件在计算执行引擎中的运行实体。
具体的,该划分过程可以按照业务组件中包含的操作算子进行。例如,该操作算子分别为Tap和Partition,Spout是以Tap为起始,Partition为结束的;而Bolt则是以Partition为起始,Tap为结束。
按照Tap和Partition完成划分之后,所得到的子组件,即Spout和Bolt实质为一子DAG图,其个表征了内部的业务处理逻辑。
步骤253,使数据流流入业务拓扑任务,调用业务拓扑任务中的子组件进行处理,并将处理结果发送至下一子组件,以通过各子组件执行实时计算业务逻辑。
子组件之间是相互关联的,流入的数据流将由相互关联的子组件依次进行相应的处理,以在各子组件的配合下执行实时计算业务逻辑,在一子组件完成其所对应的内部业务处理逻辑之后,将处理结果发送至下一子组件,以由下一子组件继续进行处理,以此类推,直至最后一子组件结束整个实时计算业务逻辑的执行过程。
步骤255,由结束实时计算业务逻辑执行的子组件输出相应的实时计算结果。
下面结合一个具体的实施例来详细阐述上述实时计算业务的实现。该实施例中,以某一网站中的点击流统计为例进行说明。其中,计算执行引擎为Storm,而流入计算执行引擎中的数据流为点击流。
对此场景中实时计算业务即为点击流的统计业务。该点击流的统计业务的实现将首先需要进行相应Pig Latin脚本的编写。
具体的,在Pig编辑器中的编辑内容包括了若干行语句,其中,首行语句将以宏定义的形式定义了脚本中需要使用的UDF,后续若干行语句将分别实现数据流的读取和对读取的数据流的处理过程。
数据流的读取由MockStreamReader函数实现,并相应设定了读取的数据模式。
在读取得到数据流之后,不合法的数据将会被过滤掉,合法的数据将会根据业务逻辑进行计算,同时计算结果将会被向后分发。在对合法的数据所进行的处理中,将首先计算一时间标记以用于进行统计,然后根据时间标记,以时间标识和点击流数为分组键统计5秒内的点击量,最后对得到的数据进行展平处理,并持久化到文件中。
按照此过程在Pig编辑器中进行Pig Latin脚本的编辑和导出,由此得到用于实现实时点击流统计业务的Pig Latin脚本。
编译该Pig Latin脚本以得到实现实时点击流统计业务所对应的业务组件,由此将进行业务组件的调用,并提交至计算执行引擎,通过计算执行引擎运行业务组件,以对数据流执行如前所述的语句,进而得到相应的实时计算结果,实现网站中点击流的统计。
通过Pig Latin脚本和计算执行引擎的配合,将大为提高了代码的复用度和实时计算业务实现的可移植性,进而平滑切换于各计算执行引擎上。
在一个实施例中,还相应地提供了一种实时计算业务的实现系统,如图6所示,该系统包括组件调用模块410、提交模块430和计算执行引擎450,其中:
组件调用模块410,用于调用Pig Latin脚本编译所得到的业务组件。
提交模块430,用于将调用的业务组件提交至计算执行引擎450。
计算执行引擎450,用于运行业务组件,以通过业务组件的运行对数据流执行实时计算业务,得到相应的实时计算结果。
在另一个实施例中,如图7所示,如上所述的系统还包括脚本获取模块510和编译模块530,其中:
脚本获取模块510,用于获取与实时计算业务相符的Pig Latin脚本。
编译模块530,用于编译Pig Latin脚本得到实时计算业务所对应的业务组件。
进一步的,在本实施例中,该脚本获取模块510进一步用于将编辑器中的编辑内容导出,以得到按照实时计算业务逻辑编写的Pig Latin脚本。
进一步的,在本实施例中,如图8所示,该编译模块530包括解析单元531、转换单元533和组件编译单元535,其中:
解析单元531,用于解析获取的Pig Latin脚本生成抽象语法树。
转换单元533,用于转换抽象语法树为逻辑执行计划。
组件编译单元535,用于将逻辑执行计划编译为实时计算业务所对应的业务组件。
如图9所示,在一个实施例中,该计算执行引擎450包括组件划分单元451、数据流处理单元453和结果输出单元455,其中:
组件划分单元451,用于对业务组件进行划分,以将业务组件转化为业务拓扑任务。
数据流处理单元453,用于使数据流流入业务拓扑任务,调用业务拓扑任务中的子组件进行处理,并将处理结果发送至下一子组件,以通过各子组件执行实时计算业务逻辑。
结果输出单元455,用于由结束实时计算业务逻辑执行的子组件输出相应的实时计算结果。
虽然已参照几个典型实施方式描述了本发明,但应当理解,所用的术语是说明和示例性、而非限制性的术语。由于本发明能够以多种形式具体实施而不脱离发明的精神或实质,所以应当理解,上述实施方式不限于任何前述的细节,而应在随附权利要求所限定的精神和范围内广泛地解释,因此落入权利要求或其等效范围内的全部变化和改型都应为随附权利要求所涵盖。
Claims (8)
1.一种实时计算业务的实现方法,其特征在于,包括:
获取与实时计算业务相符的Pig Latin脚本,所述Pig Latin脚本仅与所对应实时计算业务的业务逻辑相关;
编译所述Pig Latin脚本得到所述实时计算业务所对应的业务组件;
调用实时计算业务对应的业务组件,所述业务组件是将所述实时计算业务所对应PigLatin脚本进行编译所得到的Java程序;
将调用的所述业务组件提交至计算执行引擎,所述计算执行引擎是基于流式计算框架搭建的程序组件,所述流式计算框架是Apache Storm实时计算框架或InfoSphere Stream框架,所述计算执行引擎用于对实时计算业务实现中各种与实时计算业务逻辑无关的操作进行抽象、封装;
在所述计算执行引擎对所述业务组件进行划分,以将所述业务组件转化为业务拓扑任务;
使数据流流入所述业务拓扑任务,调用所述业务拓扑任务中的子组件进行处理,并将处理结果发送至下一子组件,以通过各子组件执行实时计算业务逻辑;
由结束所述实时计算业务逻辑执行的子组件输出相应的实时计算结果。
2.根据权利要求1所述的方法,其特征在于,所述获取与实时计算业务相符的PigLatin脚本的步骤包括:
将编辑器中的编辑内容导出,以得到按照实时计算业务逻辑编写的Pig Latin脚本。
3.根据权利要求1所述的方法,其特征在于,所述编译所述Pig Latin脚本得到所述实时计算业务所对应的业务组件的步骤包括:
解析所述获取的Pig Latin脚本生成抽象语法树;
转换所述抽象语法树为逻辑执行计划;
将所述逻辑执行计划编译为所述实时计算业务所对应的业务组件。
4.一种实时计算业务的实现系统,其特征在于,包括:
脚本获取模块,用于获取与实时计算业务相符的Pig Latin脚本,所述Pig Latin脚本仅与所对应实时计算业务的业务逻辑相关;
编译模块,用于编译所述Pig Latin脚本得到所述实时计算业务所对应的业务组件;
组件调用模块,用于调用实时计算业务对应的业务组件,所述业务组件是将所述实时计算业务所对应Pig Latin脚本进行编译所得到的Java程序;
提交模块,用于将调用的所述业务组件提交至计算执行引擎,所述计算执行引擎是基于流式计算框架搭建的程序组件,所述流式计算框架是Apache Storm实时计算框架或InfoSphere Stream框架,所述计算执行引擎用于对实时计算业务实现中各种与实时计算业务逻辑无关的操作进行抽象、封装;
所述计算执行引擎包括:
组件划分单元,用于对所述业务组件进行划分,以将所述业务组件转化为业务拓扑任务;
数据流处理单元,用于使所述数据流流入所述业务拓扑任务,调用所述业务拓扑任务中的子组件进行处理,并将处理结果发送至下一子组件,以通过各子组件执行实时计算业务逻辑;
结果输出单元,用于由结束所述实时计算业务逻辑执行的子组件输出相应的实时计算结果。
5.根据权利要求4所述的系统,其特征在于,所述脚本获取模块进一步用于将编辑器中的编辑内容导出,以得到按照实时计算业务逻辑编写的Pig Latin脚本。
6.根据权利要求4所述的系统,其特征在于,所述编译模块包括:
解析单元,用于解析所述获取的Pig Latin脚本生成抽象语法树;
转换单元,用于转换所述抽象语法树为逻辑执行计划;
组件编译单元,用于将所述逻辑执行计划编译为所述实时计算业务所对应的业务组件。
7.一种集群设备,其特征在于,包括:
处理器;以及
存储器,其上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,实现如权利要求1-3中任一项所述的方法。
8.一种计算机可读存储介质,其特征在于,其上存储有计算机可读指令,所述计算机可读指令被处理器执行时,实现如权利要求1-3中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510746960.7A CN106681781B (zh) | 2015-11-05 | 2015-11-05 | 实时计算业务的实现方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510746960.7A CN106681781B (zh) | 2015-11-05 | 2015-11-05 | 实时计算业务的实现方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106681781A CN106681781A (zh) | 2017-05-17 |
CN106681781B true CN106681781B (zh) | 2020-04-24 |
Family
ID=58858495
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510746960.7A Active CN106681781B (zh) | 2015-11-05 | 2015-11-05 | 实时计算业务的实现方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106681781B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110287174A (zh) * | 2019-05-09 | 2019-09-27 | 北京善义善美科技有限公司 | 一种数据过滤引擎及系统和过滤方法 |
CN110347399B (zh) * | 2019-05-31 | 2023-06-06 | 深圳绿米联创科技有限公司 | 数据处理方法、实时计算系统以及信息系统 |
CN111026400A (zh) * | 2019-11-20 | 2020-04-17 | 中国铁道科学研究院集团有限公司电子计算技术研究所 | 业务数据流的解析方法及其装置 |
CN115601195B (zh) * | 2022-10-17 | 2023-09-08 | 桂林电子科技大学 | 基于电力用户实时标签的交易双向推荐系统及其方法 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020085985A (ko) * | 2001-05-10 | 2002-11-18 | 권형우 | 리치 미디어의 실시간 전송 시스템 |
US7519972B2 (en) * | 2004-07-06 | 2009-04-14 | International Business Machines Corporation | Real-time multi-modal business transformation interaction |
US20060224336A1 (en) * | 2005-04-05 | 2006-10-05 | Charles Petras | System and method for transmitting power system data over a wide area network |
CN101833465B (zh) * | 2010-04-23 | 2013-03-13 | 中国科学院声学研究所 | 一种支持应用程序动态加载运行的嵌入式系统 |
CN101866351B (zh) * | 2010-05-25 | 2015-11-25 | 中国电力科学研究院 | 一种基于组件的报表快速生成方法及系统 |
CN102456185B (zh) * | 2010-10-29 | 2014-06-11 | 金蝶软件(中国)有限公司 | 一种分布式工作流处理方法及分布式工作流引擎系统 |
KR101217546B1 (ko) * | 2010-11-24 | 2013-01-21 | 엔에이치엔비즈니스플랫폼 주식회사 | 힙 스프레이 공격의 실시간 탐지 및 차단 방법 및 시스템 |
CN102141917A (zh) * | 2011-04-02 | 2011-08-03 | 南京天溯自动化控制系统有限公司 | 基于IronPython脚本语言的多业务联动实现方法 |
CN102360288B (zh) * | 2011-09-29 | 2014-12-03 | 南京国电南自轨道交通工程有限公司 | 实时数据驱动的脚本化全组态hmi系统 |
CN102508652A (zh) * | 2011-09-30 | 2012-06-20 | 南威软件股份有限公司 | 应用系统与引擎跨语言实现交互的方法 |
CN102681854B (zh) * | 2012-05-18 | 2015-04-29 | 华为技术有限公司 | 业务执行方法、服务器和计算机系统 |
CN103544154A (zh) * | 2012-07-11 | 2014-01-29 | 神州数码信息系统有限公司 | 一种数据格式转换的方法 |
CN103678240B (zh) * | 2012-09-18 | 2018-08-24 | 阿里巴巴集团控股有限公司 | 用于对分布式计算进行组件化管理的方法和系统 |
CN103279840B (zh) * | 2013-06-08 | 2017-02-08 | 北京首钢自动化信息技术有限公司 | 基于动态语言与事件处理机制的工作流引擎实现方法 |
CN103761111A (zh) * | 2014-02-19 | 2014-04-30 | 中国科学院软件研究所 | 一种基于bpel语言构建数据密集型工作流引擎的方法及其系统 |
CN104899015A (zh) * | 2014-03-07 | 2015-09-09 | 上海高达星软件系统有限公司 | 一种业务组件管理系统及其方法 |
CN103902838B (zh) * | 2014-04-17 | 2018-06-01 | 北京泰乐德信息技术有限公司 | 一种基于云计算的tmis车流测定方法及系统 |
CN104050261B (zh) * | 2014-06-16 | 2018-01-05 | 深圳先进技术研究院 | 基于Storm的可变逻辑的通用数据处理系统及方法 |
CN104598631B (zh) * | 2015-02-05 | 2017-11-14 | 北京航空航天大学 | 分布式数据处理平台 |
CN104699985A (zh) * | 2015-03-26 | 2015-06-10 | 西安电子科技大学 | 一种医疗大数据采集分析系统及方法 |
CN104850601B (zh) * | 2015-05-04 | 2018-09-18 | 科技谷(厦门)信息技术有限公司 | 基于图数据库的警务实时分析应用平台及其构建方法 |
-
2015
- 2015-11-05 CN CN201510746960.7A patent/CN106681781B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106681781A (zh) | 2017-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108885632B (zh) | 用于实时数据流编程的高效状态机 | |
CN109710215B (zh) | 分布式流计算的可视化流程处理引擎及其使用方法 | |
CN109002362B (zh) | 一种服务方法、装置、系统以及电子设备 | |
CN106681781B (zh) | 实时计算业务的实现方法和系统 | |
US11314503B2 (en) | Software development documentation using machine learning | |
CN106611044B (zh) | 一种sql优化方法及设备 | |
CN106547527B (zh) | 一种JavaScript文件构建方法及装置 | |
WO2018126964A1 (zh) | 任务执行方法、装置和服务器 | |
CN110908641B (zh) | 基于可视化的流计算平台、方法、设备和存储介质 | |
US20090328016A1 (en) | Generalized expression trees | |
CN106951305B (zh) | 一种基于模型转换由QVT-R语言生成midCore脚本的方法 | |
CN111381817A (zh) | 实现跨平台多语言开发的方法、装置、介质和电子设备 | |
CN109597618B (zh) | 程序开发方法、装置、计算机设备及存储介质 | |
CN115639980A (zh) | 一种低代码平台可拖拽的前端逻辑编排方法及装置 | |
US9696968B2 (en) | Lightweight optionally typed data representation of computation | |
Rivero et al. | MockAPI: an agile approach supporting API-first web application development | |
WO2012051844A1 (zh) | 智能网平台、业务执行方法和分析业务异常的方法 | |
CN111176660A (zh) | 一种面向分布式架构的微服务契约管理方法、装置、计算机设备、和可读存储介质 | |
CN104317580A (zh) | 虚拟试验应用集成开发环境 | |
WO2024041301A1 (zh) | 一种生成统一抽象语法树与程序分析的方法和装置 | |
Wang et al. | RPig: A scalable framework for machine learning and advanced statistical functionalities | |
CN111221841A (zh) | 基于大数据的实时处理方法及装置 | |
JP2010049439A (ja) | ソフトウェアモデルを用いたシステム構築方法およびモデリング装置 | |
CN103176830A (zh) | 基于类图和活动图相结合生成c++代码的方法 | |
CN114579141A (zh) | require框架转化为VUE框架的方法及装置 |
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 |