数据处理方法、装置、设备、介质及程序产品

文档序号:1952027 发布日期:2021-12-10 浏览:2次 >En<

阅读说明:本技术 数据处理方法、装置、设备、介质及程序产品 (Data processing method, apparatus, device, medium, and program product ) 是由 孟可 彭安 钱熙 于 2021-02-23 设计创作,主要内容包括:本申请提供了一种数据处理方法、装置、设备、介质及程序产品,通过获取第一缓存区的容量信息以及数据使用信息,第一缓存区用于存储数据生成端产生的数据,容量信息用于表示容量的动态使用情况,数据使用信息用于表示数据使用端中各个使用节点对数据的使用情况;根据容量信息以及数据使用信息,将满足预设转移条件的数据从第一缓存区转移到历史数据存储区。解决了现有技术中数据生成端以及数据使用端之间的数据传输受制于数据处理能力最若的数据使用节点,造成系统整体数据处理能力较低的技术问题。同时可以从历史数据存储区调用数据,使得新增数据使用节点更为简便,也提高了各个数据使用节点的数据安全性。(The application provides a data processing method, a device, equipment, a medium and a program product, wherein capacity information and data use information of a first cache area are obtained, the first cache area is used for storing data generated by a data generation end, the capacity information is used for representing dynamic use conditions of capacity, and the data use information is used for representing use conditions of each use node in a data use end on the data; and transferring the data meeting the preset transfer condition from the first cache region to the historical data storage region according to the capacity information and the data use information. The technical problem that in the prior art, data transmission between a data generating end and a data using end is limited by a data using node with the most data processing capacity, so that the overall data processing capacity of the system is low is solved. Meanwhile, data can be called from the historical data storage area, so that newly-added data using nodes are simpler and more convenient, and the data safety of each data using node is also improved.)

数据处理方法、装置、设备、介质及程序产品

技术领域

本申请涉及计算机数据处理领域,尤其涉及一种数据处理方法、装置、设备、介质及程序产品。

背景技术

在计算机数据处理的时候由于数据使用端和数据生成端两者时间上经常不是同步的,并且两端的处理速度也不一致,此时就需要一个缓存区来进行数据缓冲,实现非同步的数据传递处理。

随着数据使用端网络的不断扩展,就会存在多个使用节点都需要使用缓存区中的数据,但是每个使用节点的处理能力却不相同。这就使得整个系统的数据处理效率受制于处理速率最低的使用节点,或者简称为最短板问题。

在缓存区容量有限的情况下,让数据生成端以及数据使用端不被数据处理能力最弱的节点限制整体的数据传输效率就成为了亟待解决的技术问题。

发明内容

本申请提供一种数据处理方法、装置、设备、介质及程序产品,以解决现有技术中数据生成端以及数据使用端之间的数据传输受制于数据处理能力最若的数据使用节点,造成系统整体数据处理能力较低的技术问题。

第一个方面,本申请提供一种数据处理方法,包括:

获取第一缓存区的容量信息以及数据使用信息,所述第一缓存区用于存储数据生成端产生的数据,所述容量信息用于表示容量的动态使用情况,所述数据使用信息用于表示数据使用端中各个使用节点对所述数据的使用情况;

根据所述容量信息以及所述数据使用信息,将满足预设转移条件的数据从所述第一缓存区转移到历史数据存储区。

在一种可能的设计中,所述预设转移条件包括第一转移条件,所述第一转移条件用于满足数据生成端的数据生产效率要求,对应的,所述根据所述容量信息以及所述数据使用信息,将满足预设转移条件的数据从所述第一缓存区转移到历史数据存储区,包括:

根据所述容量信息确定剩余容量信息,所述剩余容量信息包括:剩余容量,和/或,所述剩余容量的变化率;

若所述剩余容量小于或等于预设容量阈值,和/或所述变化率大于或等于预设变化阈值,则根据所述数据使用信息,按预设周期将待转移数据从所述第一缓存区转移到历史数据存储区。

在一种可能的设计中,所述预设转移条件包括第二转移条件,所述第二转移条件用于满足高速数据使用节点的数据使用要求,所述高速数据使用节点的数据使用速率大于或等于预设速率,对应的,所述根据所述容量信息以及所述数据使用信息,将满足预设转移条件的数据从所述第一缓存区转移到历史数据存储区,包括:

根据所述数据使用信息,确定已使用数据的比例,所述已使用数据为被至少一个所述节点使用过的数据;

当所述比例大于或等于预设比例时,若所述已使用数据的使用次数大于或等于预设使用次数,则根据所述数据使用信息,将待转移数据从所述第一缓存区转移到历史数据存储区。

可选的,所述待转移数据包括已使用数据,所述已使用数据为被至少一个所述节点使用过的数据。

可选的,所述待转移数据包括所有所述第一缓存区中的数据。

在一种可能的设计中,所述预设转移条件包括第三转移条件,所述第三转移条件用于在数据被所有使用节点使用后及时清理所述第一缓存区,对应的,所述根据所述容量信息以及所述数据使用信息,将满足预设转移条件的数据从所述第一缓存区转移到历史数据存储区,还包括:

若所述第一缓存区中的所有数据均被所有所述数据使用节点使用完毕,则将所有所述数据转移到所述历史数据存储区。

在一种可能的设计中,所述数据处理方法还包括:

获取数据使用端中数据使用节点的历史数据使用请求;

根据所述历史数据使用请求,在所述历史数据存储区中确定目标历史数据;

向所述数据使用节点发送所述目标历史数据。

在一种可能的设计中,所述向所述数据使用节点发送所述目标历史数据,包括:

若所述第一缓存区的剩余容量满足所述目标历史数据的存储要求,则将所述目标历史数据存储到所述第一缓存区,以供所述数据使用节点使用。

可选的,所述向所述数据使用节点发送所述目标历史数据,包括:

将所述第一缓存区的剩余容量不满足所述目标历史数据的存储要求,则将所述目标历史数据存储到第二缓存区,以供所述数据使用节点使用。

在一种可能的设计中,所述向所述数据使用节点发送所述目标历史数据,包括:

将所述目标历史数据存储到第二缓存区,以供所述数据使用节点使用。

第二方面,本申请提供一种数据处理装置,包括:

获取模块,用于获取第一缓存区的容量信息以及数据使用信息,所述第一缓存区用于存储数据生成端产生的数据,所述容量信息用于表示容量的动态使用情况,所述数据使用信息用于表示数据使用端中各个使用节点对所述数据的使用情况;

处理模块,用于根据所述容量信息以及所述数据使用信息,将满足预设转移条件的数据从所述第一缓存区转移到历史数据存储区。

在一种可能的设计中,所述预设转移条件包括第一转移条件,所述第一转移条件用于满足数据生成端的数据生产效率要求,对应的,所述处理模块,具体用于:

根据所述容量信息确定剩余容量信息,所述剩余容量信息包括:剩余容量,和/或,所述剩余容量的变化率;

若所述剩余容量小于或等于预设容量阈值,和/或所述变化率大于或等于预设变化阈值,则根据所述数据使用信息,按预设周期将待转移数据从所述第一缓存区转移到历史数据存储区。

在一种可能的设计中,所述预设转移条件包括第二转移条件,所述第二转移条件用于满足高速数据使用节点的数据使用要求,所述高速数据使用节点的数据使用速率大于或等于预设速率,对应的,所述处理模块,具体用于:

根据所述数据使用信息,确定已使用数据的比例,所述已使用数据为被至少一个所述节点使用过的数据;

当所述比例大于或等于预设比例时,若所述已使用数据的使用次数大于或等于预设使用次数,则根据所述数据使用信息,将待转移数据从所述第一缓存区转移到历史数据存储区。

可选的,所述待转移数据包括已使用数据,所述已使用数据为被至少一个所述节点使用过的数据。

可选的,所述待转移数据包括所有所述第一缓存区中的数据。

在一种可能的设计中,所述预设转移条件包括第三转移条件,所述第三转移条件用于在数据被所有使用节点使用后及时清理所述第一缓存区,对应的,所述处理模块,具体用于:

若所述第一缓存区中的所有数据均被所有所述数据使用节点使用完毕,则将所有所述数据转移到所述历史数据存储区。

在一种可能的设计中,所述获取模块,还用于获取数据使用端中数据使用节点的历史数据使用请求;

所述处理模块,还用于根据所述历史数据使用请求,在所述历史数据存储区中确定目标历史数据;

所述处理模块,还用于向所述数据使用节点发送所述目标历史数据。

在一种可能的设计中,所述处理模块,还用于:

若所述第一缓存区的剩余容量满足所述目标历史数据的存储要求,则将所述目标历史数据存储到所述第一缓存区,以供所述数据使用节点使用。

可选的,所述处理模块,还用于向所述数据使用节点发送所述目标历史数据,具体包括:

将所述第一缓存区的剩余容量不满足所述目标历史数据的存储要求,则将所述目标历史数据存储到第二缓存区,以供所述数据使用节点使用。

在一种可能的设计中,所述处理模块,还用于向所述数据使用节点发送所述目标历史数据,具体包括:

将所述目标历史数据存储到第二缓存区,以供所述数据使用节点使用。

第三方面,本申请提供一种数据处理系统,包括:数据生成端、数据缓存端以及数据使用端;其中,

所述数据生成端用于产生待使用数据,并将所述待使用数据存入所述数据缓存端;

所述数据缓存端包括第一缓存区以及历史数据存储区,所述历史数据存储区用于存储所述第一缓存区中满足预设转移条件的数据,可选的,所述数据缓存端还包括第二缓存区,所述第二缓存区用于在所述数据使用节点请求使用历史数据时,将目标历史数据从所述历史数据存储区存储到所述第二缓存区,以供所述数据使用节点使用;

所述数据使用端包括至少一个数据使用节点,所述数据使用节点用于调用所述第一缓存区或历史数据存储区中的数据;

所述数据生成端或所述数据缓存端还用于实现第一方面所提供的任意一种可能的数据处理方法。

第四个方面,本申请提供一种电子设备,包括:

存储器,用于存储程序指令;

处理器,用于调用并执行所述存储器中的程序指令,执行第一方面所提供的任意一种可能的数据处理方法。

第五个方面,本申请提供一种存储介质,所述可读存储介质中存储有计算机程序,所述计算机程序用于执行第一方面所提供的任意一种可能的数据处理方法。

第六方面,本申请还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面所提供的任意一种可能的数据处理方法。

本申请提供了一种数据处理方法、装置、设备、介质及程序产品,通过获取第一缓存区的容量信息以及数据使用信息,第一缓存区用于存储数据生成端产生的数据,容量信息用于表示容量的动态使用情况,数据使用信息用于表示数据使用端中各个使用节点对数据的使用情况;根据容量信息以及数据使用信息,将满足预设转移条件的数据从第一缓存区转移到历史数据存储区。解决了现有技术中数据生成端以及数据使用端之间的数据传输受制于数据处理能力最若的数据使用节点,造成系统整体数据处理能力较低的技术问题。同时可以从历史数据存储区调用数据,使得新增数据使用节点更为简便,也提高了各个数据使用节点的数据安全性。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。

图1为本申请实施例提供的数据处理方法的应用场景示意图;

图2为本申请提供的一种数据处理方法的流程示意图;

图3为本申请实施例提供的另一种数据处理方法的流程示意图;

图4为本申请实施例提供的又一种数据处理方法的流程示意图;

图5为本申请实施例提供的再一种数据处理方法的流程示意图;

图6为本申请实施例提供的又另一种数据处理方法的流程示意图;

图7为本申请实施例提供的一种数据处理装置的结构示意图;

图8为本申请提供的一种电子设备的结构示意图。

通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,包括但不限于对多个实施例的组合,都属于本申请保护的范围。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

随着计算机处理技术的不断发展,数据的处理已经不是仅有一个处理终端来完成,而是形成了多终端分布式处理的结构。即使是一个电子设备当中,其数据的处理也经常是由多个芯片来完成的。但是无论多么复杂的结构,其最终依然可以分为两类,或者说是两端,即数据生成端和数据使用端。

为了充分发挥两端的电子设备各自的最佳性能,数据生成端和数据使用端之间是独立运作的,这就造成了数据生成端和数据使用端之间并不是同步运行的,并且在任意一端中,也可能包括多个不同的节点,如数据使用端就可以包括多个数据使用节点。而不同的数据使用节点间也存在着数据传输、处理能力的区别,这就使得不同数据使用节点的数据处理能力有强有弱。

为了解决数据生成端和数据使用端之间时间维度不同步的问题,引入了缓冲区或者说是缓存区,用来临时存储数据生成端产生的数据,因为数据生成端一般具备较快的数据处理能力。比如在电脑中,中央处理器CPU其数据处理能力就远超其它的设备,因此要引入内存来进行缓冲。

但是由于缓存区的容量却是有限的,如果数据使用端没有及时使用在缓存区中的数据,就会造成缓存区被占满,此时数据生成端也只能停止产生数据。

这就是说缓存区虽然能够调节数据生成端和数据使用端两者之间时间维度不同步的问题,但受限于其本身的容量,缓存区是无法做成无限大的。但是数据生成端和数据使用端的处理速度的差异确实存在越来越大的趋势。因此,常用的做法是给缓存区扩大容量,比如手机缓冲内存从1G升级为2G、4G、8G等等,但是再增加就可能受到设备本身空间体积的限制,或者能耗的限制了。因此这显然不是一个长久之计。

这就催生了现有技术反过来去提升数据使用端的处理能力,来缩小两者间数据不同步的差异。但是对于某些应用场景来说,其本身应用的时候就存在着无法消除的不同步差异。比如,分布于各地的服务器或者数据库都需要使用到中央服务器或中央数据库的数据,即数据生成端只有一个节点,但是数据使用端存在多个数据使用节点,为了保证各个数据使用节点数据的一致性,数据生成端产生的数据必须等到所有使用节点都使用过该数据后,才能把该数据从缓存区删除。这就造成了整个系统的数据处理能力或者说是数据处理效率受制于处理能力最弱的数据使用节点,简称为最短板问题。

针对最短板问题,惯用的做法是给每个数据使用节点都配备一个数据缓存区,即数据使用节点与数据缓存区形成一一对应的专属关系。但是这种方式配置成本高,并且后续如果存在新增数据使用节点的时候,需要同时新增数据缓存区,这种配置方式是非常复杂的,对整个系统的改动较大,成本较高,并且新增节点如何得到相同的历史数据又成为了新的要面临的问题。

因此,对于现有技术来说,存在两种缓存形式,一个是单一缓存区形式,另一个是与使用节点数对应的多缓存区形式,如根据使用节点数生成的环状缓存区,环状缓存区中每个单元用于存放每个数据使用节点对应的数据队列的地址。数据生成端将数据发送到每个数据使用节点对应的数据队列,然后供数据使用节点进行数据处理。

上述两种缓存形式存在以下缺陷:

1、单缓存区存在数据生成端和数据使用端数据同步的最短板问题,即使用或处理数据最快的数据使用节点会受到使用或处理数据最慢的数据使用节点的限制,最终整个系统的数据处理效率与最慢的数据使用节点的数据使用或处理速度保持一致。并且数据生成端产生数据的速度也是由最慢的数据使用节点决定。因为当最慢的最慢的数据使用节点还没有使用或处理完有限缓冲区中的数据时,缓冲区中的数据是不会进行清理的,导致数据生成端无法继续往有限缓冲区中继续产生或存储数据,以及数据使用或处理速度最快的数据使用节点无法得到新的数据。总之,整个系统的数据处理能力或数据处理效率受到了严重的限制。

2、当数据使用节点的数据出错或者被误删除时,缓存区数据已经被删除了,数据使用节点无法直接从缓存区得到数据,需要向数据生成端重新申请生成,浪费了数据生成端的计算资源。

3、新增数据使用节点时,无法进行历史数据同步,需要向数据生成端重新申请生成,浪费了数据生成端的计算资源。

总的来说,现有的缓存形式存在整个系统的数据处理效率或数据处理能力较低的技术问题。

本申请提供的数据处理方法,旨在解决现有技术的如上技术问题。

下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。

图1为本申请实施例提供的数据处理方法的应用场景示意图。如图1所示,当MySQL数据库在进行单元化数据同步的过程中,一个源库对应多个目标库,即一个数据生成端101对应数据使用端102的多个数据使用节点。因为不同数据使用节点间的网络带宽以及硬件等条件限制,不同数据使用节点间的数据库在进行数据同步的过程中,每个数据库处理或使用源端数据的能力是不同的,处理或使用能力最低的数据库严重影响了源端数据库即数据生成端101生产数据的能力。为此,本申请实施例在数据缓存端103中设置了第一缓存区和历史数据存储区,第一缓存区可以定时将符合预定条件的数据存入历史数据存储区,当处理或使用能力较低的数据使用节点申请使用的数据被判定为历史数据时,就可以从历史数据存储区中将数据使用节点需要的目标历史数据发送给该数据使用节点。

需要说明的是,在本实施例中第一缓存区可以是进行快速数据读取的存储单元如flash闪存,而历史数据存储区可以是读写速度稍慢的机械硬盘上的存储区域,也可以是读写速度较快的固态硬盘等的存储区域。

通过定时清理的方式,将第一缓存区中的数据转移到历史数据存储区,使得第一缓存区的宝贵容量能够得到定时恢复,使得数据生成端能够保持高效的工作状态,不断产生数据,而不会因为第一缓存区的容量占满而被迫停止工作。此外,对于处理或使用能力较强的数据使用节点来说,也能够快速获取新的数据,而不会受到处理或使用能力较弱的数据使用节点的限制,解决了最短板问题。对于处理或使用能力较弱的数据使用节点来说,没有及时能从第一缓存区获取到的数据,仍然能够通过在历史数据存储区获取,无需占用数据生成端重新生成。进一步的,若新增数据使用节点,或者说是有使用节点的数据出错或者是被误删除,那么也可以从历史数据存储区直接获取历史数据,而无需占用数据生成端重新生成对应的数据。本申请实施例的数据处理方法,在解决最短板问题的同时,连带解决了新增使用节点时高成本或者复杂操作的问题,并且也提高了各个数据使用节点的数据安全性,相对于现有技术来说实现了显著的进步效果,极大提升了整个数据处理系统的数据处理能力或者数据处理效率。

下面结合附图来对本申请提供的数据处理方法的详细步骤进行介绍。

图2为本申请提供的一种数据处理方法的流程示意图。如图2所示,该数据处理方法的具体步骤,包括:

S201、获取第一缓存区的容量信息以及数据使用信息。

在本步骤中,第一缓存区用于存储数据生成端产生的数据,容量信息用于表示容量的动态使用情况,数据使用信息用于表示数据使用端中各个使用节点对所述数据的使用情况。

具体的,数据生成端或者数据缓存端实时监测第一缓存区的容量动态使用情况,如已使用容量、剩余容量、已使用容量的动态变化率,剩余容量的动态变化率等等。容量信息可以为数据生成端是否需要停止产生或存入新数据作判断依据,同时,也可以作为第一缓存区定时清理模式的触发信号,当剩余容量达到预设剩余阈值,或者说是已使用容量达到预设限定值时,触发定时清理模式。定时清理模式即为将第一缓存区中符合预设条件的数据,如已经被至少一个数据使用端的数据使用节点使用过的数据,转移到历史数据存储区当中。

而数据使用信息,则可以用于判定哪些数据可以进行转移,反映了数据使用节点对于数据的使用速率,例如可以记录同一个数据被不同数据使用节点调用的次数来作为数据使用信息,当使用次数超过了数据使用节点总数的一半时,即可将该数据转移到历史数据存储区当中。

S202、根据容量信息以及数据使用信息,将满足预设转移条件的数据从第一缓存区转移到历史数据存储区。

在本步骤中,预设转移条件至少包括:第一转移条件、第二转移条件和第三转移条件。

具体的,第一转移条件用于满足数据生成端的数据生产效率要求。在第一缓存区的已使用容量达到预设限定值,或者是剩余容量达到预设剩余值时,即可将第一缓存区中的部分数据或者是全部数据转移到历史数据存储区当中。

在一种可能的设计中,也可以结合数据生成端产生数据的速率来判断是否需要将第一缓存区中的部分数据或者是全部数据转移到历史数据存储区当中。

可选的,也可以通过已使用容量或剩余容量的变化率来判断数据生成端产生数据的生产效率,当变化率大于预设阈值时,就可以判定数据生成端在大量快速地产生数据,那么即可开启第一缓存区的定时清理模式,按照预设的时间周期,将第一缓存区中的部分数据或者是全部数据转移到历史数据存储区当中。

第二转移条件用于满足高速数据使用节点的数据使用要求,所述高速数据使用节点的数据使用速率大于或等于预设速率。这时候主要起作用的是数据使用信息,对于每个数据使用节点来说,在第一缓存区当中只有未使用过的数据才是有效数据,而高速数据使用节点的有效数据占比较小,或者说是已使用数据的占比较高,当到达预设比例时,将会限制高速数据使用节点的数据处理效率。为此,通过检测各个数据使用节点已使用数据的比例,就可以在预设数量的数据使用节点中都已被归为已使用数据的数据转移到历史数据存储区当中。

比如数据使用端有3个数据使用节点,某个数据以及被其中两个数据使用节点使用,则即可将此数据转移到历史数据存储区当中。

第三转移条件用于在数据被所有使用节点使用后及时清理所述第一缓存区。即通过数据使用信息,当监测到第一缓存区的任意数据已经被所有数据使用节点使用过后,则可以将此数据转移到历史数据存储区当中,进一步的,也可以将所有数据都转移到历史数据存储区当中。

需要说明的是,转移到历史数据存储区中的数据仍能够被数据使用端中任意一个数据使用节点调用。即使是新增数据使用节点,为了让数据使用节点能够使用到历史数据,可以直接将历史数据存储区中的历史数据发送给新增的数据使用节点。

因此,使用本申请实施例提供的数据处理方法,在新增数据使用节点的时候,无需对数据缓存端和数据生成端进行任何改动,相较于现有技术来说简介方便,成本低。

同时,由于任意数据使用节点都可以调用历史数据存储区中的历史数据,这样当数据使用节点的数据出错时,或者是被误删除时,只需要从历史数据存储区中再次读取调用即可,无需数据生成端再次生成,提高了数据使用节点的数据安全性的同时,也节省了数据生成端的计算资源消耗。

本实施例提供了一种数据处理方法,通过获取第一缓存区的容量信息以及数据使用信息,第一缓存区用于存储数据生成端产生的数据,容量信息用于表示容量的动态使用情况,数据使用信息用于表示数据使用端中各个使用节点对数据的使用情况;根据容量信息以及数据使用信息,将满足预设转移条件的数据从第一缓存区转移到历史数据存储区。解决了现有技术中数据生成端以及数据使用端之间的数据传输受制于数据处理能力最若的数据使用节点,造成系统整体数据处理能力较低的技术问题。同时可以从历史数据存储区调用数据,使得新增数据使用节点更为简便,也提高了各个数据使用节点的数据安全性。

为了便于理解,下面举出预设转移条件中的第一转移条件的其中一种实施例来进行说明。

图3为本申请实施例提供的另一种数据处理方法的流程示意图。如图3所示,该数据处理方法的具体步骤包括:

S301、获取第一缓存区的容量信息以及数据使用信息。

在本步骤中,第一缓存区用于存储数据生成端产生的数据,容量信息用于表示容量的动态使用情况,数据使用信息用于表示数据使用端中各个使用节点对所述数据的使用情况。

S302、根据容量信息确定剩余容量信息。

在本步骤中,所述剩余容量信息包括:剩余容量,和/或,所述剩余容量的变化率。

具体的剩余容量信息可以用至少三种方式来表示:

第一种是用剩余容量来表示;

第二种是用剩余容量的变化率来表示;

第三种是用剩余容量和剩余容量的变化率来共同表示。

S303、判断剩余容量信息是否满足第一转移条件。

在本步骤中,若满足则继续执行S304,若不满足则返回重复执行S301。

在本实施例中,若剩余容量信息用剩余容量来表示,则第一转移条件为剩余容量小于或等于预设容量阈值;

若剩余容量信息用剩余容量的变化率来表示,则第一转移条件为变化率大于或等于预设变化阈值;

若剩余容量信息用剩余容量和剩余容量的变化率来共同表示,则第一转移条件为剩余容量小于或等于预设容量阈值且变化率大于或等于预设变化阈值。

S304、根据数据使用信息,按预设周期将待转移数据从第一缓存区转移到历史数据存储区。

在本步骤中,数据使用信息用于判断或识别待转移数据。

在一种可能的实施方式中,所述待转移数据包括已使用数据,所述已使用数据为被至少一个所述节点使用过的数据。

在另一种可能的实施方式中,所述待转移数据包括所有第一缓存区中的数据。

在又一种可能的实施方式中,所述待转移数据包括使用次数达到预设使用次数的数据,例如使用次数大于或等于数据使用节点总数一半的数据。

具体的,预设周期可以为30s,每30秒实施一次转移,保证第一缓存区有足够的容量,使得数据生成端能够保持高效的数据生产效率。

本实施例提供了一种数据处理方法,通过获取第一缓存区的容量信息以及数据使用信息,第一缓存区用于存储数据生成端产生的数据,容量信息用于表示容量的动态使用情况,数据使用信息用于表示数据使用端中各个使用节点对数据的使用情况;根据容量信息以及数据使用信息,将满足预设转移条件的数据从第一缓存区转移到历史数据存储区。解决了现有技术中数据生成端以及数据使用端之间的数据传输受制于数据处理能力最若的数据使用节点,造成系统整体数据处理能力较低的技术问题。同时可以从历史数据存储区调用数据,使得新增数据使用节点更为简便,也提高了各个数据使用节点的数据安全性。

为了便于理解,下面举出预设转移条件中的第二转移条件的其中一种实施例来进行说明。

图4为本申请实施例提供的又一种数据处理方法的流程示意图。如图4所示,该数据处理方法的具体步骤包括:

S401、获取第一缓存区的容量信息以及数据使用信息。

在本步骤中,第一缓存区用于存储数据生成端产生的数据,容量信息用于表示容量的动态使用情况,数据使用信息用于表示数据使用端中各个使用节点对所述数据的使用情况。

S402、根据数据使用信息,确定已使用数据的比例。

在本步骤中,已使用数据为被至少一个所述节点使用过的数据,已使用数据的比例为已使用数据总数与在所有第一缓存区的总数据量的比值。

S403、判断比例是否大于或等于预设比例。

在本步骤中,若是则执行S404,若否则返回重新执行S401。

具体的,预设比例可以取0至1之间的任意一个比例,本领域技术人员可以根据实际需要进行选取。其选取的原则可以依据各个数据使用节点中数据处理速率最快的数据使用节点的处理速率来选定,或者根据所有数据使用节点的平均数据处理速率来选定。

S404、判断已使用数据的使用次数是否大于或等于预设使用次数。

在本步骤中,若是则执行S405,若否则返回重新执行S401。

具体的,预设使用次数可以为数据使用节点总数的一半,可以理解的是,本领域技术人员可以根据实际应用场景的需要进行设定。也可以将预设使用次数设置为动态值,随所有数据使用节点的平均数据处理速率或者数据处理速率最快的数据使用节点的处理速率而对应变化。

S405、根据数据使用信息,将待转移数据从所述第一缓存区转移到历史数据存储区。

在本步骤中,数据使用信息用于判断或识别待转移数据。

在一种可能的实施方式中,所述待转移数据包括已使用数据,所述已使用数据为被至少一个所述节点使用过的数据。

在另一种可能的实施方式中,所述待转移数据包括所有第一缓存区中的数据。

在又一种可能的实施方式中,所述待转移数据包括使用次数达到预设使用次数的数据,例如使用次数大于或等于数据使用节点总数一半的数据。

本实施例提供了一种数据处理方法,通过获取第一缓存区的容量信息以及数据使用信息,第一缓存区用于存储数据生成端产生的数据,容量信息用于表示容量的动态使用情况,数据使用信息用于表示数据使用端中各个使用节点对数据的使用情况;根据容量信息以及数据使用信息,将满足预设转移条件的数据从第一缓存区转移到历史数据存储区。解决了现有技术中数据生成端以及数据使用端之间的数据传输受制于数据处理能力最若的数据使用节点,造成系统整体数据处理能力较低的技术问题。同时可以从历史数据存储区调用数据,使得新增数据使用节点更为简便,也提高了各个数据使用节点的数据安全性。

为了便于理解,下面举出预设转移条件中的第三转移条件的其中一种实施例来进行说明。

图5为本申请实施例提供的再一种数据处理方法的流程示意图。如图5所示,该数据处理方法的具体步骤包括:

S501、获取第一缓存区的容量信息以及数据使用信息。

在本步骤中,第一缓存区用于存储数据生成端产生的数据,容量信息用于表示容量的动态使用情况,数据使用信息用于表示数据使用端中各个使用节点对所述数据的使用情况。

S502、判断第一缓存区中的所有数据是否均被所有所述数据使用节点使用完毕。

在本步骤中,若是则执行S503,若否则返回S501重新循环判定。

S503、将所有数据转移到历史数据存储区。

需要说明的是,本实施例是在各个数据使用节点的处理能力相差不大时,且数据生成端没有大量产生数据的情况下,第一缓存区中的数据都被使用后,并不像现有技术一样直接删除,而是将其转移到历史数据存储区当中,便于给各个数据使用节点调用历史数据,以及给新增的数据使用节点调用历史数据,而无需占用数据生成端的计算资源重新生成。

本实施例提供了一种数据处理方法,通过获取第一缓存区的容量信息以及数据使用信息,第一缓存区用于存储数据生成端产生的数据,容量信息用于表示容量的动态使用情况,数据使用信息用于表示数据使用端中各个使用节点对数据的使用情况;根据容量信息以及数据使用信息,将满足预设转移条件的数据从第一缓存区转移到历史数据存储区。解决了现有技术中数据生成端以及数据使用端之间的数据传输受制于数据处理能力最若的数据使用节点,造成系统整体数据处理能力较低的技术问题。同时可以从历史数据存储区调用数据,使得新增数据使用节点更为简便,也提高了各个数据使用节点的数据安全性。

需要说的是图3至图5所示的三个实施例,可以作为三个并行的实施方案,或者说是并行的线程来实现本申请的数据处理方法。

在上述各个实施例的基础之上,为了进一步说明数据使用节点如何调用历史数据存储区中的数据,下面以图6所示的实施例来进行解释说明。

图6为本申请实施例提供的又另一种数据处理方法的流程示意图。如图6所示,该数据处理方法的具体步骤包括:

S601、获取数据使用端中数据使用节点的历史数据使用请求。

S602、根据历史数据使用请求,在历史数据存储区中确定目标历史数据。

S603、向数据使用节点发送目标历史数据。

在本步骤中,向数据使用节点发送目标历史数据可以有多种实施方式。

在一种可能的实施方式中,若所述第一缓存区的剩余容量满足所述目标历史数据的存储要求,则将所述目标历史数据存储到所述第一缓存区,以供所述数据使用节点使用。

在另一种可能的实施方式中,将所述第一缓存区的剩余容量不满足所述目标历史数据的存储要求,则将所述目标历史数据存储到第二缓存区,以供所述数据使用节点使用。

在又一种可能的实施方式中,将所述目标历史数据存储到第二缓存区,以供所述数据使用节点使用。

需要说明的是,在本实施例中,第二缓存区是与第一缓存区相同类型的能够快速读写的存储设备,如内存或flash闪存,还可以是固态硬盘等。

还需要说明的是,在本实施例中,执行发送历史数据使用请求的,可以是数据使用端中任意一个数据使用节点,因为在数据使用过程中,由于各种原因可能导致数据出错或者被误删除,此时只要执行本实施例的数据处理方法,从历史数据存储区中调取历史数据,即可恢复,提高了数据使用节点的数据安全性,同时避免了数据生成端再次计算产生历史数据,节省了数据生成端的计算资源,提高了系统的数据处理效率和能力。

此外,对于新增加的数据使用节点,也可以按照图6所示的数据处理方法,获取历史数据,使得各个数据使用节点能够得到相同的数据,并且无需数据生成端重新生成。

本实施例提供了一种数据处理方法,通过获取第一缓存区的容量信息以及数据使用信息,第一缓存区用于存储数据生成端产生的数据,容量信息用于表示容量的动态使用情况,数据使用信息用于表示数据使用端中各个使用节点对数据的使用情况;根据容量信息以及数据使用信息,将满足预设转移条件的数据从第一缓存区转移到历史数据存储区;然后获取数据使用端中数据使用节点的历史数据使用请求,并根据历史数据使用请求,在历史数据存储区中确定目标历史数据,最后向数据使用节点发送目标历史数据。解决了现有技术中数据生成端以及数据使用端之间的数据传输受制于数据处理能力最若的数据使用节点,造成系统整体数据处理能力较低的技术问题。同时可以从历史数据存储区调用数据,使得新增数据使用节点更为简便,也提高了各个数据使用节点的数据安全性。

图7为本申请实施例提供的一种数据处理装置的结构示意图。该数据处理装置700可以通过软件、硬件或者两者的结合实现。

如图7所示,该数据处理装置700包括:

获取模块701,用于获取第一缓存区的容量信息以及数据使用信息,所述第一缓存区用于存储数据生成端产生的数据,所述容量信息用于表示容量的动态使用情况,所述数据使用信息用于表示数据使用端中各个使用节点对所述数据的使用情况;

处理模块702,用于根据所述容量信息以及所述数据使用信息,将满足预设转移条件的数据从所述第一缓存区转移到历史数据存储区。

在一种可能的设计中,所述预设转移条件包括第一转移条件,所述第一转移条件用于满足数据生成端的数据生产效率要求,对应的,所述处理模块702,具体用于:

根据所述容量信息确定剩余容量信息,所述剩余容量信息包括:剩余容量,和/或,所述剩余容量的变化率;

若所述剩余容量小于或等于预设容量阈值,和/或所述变化率大于或等于预设变化阈值,则根据所述数据使用信息,按预设周期将待转移数据从所述第一缓存区转移到历史数据存储区。

在一种可能的设计中,所述预设转移条件包括第二转移条件,所述第二转移条件用于满足高速数据使用节点的数据使用要求,所述高速数据使用节点的数据使用速率大于或等于预设速率,对应的,所述处理模块702,具体用于:

根据所述数据使用信息,确定已使用数据的比例,所述已使用数据为被至少一个所述节点使用过的数据;

当所述比例大于或等于预设比例时,若所述已使用数据的使用次数大于或等于预设使用次数,则将待转移数据从所述第一缓存区转移到历史数据存储区。

可选的,所述待转移数据包括已使用数据,所述已使用数据为被至少一个所述节点使用过的数据。

可选的,所述待转移数据包括所有所述第一缓存区中的数据。

在一种可能的设计中,所述预设转移条件包括第三转移条件,所述第三转移条件用于在数据被所有使用节点使用后及时清理所述第一缓存区,对应的,所述处理模块702,具体用于:

若所述第一缓存区中的所有数据均被所有所述数据使用节点使用完毕,则将所有所述数据转移到所述历史数据存储区。

在一种可能的设计中,所述获取模块701,还用于获取数据使用端中数据使用节点的历史数据使用请求;

所述处理模块702,还用于根据所述历史数据使用请求,在所述历史数据存储区中确定目标历史数据;

所述处理模块702,还用于向所述数据使用节点发送所述目标历史数据。

在一种可能的设计中,所述处理模块702,还用于:

若所述第一缓存区的剩余容量满足所述目标历史数据的存储要求,则将所述目标历史数据存储到所述第一缓存区,以供所述数据使用节点使用。

可选的,所述处理模块702,还用于向所述数据使用节点发送所述目标历史数据,具体包括:

将所述第一缓存区的剩余容量不满足所述目标历史数据的存储要求,则将所述目标历史数据存储到第二缓存区,以供所述数据使用节点使用。

在一种可能的设计中,所述处理模块702,还用于向所述数据使用节点发送所述目标历史数据,具体包括:

将所述目标历史数据存储到第二缓存区,以供所述数据使用节点使用。

值得说明的是,图7所示实施例提供的数据处理装置,可以执行上述任一方法实施例中所提供的方法,其具体实现原理、技术特征、专业名词解释以及技术效果类似,在此不再赘述。

图8为本申请实施例提供的一种电子设备的结构示意图。如图8所示,该电子设备800,可以包括:至少一个处理器801和存储器802。图8示出的是以一个处理器为例的电子设备。

存储器802,用于存放程序。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。

存储器802可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。

处理器801用于执行存储器802存储的计算机执行指令,以实现以上各方法实施例所述的方法。

其中,处理器801可能是一个中央处理器(central processing unit,简称为CPU),或者是特定集成电路(application specific integrated circuit,简称为ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路。

可选地,存储器802既可以是独立的,也可以跟处理器801集成在一起。当所述存储器802是独立于处理器801之外的器件时,所述电子设备800,还可以包括:

总线803,用于连接所述处理器801以及所述存储器802。总线可以是工业标准体系结构(industry standard architecture,简称为ISA)总线、外部设备互连(peripheralcomponent,PCI)总线或扩展工业标准体系结构(extended industry standardarchitecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等,但并不表示仅有一根总线或一种类型的总线。

可选的,在具体实现上,如果存储器802和处理器801集成在一块芯片上实现,则存储器802和处理器801可以通过内部接口完成通信。

本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random accessmemory,RAM)、磁盘或者光盘等各种可以存储程序代码的介质,具体的,该计算机可读存储介质中存储有程序指令,程序指令用于上述各方法实施例中的方法。

本申请实施例还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的方法。

本申请实施例还提供一种数据处理系统,包括:数据生成端、数据缓存端以及数据使用端;其中,

所述数据生成端用于产生待使用数据,并将所述待使用数据存入所述数据缓存端;

所述数据缓存端包括第一缓存区以及历史数据存储区,所述历史数据存储区用于存储所述第一缓存区中满足预设转移条件的数据,可选的,所述数据缓存端还包括第二缓存区,所述第二缓存区用于在所述数据使用节点请求使用历史数据时,将目标历史数据从所述历史数据存储区存储到所述第二缓存区,以供所述数据使用节点使用;

所述数据使用端包括至少一个数据使用节点,所述数据使用节点用于调用所述第一缓存区或历史数据存储区中的数据;

所述数据生成端或所述数据缓存端还用于实现上述个方法实施例所提供的任意一种可能的数据处理方法。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由本申请的权利要求书指出。

应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。

最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

22页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:基于区复位行为的数据存储设备的区分配

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类