一种数据流处理方法及设备与流程

文档序号:16324687发布日期:2018-12-19 05:51阅读:146来源:国知局
一种数据流处理方法及设备与流程
本申请涉及通信
技术领域
,尤其涉及一种数据流处理方法及设备。
背景技术
在现有的实际应用中,数据流处理设备通常需要对接收到的数据流进行存储。例如,该数据流可以是文件数据流或视频数据流等。数据流处理设备接收数据流之后,通常数据流处理设备先将数据流输入至业务逻辑层的一个队列中,再从队列中将数据流写入存储介质。如图1所示,当数据流处理设备同时接收到50个数据流时,数据流处理设备将该50个数据流输入到业务逻辑层的一个队列中,并向存储介质申请50个存储空间。存储介质会随机分配50个存储空间。由于存储介质随机分配存储空间,因此,分配的存储空间可能不连续。这将导致存储介质的利用率较低。技术实现要素:本申请实施例提供了一种数据流处理方法及设备,有利于提升存储介质的利用率。第一方面,本申请实施例提供了一种数据流处理方法,应用于数据流处理设备,该数据流处理设备包括多个队列,该多个队列中不同的队列用于存储不同大小范围的数据流,该方法包括:接收待写入存储介质的多个数据流;根据多个数据流的大小,将该多个数据流分别输入对应的队列中;对第一队列中的数据流进行聚合,该第一队列为多个队列中的任意一个;将聚合后得到的聚合数据流写入存储介质中。可见,通过实施第一方面所描述的方法,有利于提升存储介质的利用率,并且还有利于提升数据流处理设备的tps。可选的,该多个队列中的各个队列具有对应的聚合大小门限值,对第一队列中的数据流进行聚合的具体实施方式为:根据第一队列对应的聚合大小门限值对第一队列中的数据流进行聚合;将聚合后得到的聚合数据流写入存储介质中的具体实施方式为:当第一队列的聚合数据流的大小达到第一队列对应的聚合大小门限值时,将第一队列的聚合数据流写入存储介质中。通过聚合数据流的大小达到预设的聚合大小门限值之后写入存储介质中,可以提升数据流处理设备的tps。可选的,该多个队列中的各个队列具有对应的聚合时间门限值,当对第一队列中的数据流进行聚合的时间达到第一队列对应的聚合时间门限值时,将第一队列的聚合数据流写入存储介质中。通过实施该实施方式,若长时间第一队列中无法聚合达到第一队列对应的聚合大小门限值的聚合数据流,则将导致第一队列中的数据流长时间无法写入存储介质。因此,通过实施该实施方式,有利于降低将第一队列中的数据流长时间无法写入存储介质的时延。可选的,第一队列的聚合时间门限值根据第一队列的聚合大小门限值得到。数据流处理设备可预先存储聚合大小门限值与聚合时间门限值的对应关系,第一队列的聚合时间门限值为该对应关系中第一队列的聚合大小门限值对应的聚合时间门限值。可选的,该对应关系中,聚合大小门限值与聚合时间门限值成正比关系,即聚合大小门限值越大聚合时间门限值越长。通过实施该实施方式,能够灵活地对第一队列的聚合时间门限值进行设置。可选的,数据流处理设备还可以预设时间为周期,根据各个队列的第一聚合数据流的写入时延以及各个队列对应的数据流并发数量设置各个队列对应的聚合大小门限值,其中,该第一队列的第一聚合数据流的写入时延为从接收到第一队列的第一聚合数据流中的数据流至成功写入第一聚合数据流的时长,该第一队列对应的数据流并发数量为大小与第一队列的第一聚合数据流的大小相同的数据流的并发数量。通过实施该实施方式,能够根据当前的实际情况,灵活地动态地为各个队列设置最优的聚合大小门限值,从而提升数据流处理设备的tps。可选的,以预设时间为周期,根据各个队列的第一聚合数据流的写入时延以及各个队列对应的数据流并发数量设置各个队列对应的聚合大小门限值的具体实施方式为:以预设时间为周期,根据各个队列的第一聚合数据流的写入时延以及各个队列对应的数据流并发数量计算各个队列对应的每秒事务处理量tps;将第一tps对应的第一聚合数据流的大小设置为各个队列对应的聚合大小门限值,该第一tps为各个队列对应的tps中最大的tps。通过实施该实施方式,能够根据当前的实际情况准确地计算出各个队列设置最优的聚合大小门限值。可选的,数据流处理设备的各个队列具有对应的数据流聚合数量,数据流处理设备对第一队列中的数据流进行聚合的具体实施方式可以为:根据第一队列对应的数据流聚合数量对第一队列中的数据流进行聚合。数据流处理设备将聚合后得到的聚合数据流写入存储介质中的具体实施方式为:当聚合的第一队列的数据流的数量达到第一队列对应的数据流聚合数量时,将第一队列的聚合数据流写入存储介质中。通过实施该实施方式,有利于提升数据流处理设备的tps。可选的,数据流处理设备的各个队列除具有对应的数据流聚合数量之外,还具有对应的聚合时间门限值。除当聚合的第一队列的数据流的数量达到第一队列对应的数据流聚合数量时,将第一队列的聚合数据流写入存储介质中之外,当对第一队列中的数据流进行聚合的时间达到第一队列对应的聚合时间门限值时,将第一队列的聚合数据流写入存储介质中。通过实施该实施方式,若长时间第一队列中无法聚合第一队列对应的数据流聚合数量的数据流,则将导致第一队列中的数据流长时间无法写入存储介质。因此,通过实施该实施方式,有利于降低将第一队列中的数据流长时间无法写入存储介质的时延。第二方面,提供了一种数据流处理设备,该数据流处理设备可执行上述第一方面或第一方面可能的实现方式中的方法。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的单元。该单元可以是软件和/或硬件。基于同一发明构思,该数据流处理设备解决问题的原理以及有益效果可以参见上述第一方面或第一方面可能的实现方式以及有益效果,重复之处不再赘述。第三方面,提供了一种数据流处理设备,该数据流处理设备包括:处理器、存储器、通信接口;处理器、通信接口和存储器相连;其中,通信接口可以为收发器。通信接口用于实现与其他网元(如终端设备)之间的通信。其中,一个或多个程序被存储在存储器中,该处理器调用存储在该存储器中的程序以实现上述第一方面或第一方面可能的实现方式中的方案,该数据流处理设备解决问题的实施方式以及有益效果可以参见上述第一方面或第一方面可能的实现方式以及有益效果,重复之处不再赘述。第四方面,提供了一种计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面可能的实现方式中的方法。第五方面,提供了一种芯片产品,执行上述第一方面或第一方面可能的实现方式中的方法。第六方面,提了供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面可能的实现方式中的方法。附图说明图1是现有的一种数据流处理过程的示意图;图2是本申请实施例提供的一种系统架构的示意图;图3是本申请实施例提供的一种数据流处理方法的流程示意图;图4是本申请实施例提供的一种数据流处理过程的示意图;图5是本申请实施例提供的另一种数据流处理过程的示意图;图6是本申请实施例提供的另一种数据流处理方法的流程示意图;图7是本申请实施例提供的又一种数据流处理过程的示意图;图8是本申请实施例提供的又一种数据流处理过程的示意图;图9是本申请实施例提供的一种数据流处理设备的结构示意图;图10是本申请实施例提供的另一种数据流处理设备的结构示意图。具体实施方式下面结合附图对本申请具体实施例作进一步的详细描述。本申请实施例提供了一种数据流处理方法及设备,有利于提升存储介质的利用率。为了能够更好地理解本申请实施例,下面对本申请实施例可应用的系统架构进行说明。如图2所示,该系统架构至少包括数据流处理设备。可选的,还可包括一个或多个目标设备,该目标设备用于传输数据流至数据流处理设备,图2中未示出目标设备。其中,该数据流处理设备为具有存储介质的设备。该目标设备可以为手机或电脑等能够发送数据流的设备。该数据流可以是文件数据流、音频数据流或视频数据流等,本申请实施例不做限定。如图2所示,数据流处理设备可接收多个数据流。其中,如图2所示,该数据流处理设备包括存储介质和多个队列。该多个队列用于缓存数据流处理设备接收到的数据流。图2以数据流处理设备包括3个队列为例,当然数据流处理设备还可包括2个队列或3个以上的队列,本申请实施例不做限定。该多个队列中不同的队列用于存储接收到的不同大小范围的数据流。例如,如图2所示,队列1用于缓存大小在0~4千字节(kilobyte,kb)的数据流。队列2用于缓存大小在5~16kb的数据流。队列3用于缓存大小在17~32kb的数据流。当然,图2的队列1~3的存储大小范围只是举例,队列1~3的存储大小范围也可以是其他范围,再此不做限定。下面进一步对本申请所提供的数据流处理方法及设备进行介绍。请参见图3,图3是本申请实施例提供的一种数据流处理方法。如图3所示,该数据流处理方法包括如下301~304部分,其中:301、数据流处理设备接收待写入存储介质的多个数据流。其中,该多个数据流可以是数据流处理设备从一个或多个目标设备接收的数据流。或者,该多个数据流可以是数据流处理设备从自身的其他模块中接收的数据流。可选的,该多个数据流可以是同时接收的,或者是在不同时间接收的,本申请实施例不做限定。302、数据流处理设备根据该多个数据流的大小,将该多个数据流分别输入对应的队列中。本申请实施例中,数据流处理设备接收待写入存储介质的多个数据流之后,根据该多个数据流的大小,将该多个数据流分别输入对应的队列中。举例来说,如图4所示,队列1用于缓存大小在0~4kb的数据流。队列2用于缓存大小在5~16kb的数据流。队列3用于缓存大小在17~32kb的数据流。数据流处理设备接收到15个数据流之后,由于数据流1~5的大小均处于0~4kb的范围之内,则数据流处理设备将数据流1~5输入队列1。由于数据流6~10的大小均处于5~16kb的范围之内,则数据流处理设备将数据流6~10输入队列2。由于数据流11~15的大小均处于17~32kb的范围之内,则数据流处理设备将数据流11~15输入队列3。303、数据流处理设备对第一队列中的数据流进行聚合。本申请实施例中,数据流处理设备将该多个数据流分别输入对应的队列中之后,对第一队列中的数据流进行聚合。其中,该第一队列为数据流处理设备的多个队列中的任意一个。也就是说,数据流处理设备可以对每个队列的数据流进行聚合,并将聚合得到的聚合数据流写入存储介质。例如,第一队列为队列1。如图5所示,数据流处理设备可将队列1中的数据流1和数据流2进行聚合,得到聚合数据流1。即将数据流1和数据流2合为一个数据流。由于数据流1为3kb,数据流2为4kb,因此数据流1和数据流2聚合后得到的聚合数据流为7kb。数据流处理设备将聚合数据流1写入存储介质中。同理,数据流处理设备可将队列2中的数据流1和数据流2进行聚合,得到聚合数据流2。数据流处理设备可将队列3中的数据流1和数据流2进行聚合,得到聚合数据流3。数据流处理设备将聚合数据流2和聚合数据流3写入存储介质中。304、数据流处理设备将聚合后得到的聚合数据流写入存储介质中。通过将多个数据流聚合为一个数据流,存储介质随机分配存储空间的几率变小,因此,分配的不连续的存储空间变少,有利于提升存储介质的利用率。例如,如果有100个数据流需要存储,存储介质最多会随机分配100个存储空间。但将100个数据流聚合为50个数据流之后,存储介质最多会随机分配50个存储空间。可见,将多个数据流聚合为一个数据流之后,存储介质随机分配存储空间的几率变小。因此,通过实施图3所描述的方法,有利于提升存储介质的利用率。并且将数据流进行聚合,有利于降低数据流处理设备所需的每秒读写操作的次数(input/outputoperationspersecond,ipos),从而可以提升每秒事务处理量(transactionpersecond,tps)。例如,假如有100个数据流需要存储,若不对数据流进行聚合,iops可能需要100次/秒。但对100个数据流聚合为50个数据流之后,可能iops只需要50次/秒。若数据流处理设备最大的iops为100次/秒,则聚合数据流之后,数据流处理设备并未达到写操作的极限,数据流处理设备还可在1秒之内写入更多的数据流,因此提升了tps。因此,通过实施图3所描述的方法,还有利于提升tps。并且图3所描述的方法还根据数据流的大小,将数据流输入对应的队列中进行聚合,从而保证了大小相差不大的数据流进行聚合,这样也有利于降低数据流的写入时延,从而提升tps。请参见图6,图6是本申请实施例提供的一种数据流处理方法。如图6所示,该数据流处理方法包括如下601~604部分,其中:601、数据流处理设备接收待写入存储介质的多个数据流。602、数据流处理设备根据该多个数据流的大小,将该多个数据流分别输入对应的队列中。其中,步骤601和602的具体实现原理与图3中的步骤301和302的具体实现原理相同,步骤601和602的具体实现原理可参见步骤301和302的具体实现原理,在此不赘述。603、数据流处理设备根据第一队列对应的聚合大小门限值对第一队列中的数据流进行聚合。604、当第一队列的聚合数据流的大小达到第一队列对应的聚合大小门限值时,数据流处理设备将第一队列的聚合数据流写入存储介质中。其中,步骤603为图3中步骤303的具体实施方式,步骤604为图3中步骤304的具体实施方式。举例来说,如图7所示,队列1对应的聚合大小门限值为8kb,队列2对应的聚合大小门限值为32kb,队列3对应的聚合大小门限值为64kb。由于队列1对应的聚合大小门限值为8kb,因此数据流处理设备可将队列1中的数据流1~3进行聚合。聚合后得到的聚合数据流的大小为9kb。由于聚合数据流的大小达到8kb,因此,数据流处理设备将队列1的聚合数据流写入存储介质中。数据流处理设备将队列1中的数据流1~3进行聚合之后,按照相同的原理对队列1中的其他数据流进行聚合,并将达到队列1对应的聚合大小门限值的聚合数据流写入存储介质中。同理,由于队列2对应的聚合大小门限值为32kb,因此数据流处理设备可将队列2中的数据流1和2进行聚合。聚合后得到的聚合数据流的大小为32kb。由于聚合数据流的大小达到32kb,因此,数据流处理设备将队列2的聚合数据流写入存储介质中。数据流处理设备将队列2中的数据流1和2进行聚合之后,按照相同的原理对队列2中的其他数据流进行聚合,并将达到队列2对应的聚合大小门限值的聚合数据流写入存储介质中。同理,由于队列3对应的聚合大小门限值为64kb,因此数据流处理设备可将队列3中的数据流1和2进行聚合。聚合后得到的聚合数据流的大小为64kb。由于聚合数据流的大小达到64kb,因此,数据流处理设备将队列3的聚合数据流写入存储介质中。数据流处理设备将队列3中的数据流1和2进行聚合之后,按照相同的原理对队列3中的其他数据流进行聚合,并将达到队列3对应的聚合大小门限值的聚合数据流写入存储介质中。可选的,各个队列对应的聚合大小门限值可以是预先设置好的固定值,例如,聚合大小门限值可以是一个预先设置好的经验值。通过聚合数据流的大小达到预设的聚合大小门限值之后写入存储介质中,可以提升数据流处理设备的tps。或者,各个队列对应的聚合大小门限值也可以是动态设置的值。如何动态设置各个队列对应的聚合大小门限值请参见下文的描述。因此,通过实施图6所描述的方法,数据流处理设备能够将队列中的数据流聚合达到预设的聚合大小门限值。聚合数据流的大小达到预设的聚合大小门限值之后写入存储介质中,有利于提升数据流处理设备的tps。作为一种可选的实施方式,数据流处理设备的各个队列除具有对应的聚合大小门限值之外,还具有对应的聚合时间门限值,除当第一队列的聚合数据流的大小达到第一队列对应的聚合大小门限值时,将对第一队列的聚合数据流写入存储介质中之外,当对第一队列中的数据流进行聚合的时间达到第一队列对应的聚合时间门限值时,将第一队列的聚合数据流写入存储介质中。举例来说,如图8所示,队列1对应的聚合大小门限值为8kb,队列2对应的聚合大小门限值为32kb,队列3对应的聚合大小门限值为64kb。队列1对应的聚合时间门限值为5ms(毫秒),队列2对应的聚合时间门限值为10ms,队列3对应的聚合时间门限值为15ms。由于队列1对应的聚合大小门限值为8kb,因此数据流处理设备可将队列1中的数据流1~3进行聚合。聚合后得到的聚合数据流的大小为3kb。此时队列1中已没有数据流,由于此时聚合时间门限值达到5ms,因此即使聚合数据流的大小未达到8kb,数据流处理设备也将聚合数据流写入存储介质中。当然若在聚合时间门限值内聚合得到的聚合数据流的大小达到8kb,则数据流处理设备也将聚合数据流写入存储介质中。队列2和队列3也同理,在此再不赘述。通过实施该实施方式,若长时间第一队列中无法聚合达到第一队列对应的聚合大小门限值的聚合数据流,则将导致第一队列中的数据流长时间无法写入存储介质。因此,通过实施该实施方式,有利于降低将第一队列中的数据流长时间无法写入存储介质的时延。可选的,第一队列的聚合时间门限值根据第一队列的聚合大小门限值得到。数据流处理设备可预先存储聚合大小门限值与聚合时间门限值的对应关系,第一队列的聚合时间门限值为该对应关系中第一队列的聚合大小门限值对应的聚合时间门限值。可选的,该对应关系中,聚合大小门限值与聚合时间门限值成正比关系,即聚合大小门限值越大聚合时间门限值越长。例如,聚合大小门限值和聚合时间门限值的对应关系可如下表1所示。表1聚合大小门限值聚合时间门限值8kb5ms32kb10ms64kb15ms通过实施该实施方式,能够灵活地对第一队列的聚合时间门限值进行设置。作为一种可选的实施方式,数据流处理设备还可以预设时间为周期,根据数据流处理设备的各个队列的第一聚合数据流的写入时延以及该各个队列对应的数据流并发数量设置该各个队列对应的聚合大小门限值。其中,该第一队列的第一聚合数据流的写入时延为从接收到第一队列的第一聚合数据流中的数据流至写入第一聚合数据流的时长,该第一队列对应的数据流并发数量为大小与第一队列的第一聚合数据流的大小相同的数据流的并发数量。例如,预设周期为10秒。也就是说,数据流处理设备每隔10秒可设置一次各个队列最新的聚合大小门限值。例如,数据流处理设备包括队列1~队列3。数据流处理设备根据队列1的第一聚合数据流1的写入时延、队列1对应的数据流并发数量、队列2的第一聚合数据流2的写入时延、队列2对应的数据流并发数量、队列3的第一聚合数据流3的写入时延和队列3对应的数据流并发数量设置各个队列对应的聚合大小门限值。其中,第一聚合数据流1可以为在队列1的任意一次聚合得到的聚合数据流。例如,在预设周期达到时,数据流处理设备可以将队列1上一次写入存储介质的聚合数据流确定为第一聚合数据流1。或者,在预设周期达到时,数据流处理设备可以将队列1下一次写入存储介质的聚合数据流确定为第一聚合数据流1。队列2和队列3的第一聚合数据流同理。其中,队列1对应的数据流并发数量为与第一聚合数据流1的大小相同的数据流的并发数量。队列2对应的数据流并发数量为与第一聚合数据流2的大小相同的数据流的并发数量。队列3对应的数据流并发数量为与第一聚合数据流3的大小相同的数据流的并发数量。下面各个队列的第一聚合数据流的写入时延以及该各个队列对应的数据流并发数量进行举例说明:例如,在预设周期达到时,队列1当前对应的聚合大小门限值为8kb。队列2当前对应的聚合大小门限值为32kb。队列3当前对应的聚合大小门限值为64kb。在预设周期达到时,数据流处理设备可以将队列1上一次写入存储介质的聚合数据流确定为第一聚合数据流1,将队列2上一次写入存储介质的聚合数据流确定为第一聚合数据流2,将队列3上一次写入存储介质的聚合数据流确定为第一聚合数据流3。在预设周期达到时,数据流处理设备同时接收到100个数据流。该100个数据流中,大小为10kb的数据流一共有20个,则大小为10kb的数据流的并发数量为20个。该100个数据流中,大小为35kb的数据流一共有10个,则大小为35kb的数据流的并发数量为10个。该100个数据流中,大小为66kb的数据流一共有20个,则大小为66kb的数据流的并发数量为20个。第一聚合数据流1的写入时延为从接收到该第一聚合数据流1中的数据流起至将第一聚合数据流1成功写入存储介质的时长t1。第一聚合数据流2的写入时延为从接收到该第一聚合数据流2中的数据流起至将第一聚合数据流2成功写入存储介质的时长t2。第一聚合数据流3的写入时延为从接收到该第一聚合数据流3中的数据流起至将第一聚合数据流3成功写入存储介质的时长t3。第一聚合数据流1的大小为10kb,因此,队列1对应的数据流并发数量为20个。第一聚合数据流2的大小为35kb,因此,队列2对应的数据流并发数量为10个。第一聚合数据流3的大小为66kb,因此,队列3对应的数据流并发数量为20个。通过实施该实施方式,能够根据当前的实际情况,灵活地动态地为各个队列设置最优的聚合大小门限值,从而提升数据流处理设备的tps。作为一种可选的实施方式,数据流处理设备以预设时间为周期,根据数据流处理设备的各个队列的第一聚合数据流的写入时延以及该各个队列对应的数据流并发数量设置该各个队列对应的聚合大小门限值的具体实施方式为:以预设时间为周期,根据各个队列的第一聚合数据流的写入时延以及各个队列对应的数据流并发数量计算各个队列对应的tps;将第一tps对应的第一聚合数据流的大小设置为各个队列对应的聚合大小门限值,该第一tps为各个队列对应的tps中最大的tps。可选的,第一队列对应的其中,n为第一队列对应的数据流并发数量,t为第一队列的第一聚合数据流的写入时延,其中t的单位为毫秒。当t的单位为秒时,第一队列对应的例如,队列1的第一聚合数据流1的写入时延为t1毫秒,队列1对应的数据流并发数量为20个。队列2的第一聚合数据流2的写入时延为t2毫秒,队列1对应的数据流并发数量为10个。队列3的第一聚合数据流3的写入时延为t3毫秒,队列3对应的数据流并发数量为20个。队列1对应的队列2对应的队列3对应的若tps1大于tps2和tps3,则tps1为第一tps。数据流处理设备将tps1对应的第一聚合数据流1的大小设置为队列1~3的聚合大小门限值。例如,第一聚合数据流1为40kb,则将队列1~队列3的聚合大小门限值均设置为40kb。可选的,若第一聚合数据流1的大小小于队列对应的存储大小范围,则保持该队列的聚合大小门限值不变。例如,队列1用于存储大小在0~4kb的数据流。队列2用于存储大小在5~16kb的数据流。队列3用于存储大小在17~32kb的数据流。第一聚合数据流1为16kb,则将队列1和队列2的聚合大小门限值均设置为16kb,队列3的聚合大小门限值保持不变。通过实施该实施方式,能够根据当前的实际情况准确地计算出各个队列设置最优的聚合大小门限值。作为一种可选的实施方式,数据流处理设备的各个队列具有对应的数据流聚合数量,步骤303,即数据流处理设备对第一队列中的数据流进行聚合的具体实施方式可以为:根据第一队列对应的数据流聚合数量对第一队列中的数据流进行聚合。步骤304,即数据流处理设备将聚合后得到的聚合数据流写入存储介质中的具体实施方式为:当聚合的第一队列的数据流的数量达到第一队列对应的数据流聚合数量时,将第一队列的聚合数据流写入存储介质中。例如,队列1对应的数据流聚合数量为5个,则数据流处理设备将队列1中的5个数据流聚合为一个数据流,并将聚合后得到的聚合数据流写入存储介质中。可选的,各个队列对应的数据流聚合数量可以是预先设置好的固定值,例如,数据流聚合数量可以是一个预先设置好的有利于提升数据流处理设备的tps的经验值。因此,通过实施该实施方式,有利于提升数据流处理设备的tps。可选的,数据流处理设备的各个队列除具有对应的数据流聚合数量之外,还具有对应的聚合时间门限值。除当聚合的第一队列的数据流的数量达到第一队列对应的数据流聚合数量时,将第一队列的聚合数据流写入存储介质中之外,当对第一队列中的数据流进行聚合的时间达到第一队列对应的聚合时间门限值时,将第一队列的聚合数据流写入存储介质中。当对第一队列中的数据流进行聚合的时间达到第一队列对应的聚合时间门限值时,将第一队列的聚合数据流写入存储介质中的具体实现原理可参见上述实施例中的说明,在此不赘述。通过实施该实施方式,若长时间第一队列中无法聚合第一队列对应的数据流聚合数量的数据流,则将导致第一队列中的数据流长时间无法写入存储介质。因此,通过实施该实施方式,有利于降低将第一队列中的数据流长时间无法写入存储介质的时延。本发明实施例可以根据上述方法示例对设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本发明实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。请参见图9,图9是本发明实施提供的一种数据流处理设备。该数据流处理设备可用于执行图3或图6中数据流处理设备的行为功能。下述对数据流处理设备的结构进行简单的说明,具体的功能与特征请参考方法实施例,在此不再赘述。该数据流处理设备包括多个队列,该多个队列中不同的队列用于存储不同大小范围的数据流,该数据流处理设备包括:通信模块901和处理模块902。其中:通信模块901,用于接收待写入存储介质的多个数据流;处理模块902,用于根据多个数据流的大小,将多个数据流分别输入对应的队列中;处理模块902,还用于对第一队列中的数据流进行聚合,第一队列为多个队列中的任意一个;处理模块902,还用于将聚合后得到的聚合数据流写入存储介质中。可选的,多个队列中的各个队列具有对应的聚合大小门限值,处理模块902对第一队列中的数据流进行聚合的方式具体为:根据第一队列对应的聚合大小门限值对第一队列中的数据流进行聚合;处理模块902将聚合后得到的聚合数据流写入存储介质中的方式具体为:当第一队列的聚合数据流的大小达到第一队列对应的聚合大小门限值时,将第一队列的聚合数据流写入存储介质中。可选的,多个队列中的各个队列具有对应的聚合时间门限值,处理模块902,还用于当对第一队列中的数据流进行聚合的时间达到第一队列对应的聚合时间门限值时,将第一队列的聚合数据流写入存储介质中。可选的,处理模块902,还用于以预设时间为周期,根据各个队列的第一聚合数据流的写入时延以及各个队列对应的数据流并发数量设置各个队列对应的聚合大小门限值,其中,第一队列的第一聚合数据流的写入时延为从接收到第一队列的第一聚合数据流中的数据流至成功写入第一聚合数据流的时长,第一队列对应的数据流并发数量为大小与第一队列的第一聚合数据流的大小相同的数据流的并发数量。可选的,处理模块902以预设时间为周期,根据各个队列的第一聚合数据流的写入时延以及各个队列对应的数据流并发数量设置各个队列对应的聚合大小门限值的方式具体为:以预设时间为周期,根据各个队列的第一聚合数据流的写入时延以及各个队列对应的数据流并发数量计算各个队列对应的每秒事务处理量tps;将第一tps对应的第一聚合数据流的大小设置为各个队列对应的聚合大小门限值,第一tps为各个队列对应的tps中最大的tps。请参见图10,图10是本申请实施例公开的一种数据流处理设备的结构示意图。该数据流处理设备可以执行上述方法实施例中图3或图6所示的数据流处理设备。如图10所示,该数据流处理设备1000包括处理器1001、存储器1002和通信接口1003。其中,处理器1001、存储器1002和通信接口1003相连。其中,处理器1001可以是中央处理器(centralprocessingunit,cpu),通用处理器,协处理器,数字信号处理器(digitalsignalprocessor,dsp),专用集成电路(application-specificintegratedcircuit,asic),现场可编程门阵列(fieldprogrammablegatearray,fpga)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。该处理器1001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等等。其中,通信接口1003用于实现与其他网元(如目标设备)之间的通信。其中,处理器1001调用存储器1002中存储的程序代码,可执行上述方法实施例中数据流处理设备所执行的步骤。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1