CN112463828A - 一种数据处理方法、装置、设备、系统及可读存储介质 - Google Patents
一种数据处理方法、装置、设备、系统及可读存储介质 Download PDFInfo
- Publication number
- CN112463828A CN112463828A CN202011201890.4A CN202011201890A CN112463828A CN 112463828 A CN112463828 A CN 112463828A CN 202011201890 A CN202011201890 A CN 202011201890A CN 112463828 A CN112463828 A CN 112463828A
- Authority
- CN
- China
- Prior art keywords
- data processing
- key
- processing component
- identifier
- component
- 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.)
- Granted
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/547—Messaging middleware
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Probability & Statistics with Applications (AREA)
- Mathematical Physics (AREA)
- Fuzzy Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据处理方法、装置、设备、系统及可读存储介质,涉及数据处理技术领域,以提高服务器资源的利用率。该方法包括:根据预配置信息进行初始化;根据初始化的结果,触发所述第一数据处理组件的目标进程从中间件Redis获取目标启动密钥,并在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,以对所述待处理数据进行处理,所述目标进程为所述第一数据处理组件包括的任一进程。本发明实施例可以提高服务器资源的利用率。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种数据处理方法、装置、设备、系统及可读存储介质。
背景技术
随着AI(Artificial Intelligence,人工智能)技术的崛起,算法模型训练完成之后需要大量的验证数据、以及复杂验证流程来完成对模型各个维度的性能、准确率等指标的验证。
跑批指的是将要处理的数据积攒成“批”,在指定时间一次性进行处理。跑批也可称为批处理。现有的跑批方式需要借助本地分片、mq(Message Queue,消息队列)实现分布式跑批。但是,现有的跑批处理方式无法最大化的利用服务器资源。
发明内容
本发明实施例提供一种数据处理方法、装置、设备、系统及可读存储介质,以提高服务器资源的利用率。
第一方面,本发明实施例提供了一种数据处理方法,应用于第一数据处理组件,所述第一数据处理组件包括至少一个进程;所述方法包括:
根据预配置信息进行初始化;
根据初始化的结果,触发所述第一数据处理组件的目标进程从中间件Redis(Remote Dictionary Server,远程字典服务器)获取目标启动密钥,并在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,以对所述待处理数据进行处理;
所述目标进程为所述第一数据处理组件包括的任一进程。
第二方面,本发明实施例还提供一种数据处理方法,应用于第一初始化组件;所述方法包括:
获取待处理的数据以及预配置信息;
向第一数据调度组件发送所述待处理数据,以使所述第一数据调度组件将所述待处理数据存储到中间件Redis中;
根据所述预配置信息对第一数据处理组件进行初始化。
第三方面,本发明实施例还提供一种数据处理方法,所述方法包括:
根据预配置信息对数据处理组件进行初始化;
根据初始化的结果,触发所述数据处理组件的目标进程从中间件Redis获取目标启动密钥;
所述目标进程在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,对所述待处理数据进行处理;
所述目标进程为所述数据处理组件包括的任一进程。
第四方面,本发明实施例提供一种数据处理装置,应用于第一数据处理组件,所述第一数据处理组件包括至少一个进程;所述装置包括:
第一初始化模块,用于根据预配置信息进行初始化;
第一触发模块,用于根据初始化的结果,触发所述第一数据处理组件的目标进程从中间件Redis获取目标启动密钥,并在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,以对所述待处理数据进行处理;
所述目标进程为所述第一数据处理组件包括的任一进程。
第五方面,本发明实施例提供一种数据处理装置,应用于第一初始化组件;所述装置包括:
第一获取模块,用于获取待处理的数据以及预配置信息;
第一发送模块,用于向第一数据调度组件发送所述待处理数据,以使所述第一数据调度组件将所述待处理数据存储到中间件Redis中;
第一初始化模块,用于根据所述预配置信息对第一数据处理组件进行初始化。
第六方面,本发明实施例还提供一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的程序,所述处理器执行所述程序时实现如上所述的任一方面所述的方法中的步骤。
第七方面,本发明实施例还提供一种数据处理系统,包括:初始化组件,数据处理组件,以及中间件Redis;
所述初始化组件,用于获取待处理的数据以及预配置信息,将所述待处理数据存储到中间件Redis中以及根据所述预配置信息对第一数据处理组件进行初始化;
所述数据处理组件,用于根据预配置信息进行初始化,以及,根据初始化的结果,触发所述第一数据处理组件的目标进程从中间件Redis获取目标启动密钥,并在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,以对所述待处理数据进行处理;
所述目标进程为所述数据处理组件包括的任一进程。
第八方面,本发明实施例还提供一种可读存储介质,用于存储程序,所述程序被处理器执行时实现如上所述的任一方面所述的方法中的步骤。
在本发明实施例中,第一数据处理组件在完成初始化之后,触发其包括的目标进程从中间件Redis获取目标启动密钥,并在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,以对所述待处理数据进行处理。因此,利用本发明实施例的方案,可使得各进程采用争抢启动密钥的方式进行数据处理,从而使得处理速度快的进程处理更多的数据,进而提高了服务器的资源利用率。
附图说明
图1是本发明实施例提供的数据处理系统的结构图之一;
图2是本发明实施例提供的数据处理系统的结构图之二;
图3是本发明实施例提供的数据处理方法的流程图之一;
图4是本发明实施例提供的数据处理方法的流程图之二;
图5是本发明实施例提供的数据处理方法的流程图之三;
图6是本发明实施例提供的数据处理装置的结构图之一;
图7是本发明实施例提供的数据处理装置的结构图之二;
图8是本发明实施例提供的数据处理装置的结构图之三。
具体实施方式
本发明实施例中术语“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本申请实施例中术语“多个”是指两个或两个以上,其它量词与之类似。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,并不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参见图1,图1是本发明实施例提供的数据处理系统的结构图。其中,所述系统可包括:初始化组件101,数据处理组件102,以及中间件Redis103。
其中,所述初始化组件101,用于获取待处理数据以及预配置信息,将所述待处理数据存储到中间件Redis中以及根据所述预配置信息对第一数据处理组件进行初始化。所述预配置信息包括:各个数据处理组件的数量的最大值,各个数据处理组件需要监听的key(键值),以及数据处理组件的各个进程需要监听的key。
所述数据处理组件102,用于根据预配置信息进行初始化,以及,根据初始化的结果,触发数据处理组件的目标进程从中间件Redis获取目标启动密钥,并在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,以对所述待处理数据进行处理。所述目标进程为所述数据处理组件包括的任一进程。
中间件Redis103是一个key-value存储系统。
此外,再结合图1所示,所述系统还可包括:数据调度组件104,用于从所述初始化组件获取所述待处理数据,并将所述待处理数据存储到中间件Redis中。数据调度组件104在存储数据之前,还可对数据进行预处理,例如,更改数据格式,删除无用数据等。
其中,在本发明实施例中,所进行的数据处理包括对数据的跑批处理。
参见图2,图2是本发明实施例提供的数据处理系统的又一结构图。在图2中,该系统可包括:配置中心201,至少一个Job组件202,至少一个Producer(生产者)组件(Etl)203,中间件Redis204,以及至少一个Consumer(消费者)(Step)组件205。其中,每个Step包括至少一个进程(process),每个step都是一个消费者组件。
其中,Job组件202相当于图1中的初始化组件,生产者组件相当于图1中的数据调度组件,消费者组件相当于图1中的数据处理组件。
配置中心201负责从数据源获取待处理(跑批)数据,配置每个step的最大数量、每个step以及每个step的process需要监听的上一个节点的key(键值)等。
Job组件202负责完成初始化操作,每个job只负责一种类型的数据的跑批。同时,触发生产者组件处理待处理的数据。
每个Job组件具有自己的标识,如jobid;每个step也具有自己的标识,如stepid。由于Job组件、step具有对应关系(一个Job组件可对应多个step),因此,通过初始化操作,每个step都能获得其对应的Job组件的jobid。同理,由于一个step可以包括多个process,因此,通过初始化操作,每个process都能获取其对应的step的stepid,以及对应的Job组件的jobid。
生产者组件203负责对待处理数据进行预处理,并将预处理后的数据存储到Redis的数据源队列中。之后,发送通知消息,该通知消息以生产者组件203对应的Job组件的jobid为内容,待监听的key为通知类型,以表示生产者组件203完成处理。其中,所述预处理包括从对待处理数据的格式进行调整,删除无用的数据等等。具体的,生产者组件将预处理后的数据存储到Redis的list(列表)中,以作为数据源队列。
在本发明实施例中,中间件采用Redis,并利用关系型数据库存储数据,由于无需像现有技术那样进行分片处理,因此,利用本申请实施例的方案可节约时间成本,从而可提升获取数据性能。此外,由于生产者组件203由多个进程或者线程组成,因此,当数据量较大时,仍可调动多个线程进行处理,从而提高了数据处理的效率。
消费者组件205监听通知消息。若通知消息中待监听的key与消费者组件205自身需监听的key一致,那么,消费者组件205根据Job组件配置的每个step的最大数量和随机数生成指定数量的UUID(Universally Unique Identifier,通用唯一识别码),并将UUID作为启动密钥。
例如,Step1根据Job组件配置的系统中所包括的Step1的最大数量和随机数生成指定数量的UUID。其中,该指定数量可以认为是等于Step1所包括的进程的数量。之后,发送通知消息,该通知消息以Step1对应的Job组件的jobid、Step1的标识stepid为监听内容、待监听的key为通知类型,以表示Step1完成初始化。
各个消费者组件205的进程监听对应的消费者组件的通知消息。若监听到的通知消息的key和进程自身的需监听的key一致,则获取通知消息中的jobid、stepid。之后,该进程可判断启动密钥队列中当前存储的启动密钥的数量,与该进程所属的step对应的step数量的最大值减去服务器数量的差之间的大小。若比较结果为大于,那么,该进程此次将无法获取到启动密钥,需继续轮训。否则,该进程可将jobid、stepid作为key,从Redis的启动密钥队列中获取启动密钥。通过这种方式,可保证每个服务器节点都有一个进程在处理数据,从而最大化的利用资源。在获取到启动密钥之后,该进程将jobid、stepid以及进程所属的服务器的信息(IP和端口号)存储到Redis中,以标识该进程已经获取了启动密钥。同时,由于获取了启动密钥,因此,该进程可从Redis的数据源队列中提取数据进行处理。
此外,该进程的数据处理结果还可存储到Redis的数据源队列中。具体的,该进程以jobid、stepid和该进程的随机字符串作为key,处理结果作为value存储到Redis的数据源队列中。如果还需后续其他进程或者step进行处理,那么,该进程还可发送通知消息,其中,该通知消息以jobid、stepid和该进程的随机字符串作为内容,待监听的key为通知类型,以标识该进程完成处理。jobid、stepid对应的其他进程或者其他step可监听该通知消息,并在确定待监听的key为自身需要监听的key时进行处理。其中,其他进程的处理方式和以上描述的进程的处理方式相同,而其他step的处理方式和以上描述的step的处理方式相同。
以Step1为例,当Step1完成初始化之后,发出通知消息。Step1的各个进程监听该通知消息,并将该通知消息中的待监听的key和自身需要监听的key进行比较。假设process1监听的结果为通知消息中的待监听的key和自身需要监听的key一致,那么,process1需进行后续的处理。
process1可判断启动密钥队列中当前存储的启动密钥的数量,与初始化时预设的Step1数量的最大值减去服务器的数量的差之间的大小。若比较结果为大于,那么,process1此次将无法获取到启动密钥,需继续轮训。否则,process1可将jobid(具体为Step1对应的Job组件的jobid)、stepid(具体为Step1的stepid)作为key,从Redis的启动密钥队列中获取启动密钥。在获取到启动密钥之后,process1将jobid、stepid以及process1所属的服务器的信息(IP和端口号)存储到Redis中,以标识该进程已经获取了启动密钥。同时,由于获取了启动密钥,因此,process1可从Redis的数据源队列中提取数据进行处理。
参见图3,图3是本发明实施例提供的数据处理方法的流程图,应用于第一数据处理组件,所述第一数据处理组件包括至少一个进程。如图3所示,包括以下步骤:
步骤301、根据预配置信息进行初始化。
其中,所述预配置信息包括:第一数据处理组件的数量的最大值,所述第一数据处理组件需要监听的key,以及所述第一数据处理组件的各个进程需要监听的key。其中,该预配置信息可以是从第一初始化组件获取的,所述第一数据处理组件是与第一初始化组件对应的数据处理组件。
具体的,在此步骤中,第一数据处理组件根据所述预配置信息生成启动密钥,然后将所述启动密钥的信息存储到中间件Redis中。其中,所述启动密钥的信息包括所述启动密钥。
在生成启动密钥的过程中,第一数据处理组件根据所述最大值和随机数生成UUID,并将所述UUID作为所述启动密钥。之后,第一数据处理组件利用所述第一数据处理组件对应的第一初始化组件的标识以及所述第一数据处理组件的标识作为键值key、利用所述启动密钥作为值value,将所述key和所述value对应存储到所述中间件Redis的启动密钥队列中。具体的,第一数据处理组件将所述key和所述value对应存储到所述中间件Redis的list中。在本发明实施例中,中间件采用Redis,并利用关系型数据库存储数据,从而可提升获取数据性能。
当完成初始化之后,为了使得第一数据处理组件的进程或者其他数据处理组件了解处理进度,以提高处理效率,第一数据处理组件还可发送第一通知,所述第一通知以所述第一初始化组件的标识以及所述第一数据处理组件的标识作为内容,以第一待监听key作为通知类型。
步骤302、根据初始化的结果,触发所述第一数据处理组件的目标进程从中间件Redis获取目标启动密钥,并在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,以对所述待处理数据进行处理。
其中,目标进程可以是第一数据处理组件包括的任一进程。目标进程可响应于所述第一数据处理组件的触发,获取所述第一数据处理组件对应的第一初始化组件的标识以及所述第一数据处理组件的标识,并以所述第一数据处理组件对应的第一初始化组件的标识以及所述第一数据处理组件的标识作为key,从所述中间件Redis中获取目标启动密钥。在获取到所述目标启动密钥的情况下,从所述中间件Redis的数据源队列中提取待处理数据。其中,所述第一数据处理组件的触发可以是其发出的第一通知消息。在上述过程中,目标进程可利用启动密钥主动的获取数据,从而避免了因数据处理端的资源问题而导致的数据积压、其他空闲服务器资源得不到充分利用的问题,进而提高了服务器资源的利用率。
为了使得进程准确的处理其所要处理的数据,所述目标进程接收所述第一数据处理组件的第一通知,所述第一通知以所述第一初始化组件的标识及所述第一数据处理组件的标识作为内容,以第一待监听key作为通知类型。然后,目标进程将所述第一待监听key和所述目标进程对应的key进行比较。若所述第一待监听key和所述目标进程对应的key一致,则响应于所述第一数据处理组件的触发,获取所述第一数据处理组件对应的第一初始化组件的标识以及所述第一数据处理组件的标识。
为了保证每个服务器都有进程进行数据处理,在目标进程获取启动密钥之前,所述目标进程比较第一参考值和第二参考值,其中,所述第一参考值为所述中间件Redis的启动密钥队列中当前存储的启动密钥的数量,所述第二参考值为第一数据处理组件的数量的最大值与服务器的数量之差。若所述第一参考值小于或等于所述第二参考值,则以所述第一数据处理组件对应的第一初始化组件的标识以及所述第一数据处理组件的标识作为key,从所述中间件Redis中获取目标启动密钥,否则继续轮训。
在本发明实施例中,第一数据处理组件在完成初始化之后,触发其包括的目标进程从中间件Redis获取目标启动密钥,并在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,以对所述待处理数据进行处理。因此,利用本发明实施例的方案,可使得各进程采用争抢启动密钥的方式进行数据处理,从而使得处理速度快的进程处理更多的数据,进而提高了服务器的资源利用率。同时,由于Redis单进程的特性,采用list数据结构,因此,可避免多个数据处理组件的多个进程的重复消费和进程安全问题。
在以上实施例的基础上,所述方法还包括以下至少一个步骤:
所述目标进程向所述中间件Redis的标识存储队列中添加所述目标进程的标识,所述目标进程的标识用于表示所述目标进程已获取启动密钥;
所述目标进程利用所述第一数据处理组件对应的第一初始化组件的标识、所述第一数据处理组件的标识以及所述目标进程对应的随机字符串作为key,利用所述目标进程的数据处理结果为value,将所述key和所述value对应存储到所述中间件Redis的数据源队列中;
所述目标进程发送第二通知,所述第二通知以所述第一数据处理组件对应的第一初始化组件的标识、所述第一数据处理组件的标识、所述目标进程对应的随机字符串作作为内容,以第二待监听key作为通知类型。
参见图4,图4是本发明实施例提供的数据处理方法的流程图,应用于第一初始化组件。如图4所示,包括以下步骤:
步骤401、获取待处理的数据以及预配置信息。
其中,所述预配置信息包括:第一数据处理组件的数量的最大值,所述第一数据处理组件需要监听的key,以及所述第一数据处理组件的各个进程需要监听的key。
步骤402、将所述待处理数据存储到中间件Redis中。
具体的,在此步骤中,第一初始化组件向第一数据调度组件发送所述待处理数据,以使所述第一数据调度组件将所述待处理数据存储到中间件Redis中。而第一数据调度组件在存储时,可对所述待处理数据进行预处理,并将预处理后的待处理数据存储到所述中间件Redis的数据源队列中。之后,第一数据调度组件发送第三通知,所述第三通知以所述第一初始化组件的标识作为内容,以第三待监听key作为通知类型。
步骤403、根据所述预配置信息对第一数据处理组件进行初始化。
在本发明实施例中,第一数据处理组件在完成初始化之后,触发其包括的目标进程从中间件Redis获取目标启动密钥,并在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,以对所述待处理数据进行处理。因此,利用本发明实施例的方案,可使得各进程采用争抢启动密钥的方式进行数据处理,从而使得处理速度快的进程处理更多的数据,进而提高了服务器的资源利用率。
假设,需要处理的跑批数据包括:人脸数据,翻拍数据,银行卡数据。本发明实施例的数据处理方法包括:
步骤401a、将需要跑批的人脸数据,翻拍数据,银行卡数据分别创建不同的job任务,并配置每个job的setp的最大值,每个step的监听key、每个step的进程的监听key等相关配置。在本实施例中,以step1为消费者进程(包括三个进程)、setp2是最终的统计服务(包括一个进程)为例进行描述。
步骤402a、job启动之后,数据调度组件从配置的数据源抽取数据,并根据人脸比对算法、翻拍检测算法、银行卡识别算法等对数据大小、格式的要求,过滤掉不符合条件的数据,并将符合条件的数据的数据格式转换为下一个节点需要的数据格式。之后,数据调度组件以每个jobid为Redis的key,转换完格式之后的数据作为value,分别放入Redis的list数据源队列,并以jobid为内容、每个job的setp1监听的key为通知类型发出完成通知。
步骤403a、每个job对应的setp1收到数据调度组件的完成通知后,获取jobid。然后,根据初始化配置时设置的对应的setp1的最大数量和随机数生成指定数量的唯一启动密钥UUID,并以jobid和stepid作为Redis的key,生成的唯一的UUID启动密钥存储到Redis的list中,作为启动密钥队列。之后,每个job对应的step1发出以jobid和stepid作为内容、该job对应的setp1的process的监听key作为通知类型的setp1初始化完成的通知。
步骤404a、各setp1的process收到setp1初始化完成通知,获取jobid和stepid,作为获取数据的key进行主动轮询,以从步骤403a生成的启动密钥队列中获取启动密钥。
在获取到启动密钥后,该process以jobid、stepid、进程所属服务器的ip、进程所属服务器的port作为唯一标识存储到Redis中,以标识该服务器节点在这个jobid的stepid中已经获取过启动密钥。
如果该process后续需要再次获取密钥,那么,该process需判断剩余的启动密钥的剩余数量是否小于或者等于该process的step的最大数量减去服务器节点的数量。若大于,则该process本次不再获取启动密钥,继续轮训;否则再次获取启动密钥。通过这种方式可保证每个节点都有一个进程进行数据处理。
在获取到启动密钥后,该process从步骤402a中生成的数据源队列中拉取数据。根据数据类型,调用该数据类型对应的算法服务(例如人脸比对或者翻拍检测),并将识别完成之后的结果保存到数据库中,同时发出以jobid、stepid和该process对应的随机字符串作为内容,setp2的监听key为通知类型的step1执行完成的通知。
步骤405a、step2收到step1完成通知后,获取jobid。setp2根据配置,生成只包含一个UUID启动密钥的启动密钥队列,并以jobid和setp2id为key,以setp2的process监听的key作为通知类型发出setp2初始化完成的通知。
setp2的process收到step2初始化完成通知,获取jobid和setp2id,并从Redis中对应的启动密钥队列获取启动密钥。之后,根据jobid查询出对应的跑批数据类型,根据数据类型选择对应的统计sql(Structured Query Language,结构化查询语言),替换统计sql的jobid,统计出该类型数据本次job执行完之后的通过率、准确率等信息,并存入数据库。
此外,上述数据处理结果还可进行显示。
通过以上描述可以看出,利用本发明实施例的方案,利用数据调度组件直接向Redis的缓存队列中存储数据,从而减少了数据预处理的时间。数据处理组件采用争抢启动密钥的方式进行处理,处理速度快的数据处理组件可抢到更多的进程,最大化的利用了服务器的资源。由于数据处理组件采用争抢启动密钥的方式进行处理,因此,利用本发明实施例的方案,可使得每个节点处理的数据量是根据数据处理组件的处理能力决定的,可避免出现某个节点数据堆积,其他节点空闲的情况。此外,利用本发明实施例的方案,数据源队列采用Redis的list数据结构实现,充分利用了Redis单进程的特性,有效的避免了消费端重复消费以及进程安全的问题。
参见图5,图5是本发明实施例提供的数据处理方法的流程图。如图5所示,包括以下步骤:
步骤501、根据预配置信息对数据处理组件进行初始化。
具体的,在此步骤中,根据所述预配置信息生成启动密钥,然后将所述启动密钥的信息存储到中间件Redis中,其中,所述启动密钥的信息包括所述启动密钥。
其中,所述预配置信息包括:各个数据处理组件的数量的最大值,各个数据处理组件需要监听的key(键值),以及数据处理组件的各个进程需要监听的key。
在此步骤中,根据所述最大值和随机数生成通用唯一识别码UUID,并将所述UUID作为所述启动密钥。之后,利用所述数据处理组件对应的初始化组件的标识以及所述数据处理组件的标识作为键值key、利用所述启动密钥作为值value,将所述键值key和所述值value对应存储到所述中间件Redis的启动密钥队列中。
步骤502、根据初始化的结果,触发所述数据处理组件的目标进程从中间件Redis获取目标启动密钥。
其中,所述数据处理组件的触发可以是其发出的第一通知消息。当完成初始化操作之后,数据处理组件发送第一通知,所述第一通知以所述第一初始化组件的标识以及所述第一数据处理组件的标识作为内容,以第一待监听key作为通知类型。
步骤503、所述目标进程在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,对所述待处理数据进行处理。
所述目标进程为所述数据处理组件包括的任一进程。
目标进程可响应于所述数据处理组件的触发,获取所述数据处理组件对应的初始化组件的标识以及所述数据处理组件的标识,并以所述数据处理组件对应的初始化组件的标识以及所述数据处理组件的标识作为key,从所述中间件Redis中获取目标启动密钥。在获取到所述目标启动密钥的情况下,从所述中间件Redis的数据源队列中提取待处理数据。其中,所述数据处理组件的触发可以是其发出的第一通知消息。在上述过程中,目标进程可利用启动密钥主动获取数据,从而避免了因数据处理端的资源问题而导致的数据积压、其他空闲服务器资源得不到充分利用的问题,进而提高了服务器资源的利用率。
为了使得进程准确的处理其所要处理的数据,所述目标进程接收所述数据处理组件的第一通知,所述第一通知以所述初始化组件的标识及所述数据处理组件的标识作为内容,以第一待监听key作为通知类型。然后,目标进程将所述第一待监听key和所述目标进程对应的key进行比较。若所述第一待监听key和所述目标进程对应的key一致,则响应于所述数据处理组件的触发,获取所述数据处理组件对应的初始化组件的标识以及所述数据处理组件的标识。
为了保证每个服务器都有进程进行数据处理,在目标进程获取启动密钥之前,所述目标进程比较第一参考值和第二参考值,其中,所述第一参考值为所述中间件Redis的启动密钥队列中当前存储的启动密钥的数量,所述第二参考值为数据处理组件的数量的最大值与服务器的数量之差。若所述第一参考值小于或等于所述第二参考值,则以所述数据处理组件对应的初始化组件的标识以及所述数据处理组件的标识作为key,从所述中间件Redis中获取目标启动密钥,否则继续轮训。
在本发明实施例中,数据处理组件在完成初始化之后,触发其包括的目标进程从中间件Redis获取目标启动密钥,并在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,以对所述待处理数据进行处理。因此,利用本发明实施例的方案,可使得各进程采用争抢启动密钥的方式进行数据处理,从而使得处理速度快的进程处理更多的数据,进而提高了服务器的资源利用率。同时,由于Redis单进程的特性,采用list数据结构,因此,可避免多个数据处理组件的多个进程的重复消费和进程安全问题。
本发明实施例还提供了一种数据处理装置,应用于第一数据处理组件,所述第一数据处理组件包括至少一个进程。参见图6,图6是本发明实施例提供的终端设备的结构图。由于数据处理装置解决问题的原理与本发明实施例中数据处理方法相似,因此该数据处理装置的实施可以参见方法的实施,重复之处不再赘述。
如图6所示,数据处理装置600包括:
第一初始化模块601,用于根据预配置信息进行初始化;第一触发模块602,用于根据初始化的结果,触发所述第一数据处理组件的目标进程从中间件Redis获取目标启动密钥,并在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,以对所述待处理数据进行处理。所述目标进程为所述第一数据处理组件包括的任一进程。
可选的,第一初始化模块601包括:第一生成子模块,用于根据所述预配置信息生成启动密钥;第一存储子模块,用于将所述启动密钥的信息存储到中间件Redis中。
可选的,所述预配置信息包括:第一数据处理组件的数量的最大值。所述第一生成子模块用于,根据所述最大值和随机数生成通用唯一识别码UUID,并将所述UUID作为所述启动密钥。
可选的,所述第一存储子模块,用于利用所述第一数据处理组件对应的初始化组件的标识以及所述第一数据处理组件的标识作为键值key、利用所述启动密钥作为值value,将所述key和所述value对应存储到所述中间件Redis的启动密钥队列中。
可选的,所述装置还可包括:第一发送模块,用于发送第一通知,所述第一通知以所述初始化组件的标识以及所述第一数据处理组件的标识作为内容,以第一待监听key作为通知类型。
可选的,所述装置还可包括:第一获取模块,用于从初始化组件获取所述预配置信息,其中,所述预配置信息包括:第一数据处理组件的数量的最大值,所述第一数据处理组件需要监听的key,以及所述第一数据处理组件的各个进程需要监听的key。
可选的,所述目标进程用于:
响应于所述第一数据处理组件的触发,获取所述第一数据处理组件对应的初始化组件的标识以及所述第一数据处理组件的标识;
以所述第一数据处理组件对应的初始化组件的标识以及所述第一数据处理组件的标识作为key,从所述中间件Redis中获取目标启动密钥;
在获取到所述目标启动密钥的情况下,从所述中间件Redis的数据源队列中提取待处理数据。
可选的,所述目标进程用于:
所述目标进程接收所述第一数据处理组件的第一通知,所述第一通知以所述初始化组件的标识及所述第一数据处理组件的标识作为内容,以第一待监听key作为通知类型;
将所述第一待监听key和所述目标进程对应的key进行比较;
所述响应于所述第一数据处理组件的触发,获取所述第一数据处理组件对应的初始化组件的标识以及所述第一数据处理组件的标识,包括:
若所述第一待监听key和所述目标进程对应的key一致,则响应于所述第一数据处理组件的触发,获取所述第一数据处理组件对应的初始化组件的标识以及所述第一数据处理组件的标识。
可选的,所述目标进程用于:
比较第一参考值和第二参考值,其中,所述第一参考值为所述中间件Redis的启动密钥队列中当前存储的启动密钥的数量,所述第二参考值为第一数据处理组件的数量的最大值与服务器的数量之差;
所述以所述第一数据处理组件对应的初始化组件的标识以及所述第一数据处理组件的标识作为key,从所述中间件Redis中获取目标启动密钥,包括:
若所述第一参考值小于或等于所述第二参考值,则以所述第一数据处理组件对应的初始化组件的标识以及所述第一数据处理组件的标识作为key,从所述中间件Redis中获取目标启动密钥。
可选的,所述目标进程还用于执行以下至少一个步骤:
向所述中间件Redis的标识存储队列中添加所述目标进程的标识,所述目标进程的标识用于表示所述目标进程已获取启动密钥;
利用所述第一数据处理组件对应的初始化组件的标识、所述第一数据处理组件的标识以及所述目标进程对应的随机字符串作为key,利用所述目标进程的数据处理结果为value,将所述key和所述value对应存储到所述中间件Redis的数据源队列中;
发送第二通知,所述第二通知以所述第一数据处理组件对应的初始化组件的标识、所述第一数据处理组件的标识、所述目标进程对应的随机字符串作作为内容,以第二待监听key作为通知类型。
本发明实施例提供的装置,可以执行上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
本发明实施例还提供了一种数据处理装置,应用于第一初始化组件。参见图7,图7是本发明实施例提供的终端设备的结构图。由于数据处理装置解决问题的原理与本发明实施例中数据处理方法相似,因此该数据处理装置的实施可以参见方法的实施,重复之处不再赘述。
如图7所示,数据处理装置700包括:
第一获取模块701,用于获取待处理的数据以及预配置信息;第一发送模块702,用于向第一数据调度组件发送所述待处理数据,以使所述第一数据调度组件将所述待处理数据存储到中间件Redis中;第一初始化模块703,用于根据所述预配置信息对第一数据处理组件进行初始化。
可选的,所述第一发送模块702用于,向第一数据调度组件发送所述待处理数据,以使所述第一数据调度组件将所述待处理数据存储到中间件Redis中。
其中,所述第一数据调度组件用于:对所述待处理数据进行预处理,并将预处理后的待处理数据存储到所述中间件Redis的数据源队列中;发送第三通知,所述第三通知以所述第一初始化组件的标识作为内容,以第三待监听key作为通知类型。
本发明实施例提供的装置,可以执行上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
本发明实施例还提供了一种数据处理装置。参见图8,图8是本发明实施例提供的终端设备的结构图。由于数据处理装置解决问题的原理与本发明实施例中数据处理方法相似,因此该数据处理装置的实施可以参见方法的实施,重复之处不再赘述。
如图8所示,数据处理装置800包括:
初始化模块801,用于根据预配置信息对数据处理组件进行初始化;触发模块802,用于根据初始化的结果,触发所述数据处理组件的目标进程从中间件Redis获取目标启动密钥;处理模块803,用于所述目标进程在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,对所述待处理数据进行处理;所述目标进程为所述数据处理组件包括的任一进程。
可选的,所述初始化模块801包括:
启动子模块,用于根据所述预配置信息生成启动密钥;存储子模块,用于将所述启动密钥的信息存储到中间件Redis中,其中,所述启动密钥的信息包括所述启动密钥。
可选的,所述处理模块803包括:
第一获取子模块,用于获取所述数据处理组件对应的初始化组件的标识以及所述数据处理组件的标识;
第二获取子模块,用于以所述数据处理组件对应的初始化组件的标识以及所述数据处理组件的标识作为key,从所述中间件Redis中获取目标启动密钥;
处理子模块,用于在获取到所述目标启动密钥的情况下,从所述中间件Redis的数据源队列中提取待处理数据,对所述待处理数据进行处理。
可选的,所述装置还包括:
第一接收模块,用于接收所述数据处理组件的第一通知,所述第一通知以所述初始化组件的标识及所述数据处理组件的标识作为内容,以第一待监听key作为通知类型;
第一比较模块,用于将所述第一待监听key和所述目标进程对应的key进行比较;
所述第一获取子模块,用于若所述第一待监听key和所述目标进程对应的key一致,则获取所述数据处理组件对应的初始化组件的标识以及所述数据处理组件的标识。
可选的,所述装置还包括:
第二比较模块,用于比较第一参考值和第二参考值,其中,所述第一参考值为所述中间件Redis的启动密钥队列中当前存储的启动密钥的数量,所述第二参考值为数据处理组件的数量的最大值与服务器的数量之差;
所述第二获取子模块,用于若所述第一参考值小于或等于所述第二参考值,则以所述数据处理组件对应的初始化组件的标识以及所述数据处理组件的标识作为key,从所述中间件Redis中获取目标启动密钥。
本发明实施例提供的装置,可以执行上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
本发明实施例还提供一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的程序;所述处理器,用于读取存储器中的程序实现如上方法实施例所述的步骤。
本发明实施例还提供一种可读存储介质,可读存储介质上存储有程序,该程序被处理器执行时实现上述数据处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的可读存储介质,可以是处理器能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(MO)等)、光学存储器(例如CD、DVD、BD、HVD等)、以及半导体存储器(例如ROM、EPROM、EEPROM、非易失性存储器(NAND FLASH)、固态硬盘(SSD))等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。根据这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁盘、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
Claims (19)
1.一种数据处理方法,其特征在于,应用于第一数据处理组件,所述第一数据处理组件包括至少一个进程;所述方法包括:
根据预配置信息进行初始化;
根据初始化的结果,触发所述第一数据处理组件的目标进程从中间件远程字典服务器Redis获取目标启动密钥,并在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,以对所述待处理数据进行处理;
所述目标进程为所述第一数据处理组件包括的任一进程。
2.根据权利要求1所述的方法,其特征在于,所述根据预配置信息进行初始化,包括:
根据所述预配置信息生成启动密钥;
将所述启动密钥的信息存储到中间件Redis中,其中,所述启动密钥的信息包括所述启动密钥。
3.根据权利要求2所述的方法,其特征在于,所述预配置信息包括:所述第一数据处理组件的数量的最大值;所述根据预配置信息生成启动密钥,包括:
根据所述最大值和随机数生成通用唯一识别码UUID,并将所述UUID作为所述启动密钥。
4.根据权利要求2所述的方法,其特征在于,所述将所述启动密钥的信息存储到中间件Redis中,包括:
利用所述第一数据处理组件对应的第一初始化组件的标识以及所述第一数据处理组件的标识作为键值key、利用所述启动密钥作为值value,将所述键值key和所述值value对应存储到所述中间件Redis的启动密钥队列中。
5.根据权利要求4所述的方法,其特征在于,所述根据预配置信息进行初始化还包括:
发送第一通知,所述第一通知以所述第一初始化组件的标识以及所述第一数据处理组件的标识作为内容,以第一待监听key作为通知类型。
6.根据权利要求1所述的方法,其特征在于,在所述根据预配置信息进行初始化之前,所述方法还包括:
从第一初始化组件获取所述预配置信息,其中,所述预配置信息包括:所述第一数据处理组件的数量的最大值,所述第一数据处理组件需要监听的key,以及所述第一数据处理组件的各个进程需要监听的key。
7.根据权利要求1所述的方法,其特征在于,所述目标进程从中间件Redis获取目标启动密钥,并在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,包括:
响应于所述第一数据处理组件的触发,获取所述第一数据处理组件对应的第一初始化组件的标识以及所述第一数据处理组件的标识;
以所述第一数据处理组件对应的第一初始化组件的标识以及所述第一数据处理组件的标识作为key,从所述中间件Redis中获取目标启动密钥;
在获取到所述目标启动密钥的情况下,从所述中间件Redis的数据源队列中提取待处理数据。
8.根据权利要求7所述的方法,其特征在于,在所述获取所述第一数据处理组件对应的第一初始化组件的标识以及所述第一数据处理组件的标识之前,所述方法还包括:
所述目标进程接收所述第一数据处理组件的第一通知,所述第一通知以所述第一初始化组件的标识及所述第一数据处理组件的标识作为内容,以第一待监听key作为通知类型;
将所述第一待监听key和所述目标进程对应的key进行比较;
所述响应于所述第一数据处理组件的触发,获取所述第一数据处理组件对应的第一初始化组件的标识以及所述第一数据处理组件的标识,包括:
若所述第一待监听key和所述目标进程对应的key一致,则响应于所述第一数据处理组件的触发,获取所述第一数据处理组件对应的第一初始化组件的标识以及所述第一数据处理组件的标识。
9.根据权利要求7所述的方法,其特征在于,在所述获取所述第一数据处理组件对应的第一初始化组件的标识以及所述第一数据处理组件的标识之后,所述方法还包括:
比较第一参考值和第二参考值,其中,所述第一参考值为所述中间件Redis的启动密钥队列中当前存储的启动密钥的数量,所述第二参考值为第一数据处理组件的数量的最大值与服务器的数量之差;
所述以所述第一数据处理组件对应的第一初始化组件的标识以及所述第一数据处理组件的标识作为key,从所述中间件Redis中获取目标启动密钥,包括:
若所述第一参考值小于或等于所述第二参考值,则以所述第一数据处理组件对应的第一初始化组件的标识以及所述第一数据处理组件的标识作为key,从所述中间件Redis中获取目标启动密钥。
10.根据权利要求7所述的方法,其特征在于,所述方法还包括以下至少一个步骤:
向所述中间件Redis的标识存储队列中添加所述目标进程的标识,所述目标进程的标识用于表示所述目标进程已获取启动密钥;
利用所述第一数据处理组件对应的第一初始化组件的标识、所述第一数据处理组件的标识以及所述目标进程对应的随机字符串作为key,利用所述目标进程的数据处理结果为value,将所述key和所述value对应存储到所述中间件Redis的数据源队列中;
发送第二通知,所述第二通知以所述第一数据处理组件对应的第一初始化组件的标识、所述第一数据处理组件的标识、所述目标进程对应的随机字符串作为内容,以第二待监听key作为通知类型。
11.一种数据处理方法,其特征在于,应用于第一初始化组件;所述方法包括:
获取待处理的数据以及预配置信息;
将所述待处理数据存储到中间件Redis中;
根据所述预配置信息对第一数据处理组件进行初始化。
12.一种数据处理方法,其特征在于,所述方法包括:
根据预配置信息对数据处理组件进行初始化;
根据初始化的结果,触发所述数据处理组件的目标进程从中间件Redis获取目标启动密钥;
所述目标进程在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,对所述待处理数据进行处理;
所述目标进程为所述数据处理组件包括的任一进程。
13.根据权利要求12所述的方法,其特征在于,所述根据预配置信息对数据处理组件进行初始化,包括:
根据所述预配置信息生成启动密钥;
将所述启动密钥的信息存储到中间件Redis中,其中,所述启动密钥的信息包括所述启动密钥。
14.根据权利要求12所述的方法,其特征在于,所述目标进程在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,对所述待处理数据进行处理,包括:
获取所述数据处理组件对应的初始化组件的标识以及所述数据处理组件的标识;
以所述数据处理组件对应的初始化组件的标识以及所述数据处理组件的标识作为key,从所述中间件Redis中获取目标启动密钥;
在获取到所述目标启动密钥的情况下,从所述中间件Redis的数据源队列中提取待处理数据,对所述待处理数据进行处理。
15.根据权利要求14所述的方法,其特征在于,在所述获取所述数据处理组件对应的初始化组件的标识以及所述数据处理组件的标识之前,所述方法还包括:
接收所述数据处理组件的第一通知,所述第一通知以所述初始化组件的标识及所述数据处理组件的标识作为内容,以第一待监听key作为通知类型;
将所述第一待监听key和所述目标进程对应的key进行比较;
所述获取所述数据处理组件对应的初始化组件的标识以及所述数据处理组件的标识,包括:
若所述第一待监听key和所述目标进程对应的key一致,则获取所述数据处理组件对应的初始化组件的标识以及所述数据处理组件的标识。
16.根据权利要求14所述的方法,其特征在于,在所述获取所述数据处理组件对应的初始化组件的标识以及所述数据处理组件的标识之后,所述方法还包括:
比较第一参考值和第二参考值,其中,所述第一参考值为所述中间件Redis的启动密钥队列中当前存储的启动密钥的数量,所述第二参考值为数据处理组件的数量的最大值与服务器的数量之差;
所述以所述数据处理组件对应的初始化组件的标识以及所述数据处理组件的标识作为key,从所述中间件Redis中获取目标启动密钥,包括:
若所述第一参考值小于或等于所述第二参考值,则以所述数据处理组件对应的初始化组件的标识以及所述数据处理组件的标识作为key,从所述中间件Redis中获取目标启动密钥。
17.一种数据处理系统,其特征在于,包括:初始化组件,数据处理组件,以及中间件Redis;
所述初始化组件,用于获取待处理的数据以及预配置信息,将所述待处理数据存储到中间件Redis中以及根据所述预配置信息对第一数据处理组件进行初始化;
所述数据处理组件,用于根据预配置信息进行初始化,以及,根据初始化的结果,触发所述第一数据处理组件的目标进程从中间件Redis获取目标启动密钥,并在获取到目标启动密钥的情况下,从所述中间件Redis提取待处理数据,以对所述待处理数据进行处理;
所述目标进程为所述数据处理组件包括的任一进程。
18.一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的程序;其特征在于,
所述处理器,用于读取存储器中的程序实现包括如权利要求1至10中任一项所述的数据处理方法中的步骤;或者实现如权利要求11至13中任一项所述的数据处理方法中的步骤;或者实现如权利要求12至16中任一项所述的数据处理方法中的步骤。
19.一种可读存储介质,用于存储程序,其特征在于,所述程序被处理器执行时实现包括如权利要求1至10中任一项所述的数据处理方法中的步骤;或者实现如权利要求11至13中任一项所述的数据处理方法中的步骤;或者实现如权利要求12至16中任一项所述的数据处理方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011201890.4A CN112463828B (zh) | 2020-11-02 | 2020-11-02 | 一种数据处理方法、装置、设备、系统及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011201890.4A CN112463828B (zh) | 2020-11-02 | 2020-11-02 | 一种数据处理方法、装置、设备、系统及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112463828A true CN112463828A (zh) | 2021-03-09 |
CN112463828B CN112463828B (zh) | 2021-07-27 |
Family
ID=74834851
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011201890.4A Active CN112463828B (zh) | 2020-11-02 | 2020-11-02 | 一种数据处理方法、装置、设备、系统及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112463828B (zh) |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104125254A (zh) * | 2013-04-27 | 2014-10-29 | 博雅网络游戏开发(深圳)有限公司 | 获取平台用户资料的方法和系统 |
CN104539620A (zh) * | 2014-12-29 | 2015-04-22 | 飞天诚信科技股份有限公司 | 一种安全的双向ssl认证方法和中间件 |
CN105278922A (zh) * | 2015-09-29 | 2016-01-27 | 新浪网技术(中国)有限公司 | 一种数据分发方法、系统及装置 |
CN106293940A (zh) * | 2016-08-08 | 2017-01-04 | 浪潮通用软件有限公司 | 一种金融行业中并行跑批的方法 |
WO2017075923A1 (zh) * | 2015-11-06 | 2017-05-11 | 网宿科技股份有限公司 | 一种Redis Key管理方法及系统 |
CN107124522A (zh) * | 2017-04-18 | 2017-09-01 | 北京思特奇信息技术股份有限公司 | 一种分布式话单采集方法及系统 |
US20180260435A1 (en) * | 2017-03-13 | 2018-09-13 | Molbase (Shanghai) Biotechnology Co., Ltd. | Redis-based database data aggregation and synchronization method |
CN108563515A (zh) * | 2018-03-14 | 2018-09-21 | 中国银联股份有限公司 | 一种业务进程管理方法和系统 |
CN109995524A (zh) * | 2019-03-22 | 2019-07-09 | 西安电子科技大学 | 一种基于加解密资源调度和密钥管理的加密数据库及方法 |
CN110377423A (zh) * | 2019-06-28 | 2019-10-25 | 浪潮电子信息产业股份有限公司 | 服务器监控数据采集方法及装置、存储介质及电子设备 |
CN110445828A (zh) * | 2019-06-14 | 2019-11-12 | 平安科技(深圳)有限公司 | 一种基于Redis的数据分布式处理方法及其相关设备 |
CN111045802A (zh) * | 2019-11-22 | 2020-04-21 | 中国联合网络通信集团有限公司 | Redis集群组件调度系统及方法、平台设备 |
CN111311142A (zh) * | 2019-12-31 | 2020-06-19 | 江苏苏宁物流有限公司 | 一种定制化实时数据高效推送方法及系统 |
CN111414424A (zh) * | 2020-03-23 | 2020-07-14 | 北京思特奇信息技术股份有限公司 | 一种配置数据自动同步redis的方法、系统、介质及设备 |
CN111444002A (zh) * | 2020-03-25 | 2020-07-24 | 深圳前海微众银行股份有限公司 | 一种任务调度方法及装置 |
CN111797120A (zh) * | 2020-06-22 | 2020-10-20 | 深圳壹账通智能科技有限公司 | 数据获取方法、装置、计算机设备及可读存储介质 |
-
2020
- 2020-11-02 CN CN202011201890.4A patent/CN112463828B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104125254A (zh) * | 2013-04-27 | 2014-10-29 | 博雅网络游戏开发(深圳)有限公司 | 获取平台用户资料的方法和系统 |
CN104539620A (zh) * | 2014-12-29 | 2015-04-22 | 飞天诚信科技股份有限公司 | 一种安全的双向ssl认证方法和中间件 |
CN105278922A (zh) * | 2015-09-29 | 2016-01-27 | 新浪网技术(中国)有限公司 | 一种数据分发方法、系统及装置 |
WO2017075923A1 (zh) * | 2015-11-06 | 2017-05-11 | 网宿科技股份有限公司 | 一种Redis Key管理方法及系统 |
CN106293940A (zh) * | 2016-08-08 | 2017-01-04 | 浪潮通用软件有限公司 | 一种金融行业中并行跑批的方法 |
US20180260435A1 (en) * | 2017-03-13 | 2018-09-13 | Molbase (Shanghai) Biotechnology Co., Ltd. | Redis-based database data aggregation and synchronization method |
CN107124522A (zh) * | 2017-04-18 | 2017-09-01 | 北京思特奇信息技术股份有限公司 | 一种分布式话单采集方法及系统 |
CN108563515A (zh) * | 2018-03-14 | 2018-09-21 | 中国银联股份有限公司 | 一种业务进程管理方法和系统 |
CN109995524A (zh) * | 2019-03-22 | 2019-07-09 | 西安电子科技大学 | 一种基于加解密资源调度和密钥管理的加密数据库及方法 |
CN110445828A (zh) * | 2019-06-14 | 2019-11-12 | 平安科技(深圳)有限公司 | 一种基于Redis的数据分布式处理方法及其相关设备 |
CN110377423A (zh) * | 2019-06-28 | 2019-10-25 | 浪潮电子信息产业股份有限公司 | 服务器监控数据采集方法及装置、存储介质及电子设备 |
CN111045802A (zh) * | 2019-11-22 | 2020-04-21 | 中国联合网络通信集团有限公司 | Redis集群组件调度系统及方法、平台设备 |
CN111311142A (zh) * | 2019-12-31 | 2020-06-19 | 江苏苏宁物流有限公司 | 一种定制化实时数据高效推送方法及系统 |
CN111414424A (zh) * | 2020-03-23 | 2020-07-14 | 北京思特奇信息技术股份有限公司 | 一种配置数据自动同步redis的方法、系统、介质及设备 |
CN111444002A (zh) * | 2020-03-25 | 2020-07-24 | 深圳前海微众银行股份有限公司 | 一种任务调度方法及装置 |
CN111797120A (zh) * | 2020-06-22 | 2020-10-20 | 深圳壹账通智能科技有限公司 | 数据获取方法、装置、计算机设备及可读存储介质 |
Non-Patent Citations (1)
Title |
---|
杨超 等: "基于消息队列的多进程数据处理系统", 《计算机工程与设计》 * |
Also Published As
Publication number | Publication date |
---|---|
CN112463828B (zh) | 2021-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106817295B (zh) | 一种消息处理装置和方法 | |
CN111752799A (zh) | 一种业务链路跟踪方法、装置、设备及储存介质 | |
CN110232010A (zh) | 一种告警方法、告警服务器及监控服务器 | |
CN109389299B (zh) | 工作流流程部署方法、装置、计算机设备和存储介质 | |
CN111666145A (zh) | 消息队列的消息处理方法、系统和计算机设备 | |
CN111708794B (zh) | 基于大数据平台的数据比对方法、装置和计算机设备 | |
CN112783725A (zh) | 指标采集方法及装置 | |
CN111625342B (zh) | 一种数据溯源方法、装置及服务器 | |
WO2023131058A1 (zh) | 一种企业数字中台中资源服务应用的调度系统和方法 | |
CN116049109A (zh) | 一种基于过滤器的文件校验方法、系统、设备和介质 | |
CN113064661A (zh) | 批量任务的内存处理方法、装置、电子设备及存储介质 | |
CN112463828B (zh) | 一种数据处理方法、装置、设备、系统及可读存储介质 | |
CN107870822B (zh) | 基于分布式系统的异步任务控制方法及系统 | |
CN116976457A (zh) | 模型加载方法、推理系统、装置和计算机设备 | |
CN114296965A (zh) | 特征检索方法、装置、电子设备及计算机存储介质 | |
CN110134547B (zh) | 一种基于中间件的重复数据删除方法和相关装置 | |
CN112925659A (zh) | 消息处理方法、装置、设备及计算机存储介质 | |
CN112714163A (zh) | 数据传输方法、装置、电子设备、介质和计算机程序产品 | |
CN111045787A (zh) | 一种快速继续实验方法及系统 | |
CN110928572A (zh) | 接口调用与业务系统分离方法、系统和计算机设备 | |
CN112840320A (zh) | 一种资源平台独享资源的方法、装置及电子设备 | |
CN112684985B (zh) | 一种数据的写入方法和装置 | |
CN112241672B (zh) | 一种身份数据的关联方法、装置、电子设备及存储介质 | |
CN112328451B (zh) | 一种基于场景的服务监控方法 | |
CN110837458B (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 |