CN112860954A - 实时计算的方法以及实时计算系统 - Google Patents
实时计算的方法以及实时计算系统 Download PDFInfo
- Publication number
- CN112860954A CN112860954A CN202110172210.9A CN202110172210A CN112860954A CN 112860954 A CN112860954 A CN 112860954A CN 202110172210 A CN202110172210 A CN 202110172210A CN 112860954 A CN112860954 A CN 112860954A
- Authority
- CN
- China
- Prior art keywords
- data
- real
- time computing
- information
- query
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9038—Presentation of query results
Abstract
本申请提供了一种实时计算的方法以及实时计算系统,实时计算的方法由实时计算系统执行,实时计算系统包括内存数据库、实时计算引擎以及存储数据库,方法包括:内存数据库获取定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,并发送至实时计算引擎中;实时计算引擎根据数据源的结构信息、数据的加工逻辑以及数据的输出规则,生成实时计算任务,并运行实时计算任务得到计算结果,且将计算结果发送至存储数据库;存储数据库接收客户端发送的查询信息,并依据查询信息以及计算结果得到查询结果,查询信息包括查询请求和主键信息;存储数据库将查询结果发送至客户端。该方法无需重新再编程,满足数据的实时处理运算。
Description
技术领域
本申请涉及数据处理领域,具体而言,涉及一种实时计算的方法以及实时计算系统。
背景技术
实时计算是针对海量的,并且是指实时不间断产生的数据,同时满足应用针对数据进行秒级处理需求的一种数据处理框架。实时计算的特性是数据实时产生、数据实时传输、数据实时计算、实时展示等。从技术领域来看,实时计算的应用场景主要有,实时ETL和数据流、实时数据分析、时间驱动应用三大块。目前业界的代表有Flink/Spark。
以目前的Flink实时计算引擎举例来说,必不可少的需要通过程序编程,同时需要定义数据源(source),数据加工过程(transformation),数据落地(sink)三个数据流向过程。针对不同的实时任务都需要定制化开发,后续的实时任务开发复用前一个实时任务的可能性基本上为无。该过程针对普通技术人员,需要进行繁琐的代码编程与开发工作,效率较低,增加开发成本与后期的维护成本;同时针对业务人员,则需完全依赖技术人员才能实现业务数据的处理,成本较高。
在背景技术部分中公开的以上信息只是用来加强对本文所描述技术的背景技术的理解,因此,背景技术中可能包含某些信息,这些信息对于本领域技术人员来说并未形成在本国已知的现有技术。
发明内容
本申请的主要目的在于提供一种实时计算的方法以及实时计算系统,以解决现有技术中不同的实时计算任务需要重新开发,导致效率较低且成本较高的问题。
根据本发明实施例的一个方面,提供了一种实时计算的方法,所述方法由实时计算系统执行,所述实时计算系统包括内存数据库、实时计算引擎以及存储数据库,所述方法包括:所述内存数据库获取定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,并发送至所述实时计算引擎中;所述实时计算引擎根据所述数据源的结构信息、所述数据的加工逻辑以及所述数据的输出规则,生成实时计算任务,并运行所述实时计算任务得到计算结果,且将所述计算结果发送至所述存储数据库;所述存储数据库接收客户端发送的查询信息,并依据所述查询信息以及所述计算结果得到查询结果,所述查询信息包括查询请求和主键信息;所述存储数据库将所述查询结果发送至所述客户端。
可选地,所述数据源的结构信息中的字段名称、所述数据的加工逻辑中的字段名称以及所述数据的输出规则中的字段名称相同。
可选地,所述数据的输出规则包括输出表的结构。
可选地,在所述内存数据库获取定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,并发送至所述实时计算引擎中之后,在所述实时计算引擎根据所述数据源的结构信息、所述数据的加工逻辑以及所述数据的输出规则,生成实时计算任务之前,所述方法还包括:获取数据源;根据所述数据源的结构信息对所述数据源的数据结构进行校验。
可选地,所述存储数据库为NoSQL型Hbase数据库。
可选地,所述主键信息包括联合主键信息。
可选地,所述数据的加工逻辑包括数据的过滤筛选条件。
根据本发明实施例的另一方面,还提供了一种实时计算系统,所述实时计算系统包括内存数据库、实时计算引擎以及存储数据库,其中,所述内存数据库获取定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,并发送至所述实时计算引擎中;所述实时计算引擎根据数据源的结构信息、数据的加工逻辑以及数据的输出规则,生成实时计算任务,运行所述实时计算任务得到计算结果,并将所述计算结果发送至所述存储数据库;所述存储数据库接收客户端发送的查询信息,并依据所述查询信息以及所述计算结果得到查询结果,所述查询信息包括查询请求和主键信息;所述存储数据库将所述查询结果发送至所述客户端。
可选地,所述数据源的结构信息中的字段名称、所述数据的加工逻辑中的字段名称以及所述数据的输出规则中的字段名称相同。
可选地,所述数据的输出规则包括输出表的结构。
在本发明实施例中,所述的实时计算方法中,首先,内存数据库获取定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,并且将这些信息发送至实时计算引擎中;然后,实施计算引擎根据这些信息生成实时计算任务,并运行这些任务生成计算结果,将计算结果发送给存储数据库;之后,存储数据库接收客户端发送的查询信息,并根据对应的查询信息从计算结果中筛选出对应的查询结果;最后,将查询结果发送给客户端。该方法中,只需要内存数据库获取管理者定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,后续根据这些信息进行计算即可,无需重新再编程,完全解放编程环节,通过自动化的配置,满足数据的实时处理运算,同时可以满足海量历史计算数据的快速查询。并且,通过定义好的数据输出格式,可以实现数据的定制化入库,满足不同应用的数据查询需求。采取本方案相应的流程处理,无论针对普通的技术人员还是业务人员,省略掉了各种组件的学习成本,极大地简化了开发成本,通过简单的配置即可实现一个实时数据的快速应用开发,可以给业务部门提供了一个易用、稳定以及高效的实时数据服务。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了根据本申请的实时计算的方法的实施例的流程示意图;
图2示出了根据本申请的实时计算系统的框架示意图;
图3示出了根据本申请的实时计算的系统的实施例的流程示意图。
其中,附图标记如下:
10、内存数据库;20、实时计算引擎;30、存储数据库。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应该理解的是,当元件(诸如层、膜、区域、或衬底)描述为在另一元件“上”时,该元件可直接在该另一元件上,或者也可存在中间元件。而且,在说明书以及权利要求书中,当描述有元件“连接”至另一元件时,该元件可“直接连接”至该另一元件,或者通过第三元件“连接”至该另一元件。
正如背景技术中所说的,现有技术中的不同的实时计算任务需要重新开发,导致开发效率较低且成本较高(包括开发成本和运维成本),为了解决上述问题,本申请的一种典型的实施方式中,提供了一种实时计算的方法以及实时计算系统。
根据本申请的实施例,提供了一种实时计算的方法。上述方法由实时计算系统执行,上述实时计算系统包括内存数据库、实时计算引擎以及存储数据库。
图1是根据本申请实施例的实时计算的方法的流程图。如图1所示,该方法包括以下步骤:
步骤S101,上述内存数据库获取定义好的数据源的结构信息、数据的加工逻辑(如选择一个或者多个字段作为数据加工完毕后的主键,其他需要的字段等)以及数据的输出规则,并发送至上述实时计算引擎中;
步骤S102,上述实时计算引擎根据上述数据源的结构信息、上述数据的加工逻辑以及上述数据的输出规则,生成实时计算任务,并运行上述实时计算任务得到计算结果,且将上述计算结果发送至上述存储数据库;
步骤S103,上述存储数据库接收客户端发送的查询信息,并依据上述查询信息以及上述计算结果得到查询结果,上述查询信息包括查询请求和主键信息;
步骤S104,上述存储数据库将上述查询结果发送至上述客户端。
上述的实时计算方法中,首先,内存数据库获取定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,并且将这些信息发送至实时计算引擎中;然后,实施计算引擎根据这些信息生成实时计算任务,并运行这些任务生成计算结果,将计算结果发送给存储数据库;之后,存储数据库接收客户端发送的查询信息,并根据对应的查询信息从计算结果中筛选出对应的查询结果;最后,将查询结果发送给客户端。该方法中,只需要内存数据库获取管理者定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,后续根据这些信息进行计算即可,无需重新再编程,完全解放编程环节,通过自动化的配置,满足数据的实时处理运算,同时可以满足海量历史计算数据的快速查询。并且,通过定义好的数据输出格式,可以实现数据的定制化入库,满足不同应用的数据查询需求。采取本方案相应的流程处理,无论针对普通的技术人员还是业务人员,省略掉了各种组件的学习成本,极大地简化了开发成本,通过简单的配置即可实现一个实时数据的快速应用开发,可以给业务部门提供了一个易用、稳定以及高效的实时数据服务。
为了进一步提高实时计算的效率,本申请的一种实施例中,上述数据源的结构信息中的字段名称、上述数据的加工逻辑中的字段名称以及上述数据的输出规则中的字段名称相同。
具体地,本申请的一种实施例中,在定义数据源的结构信息、数据的加工逻辑以及数据的输出规则的过程具体包括,具体包括:
2.定义加工逻辑
接入实时计算系统的每一类数据,可以通过元数据管理平台,去维护每类数据的元数据格式,元数据格式可以通过json格式去定义,json结构规则定义如下:
queue_name:定义了消息队列的名称,
Properties:json结构的一个数组,多组keyValue对类型,其中key值是消息数据的字段名称,value值是具体的字段类型或者嵌套的json数据结构定义。
3.定义数据的输出规则,具体可以包括输出的表结构
该结构主要定义了输出表结构。输出结构规则定义如下:
processing_format:定义一组输出表结构的唯一名称
table_list:json结构定义的一组输出表结构,其中:
"table_name"用来指定输出表的英文名称,
"rowkey_list"用来定义主键,该主键定义可以单字段,也可以联合字段(联合主键信息),如果待处理的数据存在主键重复的情况,则可以选择将主键数据拼接上时间戳来保证主键的唯一性,后续也将以该主键进行数据的查询。
"no_rowkey_list"用来定义通过主键查询的数据列,
在table_list可根据业务的需求,定义多组表结构的输出。
其中,主键的定义原则:长度原则,一般不超过16个字节;唯一原则,唯一性,用来唯一标识一行记录;散列原则,保证数据均衡分布。举例来说:示例一:个人身份信息表中,查询个人身份信息,身份证号能唯一的表示一行数据,则可以用身份证号作为主键。示例二:在个人交易信息表中,日期+个人身份证可以查询客户某天的交易信息,则可以用身份证号_日期的方式作为主键。
为了可以根据需求,定义的输出规则也可以满足依据不同的查询需求,本申请的一种实施例中,上述数据的输出规则包括输出表的结构,例如,可以定义不同结构的结果表,实现输出存储多张结果表的功能。
本申请的另一种实施例中,在上述内存数据库获取定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,并发送至上述实时计算引擎中之后,在上述实时计算引擎根据上述数据源的结构信息、上述数据的加工逻辑以及上述数据的输出规则,生成实时计算任务之前,上述方法还包括:获取数据源;根据上述数据源的结构信息对上述数据源的数据结构进行校验。这样可以进一步保证数据源的格式满足要求,进一步保证了实时计算高效有序地进行,具体地,可以选取已有的数据源,即消息队列中任意一类消息数据;然后,可以根据消息数据schema信息,对该数据格式进行校验。
为了进一步提升该方法的查询速度,本申请的一种实施例中,上述存储数据库为NoSQL型Hbase数据库。NoSQL型Hbase这种keyValue类型后台存储数据库,根据应用的需求,可定制化输出结果,实现在海量历史数据中快速查询,甚至可以达到百亿数据毫秒返回结果数据。
本申请中的一种具体的实施例中,主键信息可以包括联合主键信息,联合主键信息即为联合主键的信息。当然,实际应用中,并不限于只包括该种主键信息,还可以包括其他的主键信息。
本申请的一种实施例中,数据的加工逻辑包括数据的过滤筛选条件,当然,该数据的加工逻辑并不限于该条件,还可以包括是否需要与维表关联补充数据以及是否需要提前聚合等信息。本领域技术人员可以根据实际情况定义合适的数据的加工逻辑。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
还需要说明的是,本申请中的数据源是业务系统将数据实时写入至消息队列的,数据源可以来自任意的业务系统,一般生产规范要求,发送的数据格式为json串的形式,但不局限于json,也可以是其他任意格式类型的数据,传输过程中,对业务系统无要求,只要保证实时产生的业务数据实时写入消息队里即可。
图2示出了本申请的一种实时计算系统的框架图,数据加工就是实时计算引擎进行数据源计算的过程,数据落地就是指计算结果发送至上述存储数据库。
本申请实施例还提供了一种实时计算系统,需要说明的是,本申请实施例的实时计算系统可以用于执行本申请实施例所提供的用于实时计算的方法。以下对本申请实施例提供的实时计算系统进行介绍。
图3是根据本申请实施例的实时计算系统的示意图。如图3所示,上述实时计算系统包括内存数据库10、实时计算引擎20以及存储数据库30,其中,上述内存数据库获取定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,并发送至上述实时计算引擎中;上述实时计算引擎根据数据源的结构信息、数据的加工逻辑以及数据的输出规则,生成实时计算任务,运行上述实时计算任务得到计算结果,并将上述计算结果发送至上述存储数据库;上述存储数据库接收客户端发送的查询信息,并依据上述查询信息以及上述计算结果得到查询结果,上述查询信息包括查询请求和主键信息;上述存储数据库将上述查询结果发送至上述客户端。
上述的实时计算系统中,内存数据库获取定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,并且将这些信息发送至实时计算引擎中;实施计算引擎根据这些信息生成实时计算任务,并运行这些任务生成计算结果,将计算结果发送给存储数据库;存储数据库接收客户端发送的查询信息,并根据对应的查询信息从计算结果中筛选出对应的查询结果;将查询结果发送给客户端。该系统中,只需要内存数据库获取管理者定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,后续根据这些信息进行计算即可,无需重新再编程,完全解放编程环节,通过自动化的配置,满足数据的实时处理运算,同时可以满足海量历史计算数据的快速查询。并且,通过定义好的数据输出格式,可以实现数据的定制化入库,满足不同应用的数据查询需求。采取本方案相应的流程处理,无论针对普通的技术人员还是业务人员,省略掉了各种组件的学习成本,极大地简化了开发成本,通过简单的配置即可实现一个实时数据的快速应用开发,可以给业务部门提供了一个易用、稳定以及高效的实时数据服务。
为了进一步提高实时计算的效率,本申请的一种实施例中,上述数据源的结构信息中的字段名称、上述数据的加工逻辑中的字段名称以及上述数据的输出规则中的字段名称相同。
具体地,本申请的一种实施例中,在定义数据源的结构信息、数据的加工逻辑以及数据的输出规则的过程具体包括,具体包括:
2.定义加工逻辑
接入实时计算系统的每一类数据,可以通过元数据管理平台,去维护每类数据的元数据格式,元数据格式可以通过json格式去定义,json结构规则定义如下:
queue_name:定义了消息队列的名称,
Properties:json结构的一个数组,多组keyValue对类型,其中key值是消息数据的字段名称,value值是具体的字段类型或者嵌套的json数据结构定义。
3.定义数据的输出规则,具体可以包括输出的表结构
该结构主要定义了输出表结构。输出结构规则定义如下:
processing_format:定义一组输出表结构的唯一名称,
table_list:json结构定义的一组输出表结构,其中:
"table_name"用来指定输出表的英文名称,
"rowkey_list"用来定义主键,该主键定义可以单字段,也可以联合字段(联合主键信息),如果待处理的数据存在主键重复的情况,则可以选择将主键数据拼接上时间戳来保证主键的唯一性,后续也将以该主键进行数据的查询。
"no_rowkey_list"用来定义通过主键查询的数据列,
在table_list可根据业务的需求,定义多组表结构的输出。
其中,主键的定义原则:长度原则,一般不超过16个字节;唯一原则,唯一性,用来唯一标识一行记录;散列原则,保证数据均衡分布。举例来说:示例一:个人身份信息表中,查询个人身份信息,身份证号能唯一的表示一行数据,则可以用身份证号作为主键。示例二:在个人交易信息表中,日期+个人身份证可以查询客户某天的交易信息,则可以用身份证号_日期的方式作为主键。
为了可以根据需求,定义的输出规则也可以满足依据不同的查询需求,本申请的一种实施例中,上述数据的输出规则包括输出表的结构,例如,可以定义不同结构的结果表,实现输出存储多张结果表的功能。
本申请的另一种实施例中,上述实时计算引擎还用于:在上述内存数据库获取定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,并发送至上述实时计算引擎中之后,在上述实时计算引擎根据上述数据源的结构信息、上述数据的加工逻辑以及上述数据的输出规则,生成实时计算任务之前,获取数据源;根据上述数据源的结构信息对上述数据源的数据结构进行校验。这样可以进一步保证数据源的格式满足要求,进一步保证了实时计算高效有序地进行,具体地,可以选取已有的数据源,即消息队列中任意一类消息数据;然后,可以根据消息数据schema信息,对该数据格式进行校验。
为了进一步提升该系统的查询速度,本申请的一种实施例中,上述存储数据库为NoSQL型Hbase数据库。NoSQL型Hbase这种keyValue类型后台存储数据库,根据应用的需求,可定制化输出结果,实现在海量历史数据中快速查询,甚至可以达到百亿数据毫秒返回结果数据。
本申请中的一种具体的实施例中,主键信息可以包括联合主键信息,联合主键信息即为联合主键的信息。当然,实际应用中,并不限于只包括该种主键信息,还可以包括其他的单字段的主键信息。
本申请的一种实施例中,数据的加工逻辑包括数据的过滤筛选条件,当然,该数据的加工逻辑并不限于该条件,还可以包括是否需要与维表关联补充数据以及是否需要提前聚合等信息。本领域技术人员可以根据实际情况定义合适的数据的加工逻辑。
还需要说明的是,本申请中的数据源是业务系统将数据实时写入至消息队列的,数据源可以来自任意的业务系统,一般生产规范要求,发送的数据格式为json串的形式,但不局限于json,也可以是其他任意格式类型的数据,传输过程中,对业务系统无要求,只要保证实时产生的业务数据实时写入消息队里即可。
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现上述实时计算的方法。
本发明实施例提供了一种处理器,上述处理器用于运行程序,其中,上述程序运行时执行上述实时计算的方法。
本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现至少以下步骤:
步骤S101,上述内存数据库获取定义好的数据源的结构信息、数据的加工逻辑(如选择一个或者多个字段作为数据加工完毕后的主键,其他需要的字段等)以及数据的输出规则,并发送至上述实时计算引擎中;
步骤S102,上述实时计算引擎根据上述数据源的结构信息、上述数据的加工逻辑以及上述数据的输出规则,生成实时计算任务,并运行上述实时计算任务得到计算结果,且将上述计算结果发送至上述存储数据库;
步骤S103,上述存储数据库接收客户端发送的查询信息,并依据上述查询信息以及上述计算结果得到查询结果,上述查询信息包括查询请求和主键信息;
步骤S104,上述存储数据库将上述查询结果发送至上述客户端。
本文中的设备可以是服务器、PC、PAD、手机等。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有至少如下方法步骤的程序:
步骤S101,上述内存数据库获取定义好的数据源的结构信息、数据的加工逻辑(如选择一个或者多个字段作为数据加工完毕后的主键,其他需要的字段等)以及数据的输出规则,并发送至上述实时计算引擎中;
步骤S102,上述实时计算引擎根据上述数据源的结构信息、上述数据的加工逻辑以及上述数据的输出规则,生成实时计算任务,并运行上述实时计算任务得到计算结果,且将上述计算结果发送至上述存储数据库;
步骤S103,上述存储数据库接收客户端发送的查询信息,并依据上述查询信息以及上述计算结果得到查询结果,上述查询信息包括查询请求和主键信息;
步骤S104,上述存储数据库将上述查询结果发送至上述客户端。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的系统实施例仅仅是示意性的,另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例上述方法的全部或部分步骤。
从以上的描述中,可以看出,本申请上述的实施例实现了如下技术效果:
1)、本申请的实时计算方法中,首先,内存数据库获取定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,并且将这些信息发送至实时计算引擎中;然后,实施计算引擎根据这些信息生成实时计算任务,并运行这些任务生成计算结果,将计算结果发送给存储数据库;之后,存储数据库接收客户端发送的查询信息,并根据对应的查询信息从计算结果中筛选出对应的查询结果;最后,将查询结果发送给客户端。该方法中,只需要内存数据库获取管理者定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,后续根据这些信息进行计算即可,无需重新再编程,完全解放编程环节,通过自动化的配置,满足数据的实时处理运算,同时可以满足海量历史计算数据的快速查询。并且,通过定义好的数据输出格式,可以实现数据的定制化入库,满足不同应用的数据查询需求。采取本方案相应的流程处理,无论针对普通的技术人员还是业务人员,省略掉了各种组件的学习成本,极大地简化了开发成本,通过简单的配置即可实现一个实时数据的快速应用开发,可以给业务部门提供了一个易用、稳定以及高效的实时数据服务。
2)、本申请的实时计算系统中,内存数据库获取定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,并且将这些信息发送至实时计算引擎中;实施计算引擎根据这些信息生成实时计算任务,并运行这些任务生成计算结果,将计算结果发送给存储数据库;存储数据库接收客户端发送的查询信息,并根据对应的查询信息从计算结果中筛选出对应的查询结果;将查询结果发送给客户端。该系统中,只需要内存数据库获取管理者定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,后续根据这些信息进行计算即可,无需重新再编程,完全解放编程环节,通过自动化的配置,满足数据的实时处理运算,同时可以满足海量历史计算数据的快速查询。并且,通过定义好的数据输出格式,可以实现数据的定制化入库,满足不同应用的数据查询需求。采取本方案相应的流程处理,无论针对普通的技术人员还是业务人员,省略掉了各种组件的学习成本,极大地简化了开发成本,通过简单的配置即可实现一个实时数据的快速应用开发,可以给业务部门提供了一个易用、稳定以及高效的实时数据服务。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种实时计算的方法,其特征在于,所述方法由实时计算系统执行,所述实时计算系统包括内存数据库、实时计算引擎以及存储数据库,所述方法包括:
所述内存数据库获取定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,并发送至所述实时计算引擎中;
所述实时计算引擎根据所述数据源的结构信息、所述数据的加工逻辑以及所述数据的输出规则,生成实时计算任务,并运行所述实时计算任务得到计算结果,且将所述计算结果发送至所述存储数据库;
所述存储数据库接收客户端发送的查询信息,并依据所述查询信息以及所述计算结果得到查询结果,所述查询信息包括查询请求和主键信息;
所述存储数据库将所述查询结果发送至所述客户端。
2.根据权利要求1所述的方法,其特征在于,所述数据源的结构信息中的字段名称、所述数据的加工逻辑中的字段名称以及所述数据的输出规则中的字段名称相同。
3.根据权利要求1所述的方法,其特征在于,所述数据的输出规则包括输出表的结构。
4.根据权利要求1至3中任一项所述的方法,其特征在于,在所述内存数据库获取定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,并发送至所述实时计算引擎中之后,在所述实时计算引擎根据所述数据源的结构信息、所述数据的加工逻辑以及所述数据的输出规则,生成实时计算任务之前,所述方法还包括:
获取数据源;
根据所述数据源的结构信息对所述数据源的数据结构进行校验。
5.根据权利要求1至3中任一项所述的方法,其特征在于,所述存储数据库为NoSQL型Hbase数据库。
6.根据权利要求1至3中任一项所述的方法,其特征在于,所述主键信息包括联合主键信息。
7.根据权利要求1至3中任一项所述的方法,其特征在于,所述数据的加工逻辑包括数据的过滤筛选条件。
8.一种实时计算系统,其特征在于,所述实时计算系统包括内存数据库、实时计算引擎以及存储数据库,其中,
所述内存数据库获取定义好的数据源的结构信息、数据的加工逻辑以及数据的输出规则,并发送至所述实时计算引擎中;
所述实时计算引擎根据数据源的结构信息、数据的加工逻辑以及数据的输出规则,生成实时计算任务,运行所述实时计算任务得到计算结果,并将所述计算结果发送至所述存储数据库;
所述存储数据库接收客户端发送的查询信息,并依据所述查询信息以及所述计算结果得到查询结果,所述查询信息包括查询请求和主键信息;
所述存储数据库将所述查询结果发送至所述客户端。
9.根据权利要求8所述的系统,其特征在于,所述数据源的结构信息中的字段名称、所述数据的加工逻辑中的字段名称以及所述数据的输出规则中的字段名称相同。
10.根据权利要求8所述的系统,其特征在于,所述数据的输出规则包括输出表的结构。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110172210.9A CN112860954A (zh) | 2021-02-08 | 2021-02-08 | 实时计算的方法以及实时计算系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110172210.9A CN112860954A (zh) | 2021-02-08 | 2021-02-08 | 实时计算的方法以及实时计算系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112860954A true CN112860954A (zh) | 2021-05-28 |
Family
ID=75989162
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110172210.9A Pending CN112860954A (zh) | 2021-02-08 | 2021-02-08 | 实时计算的方法以及实时计算系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112860954A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113468184A (zh) * | 2021-07-16 | 2021-10-01 | 北京明略软件系统有限公司 | 一种基于配置的通用流式指标计算方法及系统 |
CN113485897A (zh) * | 2021-07-05 | 2021-10-08 | 建信金融科技有限责任公司 | 一种数据处理方法和装置 |
-
2021
- 2021-02-08 CN CN202110172210.9A patent/CN112860954A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113485897A (zh) * | 2021-07-05 | 2021-10-08 | 建信金融科技有限责任公司 | 一种数据处理方法和装置 |
CN113468184A (zh) * | 2021-07-16 | 2021-10-01 | 北京明略软件系统有限公司 | 一种基于配置的通用流式指标计算方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6940662B2 (ja) | ブロックチェーンを介したアイデンティティと証明書の保護及び検証とのための方法及びシステム | |
CN109474578B (zh) | 报文消息校验方法、装置、计算机设备和存储介质 | |
CN109815344B (zh) | 基于参数共享的网络模型训练系统、方法、装置和介质 | |
CN112860954A (zh) | 实时计算的方法以及实时计算系统 | |
US20150317336A1 (en) | Data reconstruction | |
CN112328486A (zh) | 接口自动化测试方法、装置、计算机设备及存储介质 | |
CN113672692B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN107133233B (zh) | 一种配置数据查询的处理方法及装置 | |
CN114844792A (zh) | 基于lua语言的动态监控方法、装置、设备及存储介质 | |
CN112363997B (zh) | 数据版本管理方法、装置及存储介质 | |
CN117093619A (zh) | 一种规则引擎处理方法、装置、电子设备及存储介质 | |
CN114610803A (zh) | 一种数据处理方法、装置、电子设备和存储介质 | |
CN111045928A (zh) | 一种接口数据测试方法、装置、终端及存储介质 | |
CN106599244B (zh) | 通用的原始日志清洗装置及方法 | |
CN110851446B (zh) | 数据表的生成方法、装置、计算机设备及存储介质 | |
CN113254457B (zh) | 一种对账方法、系统及计算机可读存储介质 | |
CN109542890A (zh) | 数据修改方法、装置、计算机设备及存储介质 | |
US10481836B2 (en) | Machine learning method and system for predicting file controls | |
CN110297748A (zh) | 一种定位调用出错的方法、装置和计算机可读存储介质 | |
CN114416807A (zh) | 一种客户账户的数据合并方法、装置及系统 | |
CN113934767A (zh) | 一种数据处理的方法及装置、计算机设备和存储介质 | |
US20210295261A1 (en) | Generating actionable information from documents | |
CN107169044A (zh) | 一种城市人才资源综合管理方法 | |
CN113158497A (zh) | 在线服务实验方法、装置、计算机设备和存储介质 | |
CN114625769B (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 |