CN114995770A - 一种数据处理方法、装置、设备、***及可读存储介质 - Google Patents
一种数据处理方法、装置、设备、***及可读存储介质 Download PDFInfo
- Publication number
- CN114995770A CN114995770A CN202210919507.1A CN202210919507A CN114995770A CN 114995770 A CN114995770 A CN 114995770A CN 202210919507 A CN202210919507 A CN 202210919507A CN 114995770 A CN114995770 A CN 114995770A
- Authority
- CN
- China
- Prior art keywords
- data
- processing
- cabinet
- block
- data block
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 18
- 238000000034 method Methods 0.000 claims abstract description 51
- 238000004590 computer program Methods 0.000 claims description 36
- 230000005540 biological transmission Effects 0.000 claims description 15
- 238000012163 sequencing technique Methods 0.000 claims description 8
- 238000005215 recombination Methods 0.000 claims description 2
- 230000006798 recombination Effects 0.000 claims description 2
- 230000000694 effects Effects 0.000 abstract description 8
- 230000000875 corresponding effect Effects 0.000 description 97
- 241000282326 Felis catus Species 0.000 description 13
- 238000004891 communication Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000001276 controlling effect Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000008521 reorganization Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0877—Cache access modes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
- G06F3/0676—Magnetic disk device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了计算机技术领域内的一种数据处理方法、装置、设备、***及可读存储介质。本申请能够在机柜的临时文件交换区同时处理N个条带,具体可以将N个条带中的各数据块按照块处理时长进行排序,得到块序列,然后将块序列划分为数据块个数相等的N个数据块组,以使块处理时长小的各数据块重组在一起,那么块处理时长大的各数据块重组在一起,那么按照各数据块组对机柜中的相应磁盘进行操作时,就可以降低同一数据块组中的各数据块相互等待的概率,从而降低条带处理时的等待时长。相应地,本申请提供的一种数据处理装置、设备、***及可读存储介质,也同样具有上述技术效果。
Description
技术领域
本申请涉及计算机技术领域,特别涉及一种数据处理方法、装置、设备、***及可读存储介质。
背景技术
目前,将数据从磁盘读取至内存或从内存写入磁盘是一个条带一个条带进行的。即:每次从磁盘读取一个条带的数据至内存或每次将一个条带的数据从内存写入磁盘。一个条带中包括多个数据块,因此一个条带的数据在磁盘和内存之间的传输以数据块为最小数据单元。
假设一个条带包括4个数据块:C1、C2、C3、C4,且这4个数据块在磁盘和内存之间传输所需的时间分别为:2个时间单位、3个时间单位、1个时间单位、4个时间单位。而一般情况下,一个条带内的所有数据块都传输完成这一个条带就被认为传输完成,因此若同时开始传输上述4个数据块,需要等待4个时间单位才能完成该条带的传输。可见,一个条带的实际传输时间取决于其中传输时间最长的数据块,故一个条带在实际传输时需要等待该条带中耗时最长的数据块,导致条带的传输时间较长,影响读写操作效率。
因此,如何降低条带处理时的等待时长,是本领域技术人员需要解决的问题。
发明内容
有鉴于此,本申请的目的在于提供一种数据处理方法、装置、设备、***及可读存储介质,以降低条带处理时的等待时长。其具体方案如下:
第一方面,本申请提供了一种数据处理方法,包括:
在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果;2≤N≤预设阈值X;
将所述N个条带中的各数据块按照块处理时长进行排序,得到块序列;
将所述块序列划分为数据块个数相等的N个数据块组;
按照各数据块组对所述机柜中的相应磁盘进行操作。
可选地,所述在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果之前,还包括:
针对当前操作在所述机柜中对应的所有条带,将N个条带划分为一个条带组,得到多个条带组;
针对每个条带组,分别执行所述在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果的步骤。
可选地,所述针对当前操作要处理的所有条带,将N个条带划分为一个条带组,得到多个条带组,包括:
将当前操作要处理的所有条带按照条带处理时长进行排序,得到条带序列;
在所述条带序列中,将N个条带划分为一个条带组,得到多个条带组。
可选地,任一条带的条带处理时长为:该条带包括的所有数据块的块处理时长之和。
可选地,所述按照各数据块组对所述机柜中的相应磁盘进行操作,包括:
按照各数据块组将所述机柜中的相应磁盘中的数据缓存至所述临时文件交换区。
可选地,还包括:
在所述临时文件交换区对所述N个中间处理结果和新缓存的数据进行处理,得到新处理结果。
可选地,所述得到新处理结果之后,还包括:
将所述新处理结果通过交换设备发送至当前存储节点中的其他机柜;所述交换设备与当前存储节点中的各机柜相连;
或
将所述新处理结果写入所述机柜中的相应磁盘。
可选地,所述按照各数据块组对所述机柜中的相应磁盘进行操作,包括:
按照各数据块组将所述N个中间处理结果写入所述机柜中的相应磁盘。
可选地,所述在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果之前,还包括:
接收交换设备发送的所述N个中间处理结果;所述交换设备与当前存储节点中的各机柜相连。
可选地,若对磁盘进行读操作,则任一数据块的块处理时长取该数据块所属磁盘对应的传输时钟计数。
可选地,若对磁盘进行写操作,则任一数据块的块处理时长为:该数据块所属磁盘的单位写操作的处理时长。
可选地,所述将所述N个条带中的各数据块按照块处理时长进行排序之前,还包括:
若所述N个条带中的数据块个数不等,则使所述N个条带中的数据块个数相等后,执行所述将所述N个条带中的各数据块按照块处理时长进行排序,得到块序列;将所述块序列划分为数据块个数相等的N个数据块组;按照各数据块组对所述机柜中的相应磁盘进行操作的步骤。
第二方面,本申请提供了一种数据处理装置,包括:
确定模块,用于在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果;2≤N≤预设阈值X;
数据块排序模块,用于将所述N个条带中的各数据块按照块处理时长进行排序,得到块序列;
数据块重组模块,用于将所述块序列划分为数据块个数相等的N个数据块组;
磁盘操作模块,用于按照各数据块组对所述机柜中的相应磁盘进行操作。
可选地,还包括:
条带组生成模块,用于在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果之前,针对当前操作在所述机柜中对应的所有条带,将N个条带划分为一个条带组,得到多个条带组;
执行模块,用于针对每个条带组,分别执行确定模块、数据块排序模块、数据块重组模块以及磁盘操作模块中的步骤。
可选地,所述条带组生成模块具体用于:
将当前操作要处理的所有条带按照条带处理时长进行排序,得到条带序列;
在所述条带序列中,将N个条带划分为一个条带组,得到多个条带组。
可选地,任一条带的条带处理时长为:该条带包括的所有数据块的块处理时长之和。
可选地,所述磁盘操作模块具体用于:
按照各数据块组将所述机柜中的相应磁盘中的数据缓存至所述临时文件交换区。
可选地,还包括:
数据处理模块,用于在所述临时文件交换区对所述N个中间处理结果和新缓存的数据进行处理,得到新处理结果。
可选地,数据处理模块还用于:
得到新处理结果之后,将所述新处理结果通过交换设备发送至当前存储节点中的其他机柜;所述交换设备与当前存储节点中的各机柜相连;或将所述新处理结果写入所述机柜中的相应磁盘。
可选地,所述磁盘操作模块具体用于:
按照各数据块组将所述N个中间处理结果写入所述机柜中的相应磁盘。
可选地,还包括:
接收模块,用于在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果之前,接收交换设备发送的所述N个中间处理结果;所述交换设备与当前存储节点中的各机柜相连。
可选地,若对磁盘进行读操作,则任一数据块的块处理时长取该数据块所属磁盘对应的传输时钟计数。
可选地,若对磁盘进行写操作,则任一数据块的块处理时长为:该数据块所属磁盘的单位写操作的处理时长。
可选地,还包括:
填充模块,用于若所述N个条带中的数据块个数不等,则使所述N个条带中的数据块个数相等后,进入数据块排序模块。
第三方面,本申请提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现前述公开的数据处理方法。
第四方面,本申请提供了一种数据处理***,包括:多个存储节点,每个存储节点包括多个如上所述的电子设备。
第五方面,本申请提供了一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述公开的数据处理方法。
通过以上方案可知,本申请提供了一种数据处理方法,包括:在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果;2≤N≤预设阈值X;将所述N个条带中的各数据块按照块处理时长进行排序,得到块序列;将所述块序列划分为数据块个数相等的N个数据块组;按照各数据块组对所述机柜中的相应磁盘进行操作。
可见,本申请能够在临时文件交换区同时处理N个条带,具体可以将N个条带中的各数据块按照块处理时长进行排序,得到块序列,然后将块序列划分为数据块个数相等的N个数据块组,以使块处理时长小的各数据块重组在一起,那么块处理时长大的各数据块重组在一起,那么按照各数据块组对机柜中的相应磁盘进行操作时,就可以降低同一数据块组中的各数据块相互等待的概率,从而降低条带处理时的等待时长。
下面举例说明本申请的技术效果。假设条带1包括4个数据块:C1、C2、C3、C4,且这4个数据块的处理时间分别为:2个时间单位、3个时间单位、1个时间单位、4个时间单位,其中耗时最长的C4需要4个时间单位,故按照现有技术需要等待4个时间单位才能完成条带1的处理。假设另一条带2包括4个数据块:C5、C6、C7、C8,这4个数据块的处理时间分别为:2个时间单位、1个时间单位、1个时间单位、1个时间单位,其中耗时最长的C5需要2个时间单位,故按照现有技术需要等待2个时间单位才能完成条带2的处理。那么条带1和条带2的总处理时间为4+2=6个时间单位。若按照本申请在临时文件交换区同时处理条带1和条带2,那么排列C1-C8可得到块序列[C4、C2、C1、C5、C3、C6、C7、C8](耗时时间相等的数据块无特定先后顺序,如:C1可排列在C5之前,也可排列在C5之后),据此将C4、C2、C1、C5重组为一个数据块组,该数据块组中的最长耗时数据块为C4,C4需要4个时间单位,故处理该数据块组需要4个时间单位。而将C3、C6、C7、C8重组为另一个数据块组,该数据块组中的各数据块的耗时时间均为1个时间单位,故处理该数据块组需要1个时间单位。那么处理这两个数据块组总共需要4+1=5个时间单位,比现有技术的6个时间单位小1个时间单位。可见,本申请能够降低条带处理时的等待时长,从而提升读写操作效率。
相应地,本申请提供的一种数据处理装置、设备、***及可读存储介质,也同样具有上述技术效果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种数据处理方法流程图;
图2为本申请公开的一种节点中各机柜的连接示意图;
图3为本申请公开的一种现有技术和本申请的对比示意图;
图4为本申请公开的一种现有技术和本申请的实验效果对比示意图;
图5为本申请公开的另一种现有技术和本申请的实验效果对比示意图;
图6为本申请公开的一种数据处理装置示意图;
图7为本申请公开的一种电子设备示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,一个条带在实际传输时需要等待该条带中耗时最长的数据块,导致条带的传输时间较长,影响读写操作效率。为此,本申请提供了一种数据处理方案,能够降低同一数据块组中的各数据块相互等待的概率,从而降低条带处理时的等待时长。
参见图1所示,本申请实施例公开了一种数据处理方法,应用于存储节点中的任一机柜,包括:
S101、在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果。
在本实施例中,一个存储节点包括至少一个机柜,一个机柜可以包括至少一个临时文件交换区以及相应控制器。控制器用于控制本地机柜的数据读写工作。一个临时文件交换区即一个内存介质,如DDR(Double Data Rate,双倍速率同步动态随机存储器)。条带可以参照如下示例进行理解:假设一个机柜中有3个磁盘:磁盘1、磁盘2、磁盘3,每个磁盘包括5个数据块,那么可以将磁盘1中的数据块1、磁盘2中的数据块1、磁盘3中的数据块1组成一个条带;相应地,磁盘1中的数据块2、磁盘2中的数据块2、磁盘3中的数据块2组成另一个条带;据此类推,可得到5个条带。当然,还可以跨机柜组成条带。可见,横跨不同磁盘的用于实现校验服务的单位被称作条带。
由于机柜的临时文件交换区中有N个条带对应的N个中间处理结果,因此该临时文件交换区允许同时处理N个条带,临时文件交换区允许同时处理的条带越多,并发量就越大,处理效率就越高。当然,计算机对于数据的处理还需要考虑内存可用空间、协议的并发限制等因素,因此临时文件交换区允许同时处理的条带数量需要综合考虑各种因素,从而设定一个合适的取值。在一种示例中,2≤N≤预设阈值X,预设阈值X即为:综合考虑内存最大可用空间、协议并发限制等因素后可取的最大条带数。当N=1时,本申请与现有技术可实现一样的效果。N取自然数,即N=1、2、3、4、5……X,当N≥2时,方案效率及性能优于现有技术。
需要说明的是,N个中间处理结果可以是当前机柜从其他机柜或设备获取的数据,也可以是当前机柜从自身磁盘中读取的数据。因此在一种具体实施方式中,在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果之前,还包括:接收交换设备发送的N个中间处理结果;交换设备与当前存储节点中的各机柜相连。可见,一个存储节点中的各机柜通过交换设备连接,交换设备如交换机。
在一种示例中,一个存储节点中各设备的连接关系请参见图2。如图2所示,一个存储节点中的各机柜通过交换机连接。一个机柜对应有4个磁盘、1个内存区和一个控制器。
S102、将N个条带中的各数据块按照块处理时长进行排序,得到块序列。
S103、将块序列划分为数据块个数相等的N个数据块组。
请参照图3,假设条带1包括4个数据块:C1、C2、C3、C4,且这4个数据块的处理时间分别为:2个时间单位、3个时间单位、1个时间单位、4个时间单位。假设另一条带2包括4个数据块:C5、C6、C7、C8,这4个数据块的处理时间分别为:2个时间单位、1个时间单位、1个时间单位、1个时间单位。那么按照现有技术,条带1和条带2的总处理时间为4+2=6个时间单位。若按照本实施例,在临时文件交换区同时处理条带1和条带2,那么排列C1-C8可得到块序列[C4、C2、C1、C5、C3、C6、C7、C8],据此可得到第一数据块组[C4、C2、C1、C5],以及第二数据块组[C3、C6、C7、C8]。可见,这两个数据块组中的数据块个数相等,且数据块组的数量为2,与临时文件交换区同时处理的条带个数相等。因此第一数据块组和第二数据块组可以被认为是:对2个条带中的各数据块重组得到的新条带。当然,第一数据块组和第二数据块组并不是真正意义上的条带。
S104、按照各数据块组对机柜中的相应磁盘进行操作。
请参见图3,对2个条带中的各数据块重组得到的第一数据块组需要4个时间单位即可处理完成,而第二数据块组需要1个时间单位即可处理完成。因此本实施例能够缩短条带处理时长,提升读写性能。
需要说明的是,按照各数据块组对机柜中的相应磁盘进行操作即:按照每个数据块组对磁盘中的相应数据块进行读或写操作。例如:按照第一数据块组中,在机柜的各磁盘中查C4、C2、C1、C5所在位置,然后将磁盘中的C4、C2、C1、C5读取至临时文件交换区。又如:按照第一数据块组中,在机柜的各磁盘中查C4、C2、C1、C5所在位置,然后将临时文件交换区中与C4、C2、C1、C5对应的中间处理结果写入磁盘中C4、C2、C1、C5所在位置。
可见,本实施例能够在临时文件交换区同时处理N个条带,具体可以将N个条带中的各数据块按照块处理时长进行排序,得到块序列,然后将块序列划分为数据块个数相等的N个数据块组,以使块处理时长小的各数据块重组在一起,那么块处理时长大的各数据块重组在一起,那么按照各数据块组对机柜中的相应磁盘进行操作时,就可以降低同一数据块组中的各数据块相互等待的概率,从而降低条带处理时的等待时长。
基于上述实施例,需要说明的是,在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果之前,还包括:针对当前操作在机柜中对应的所有条带,将N个条带划分为一个条带组,得到多个条带组;针对每个条带组,分别执行在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果;将N个条带中的各数据块按照块处理时长进行排序,得到块序列;将块序列划分为数据块个数相等的N个数据块组;按照各数据块组对机柜中的相应磁盘进行操作的步骤,直至当前操作在机柜中对应的所有中间处理结果都被处理。可见,临时文件交换区中存有当前操作对应的所有条带的中间处理结果,本申请以N这一数值设定:临时文件交换区每次同时处理N个条带对应的N个中间处理结果。假设当前操作对应的所有条带有S个,那么需要处理S/N次,即条带组有N个。
在一种具体实施方式中,针对当前操作要处理的所有条带,将N个条带划分为一个条带组,得到多个条带组,包括:将当前操作要处理的所有条带按照条带处理时长进行排序,得到条带序列;在条带序列中,将N个条带划分为一个条带组,得到多个条带组。需要说明的是,将当前操作要处理的所有条带按照条带处理时长排序得到条带序列,在条带序列中截取条带组,那么排列在条带序列前面的各条带相对于排列在条带序列后面的各条带的处理耗时时间相对较少,因此先对排列在条带序列前面的条带组按照本申请进行处理,可使处理耗时时间较短的条带先被处理。例如:条带序列为[A、B、C、D、E、F],假设N=2,那么划分条带序列可得到:第一条带组[A、B],第二条带组[C、D],第三条带组[E、F];那么先针对第一条带组[A、B],执行本申请,再针对第二条带组[A、B]、第三条带组[E、F]执行本申请,如此耗时时间较短的条带A、B可以先被处理。也即:按照各条带组在条带序列中的先后顺序在各条带组中选择一个条带组,再执行本申请,直至针对各条带组都完成处理。
在一种具体实施方式中,任一条带的条带处理时长为:该条带包括的所有数据块的块处理时长之和。假设条带1包括4个数据块:C1、C2、C3、C4,且这4个数据块的处理时间分别为:2个时间单位、3个时间单位、1个时间单位、4个时间单位,那么条带1的条带处理时长为:2+3+1+4=10个时间单位。
基于上述实施例,需要说明的是,本申请按照每个数据块组对磁盘中的相应数据块进行读或写操作。因此按照各数据块组对机柜中的相应磁盘进行操作,包括:针对每个条带组,按照各数据块组将机柜中的相应磁盘中的数据缓存至临时文件交换区。也即:按照每个数据块组将磁盘中的相应数据块读取至内存。
针对每个条带组完成数据缓存后,当前用户操作所需的磁盘数据均已存储在临时文件交换区中,因此可以在临时文件交换区对所有N个中间处理结果和新缓存的数据进行处理,以得到新处理结果。
其中,处理所有N个中间处理结果和新缓存的数据得到的新处理结果可以在本机柜中落盘,也可以发送至其他机柜进一步处理。因此在一种具体实施方式中,得到新处理结果之后,还包括:将新处理结果通过交换设备发送至当前存储节点中的其他机柜;交换设备与当前存储节点中的各机柜相连;或将新处理结果写入机柜中的相应磁盘。
其中,处理所有N个中间处理结果和新缓存的数据得到的新处理结果在本机柜中落盘时,仍按照本申请提供的方案进行。也即:确定新处理结果在当前机柜中对应的所有条带,将N个条带划分为一个条带组,得到多个条带组;针对每个条带组,分别执行在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果;将N个条带中的各数据块按照块处理时长进行排序,得到块序列;将块序列划分为数据块个数相等的N个数据块组;按照各数据块组对机柜中的相应磁盘进行操作的步骤,直至新处理结果在当前机柜中对应的所有新处理结果都被处理。
在一种示例中,针对任一个条带组,按照各数据块组将机柜中的相应磁盘中的数据缓存至临时文件交换区后,可以在临时文件交换区对该条带组对应的N个中间处理结果和新缓存的数据进行处理,以得到处理结果。其中,此处理结果可以在本机柜中落盘,也可以发送至其他机柜进一步处理。因此得到该处理结果之后,还可以将该处理结果通过交换设备发送至当前存储节点中的其他机柜;或将该处理结果写入当前机柜中的相应磁盘。
其中,将该处理结果写入当前机柜中的相应磁盘时,仍按照本申请提供的方案进行。也即:在机柜的临时文件交换区中确定该处理结果对应的N个条带;将N个条带中的各数据块按照块处理时长进行排序,得到块序列;将块序列划分为数据块个数相等的N个数据块组;按照各数据块组将当前处理结果写入当前机柜中的相应磁盘。
可见,按照本申请,可以等待一个操作的所有条带都被处理完后,再执行下一个操作的处理,如此则需要重复进行条带分组步骤。也可以在处理完成N个中间结果后,直接对该N个中间结果的处理结果进行下一个操作的处理,如此则无需重复进行条带分组。
在一种示例中,如果按照每个数据块组对磁盘中的相应数据块进行写操作,那么按照各数据块组对机柜中的相应磁盘进行操作,包括:按照各数据块组将N个中间处理结果写入机柜中的相应磁盘。也即:临时文件交换区中的N个中间处理结果是用于修改磁盘中的相应数据块的。
在一种具体实施方式中,若对磁盘进行读操作,则任一数据块的块处理时长取该数据块所属磁盘对应的传输时钟计数。一个机柜的控制器处设有一个时钟计数器,该时钟计数器记录本机柜内各磁盘的预计空闲时间。如:某一机柜中的磁盘1上有任务正在被执行,且预计该任务还需10秒才能完成,因此该机柜控制器的时钟计数器记录磁盘1的传输时钟计数为:10秒。
在一种具体实施方式中,若对磁盘进行写操作,则任一数据块的块处理时长为:该数据块所属磁盘的单位写操作的处理时长。单位写操作即:执行一次写操作需要花费的时长。
可见,块处理时长可以是磁盘执行一个写操作所需的时长,也可以是磁盘执行一个读操作所需的时长,具体跟随当前操作而定。即:如果当前操作是从磁盘里读出数据,那么块处理时长是磁盘执行一个读操作所需的时长。而如果当前操作是往磁盘里写数据,那么块处理时长是磁盘执行一个写操作所需的时长。当然,块处理时长也可以利用其他手段进行确定。例如:磁盘执行多个写操作或读操作所需时长的均值。
基于上述实施例,需要说明的是将N个条带中的各数据块按照块处理时长进行排序之前,还包括:若N个条带中的数据块个数不等,则使N个条带中的数据块个数相等后,执行将N个条带中的各数据块按照块处理时长进行排序,得到块序列;将块序列划分为数据块个数相等的N个数据块组;按照各数据块组对机柜中的相应磁盘进行操作的步骤。也就是说,如果不同条带中的数据块个数不等,则先使各个条带中的数据块个数相等后,再执行后续步骤。其中,可以往小条带中填充无效数据块来使各个条带中的数据块个数相等。例如:当N=3时,条带1包括2个数据块,条带2包括2个数据块,条带3包括3个数据块,那么往条带1和条带2中各填充一个无效数据块,使得条带1和条带2也包括3个数据块。其中,无效数据块中无数据或存储有全0的无意义数据。
基于上述实施例,需要说明的是,N的取值决定了临时文件交换区可同时并行处理的条带个数。
在一种示例中,假设某一操作需要处理16个条带,且N用bn代替,取值为4,那么对16个条带基于bn的数量进行分组后,先选择最小耗时时间的条带组执行本申请提供的方案,直至各个条带组都被处理。一个条带包括32个数据块。
具体的伪代码如下所示:
for i = 1:numb
temp = randsrc(16,32,[num; prob]);
sum_c = sum(temp,2);
list= [1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16];
matrix = cat(2,sum_c,list);
[sum_value,list_num] = sort(matrix(:,1));
temp1 = cat(2, temp(list_num(1),:),temp(list_num(2),:));
temp2 = cat(2, temp(list_num(3),:),temp(list_num(4),:));
temp3 = cat(2, temp(list_num(5),:),temp(list_num(6),:));
temp4 = cat(2, temp(list_num(7),:),temp(list_num(8),:));
temp5 = cat(2, temp(list_num(9),:),temp(list_num(10),:));
temp6 = cat(2, temp(list_num(11),:),temp(list_num(12),:));
temp7 = cat(2, temp(list_num(13),:),temp(list_num(14),:));
temp8 = cat(2, temp(list_num(15),:),temp(list_num(16),:));
temp11 = cat(2,temp1,temp2);
temp12 = cat(2,temp3,temp4);
temp13 = cat(2,temp5,temp6);
temp14 = cat(2,temp7,temp8);
temp1 = sort(temp11);
temp2 = sort(temp12);
temp3 = sort(temp13);
temp4 = sort(temp14);
bn4c16 =bn4c16+((temp1(32)+temp1(64)+temp1(96)+temp1(128)+temp2(32)+temp2(64)+temp2(96)+temp2(128)+temp3(32)+temp3(64)+temp3(96)+temp3(128)+temp4(32)+temp4(64)+temp4(96)+temp4(128))/16);
end
如上述代码示意,首先对16个条带的条带耗时时间进行计算,然后根据计算结果对16个条带进行排序,然后自小向大每4个条带选为一个条带组,针对每个条带组中的32×4个块,基于块耗时时间进行排序,然后自小向大每32个块选为一个组进行处理,直至该条带组内的所有块都被处理。其中,每32个块选为一个组时,需要相应记录这些块的原位置,以便在相应磁盘上读或写相应块。上述代码中采用机柜控制器中的计数器时间作为块耗时时间。
下述对比本申请和现有技术的实验效果。假设耗时时间一般为1个时间单位,在实际情况影响下,耗时时间可能变化为2-5个时间单位。假设实际情况下1-5个时间单位出现的几率分别为:50%,30%,10%,7%,3%。
假设N取值2或4,那么在总条带量分别为4、8、16时,仿真10000次取条带处理完的平均耗时,相应的方案效果对比如图4所示。如图4所示,现有技术在任意情况下处理完成的时间都比较长,而按照本申请,N取值越大时,处理完成时间越短。相同条件下,假设1-5个时间单位出现的几率均为20%,那么相应的方案效果对比如图5所示。可见,图5和图4反映了相同效果。
通过图4和图5的比较可知,本申请对于不同条带总量下都有改进效果,其改进效果随着N取值的增加而增加。
可见,本申请可以降低同一数据块组中的各数据块相互等待的概率,从而降低条带处理时的等待时长。在任何分布式存储场景下都可以提升传输速度。
下面对本申请实施例提供的一种数据处理装置进行介绍,下文描述的一种数据处理装置与上文描述的一种数据处理方法可以相互参照。
参见图6所示,本申请实施例公开了一种数据处理装置,包括:
确定模块601,用于在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果;2≤N≤预设阈值X;
数据块排序模块602,用于将N个条带中的各数据块按照块处理时长进行排序,得到块序列;
数据块重组模块603,用于将块序列划分为数据块个数相等的N个数据块组;
磁盘操作模块604,用于按照各数据块组对机柜中的相应磁盘进行操作。
在一种具体实施方式中,还包括:
条带组生成模块,用于在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果之前,针对当前操作在机柜中对应的所有条带,将N个条带划分为一个条带组,得到多个条带组;
执行模块,用于针对每个条带组,分别执行确定模块、数据块排序模块、数据块重组模块以及磁盘操作模块中的步骤。
在一种具体实施方式中,条带组生成模块具体用于:
将当前操作要处理的所有条带按照条带处理时长进行排序,得到条带序列;
在条带序列中,将N个条带划分为一个条带组,得到多个条带组。
在一种具体实施方式中,任一条带的条带处理时长为:该条带包括的所有数据块的块处理时长之和。
在一种具体实施方式中,磁盘操作模块具体用于:
按照各数据块组将机柜中的相应磁盘中的数据缓存至临时文件交换区。
在一种具体实施方式中,还包括:
数据处理模块,用于在临时文件交换区对所述N个中间处理结果和新缓存的数据进行处理,得到新处理结果。
在一种具体实施方式中,数据处理模块还用于:
得到新处理结果之后,将新处理结果通过交换设备发送至当前存储节点中的其他机柜;交换设备与当前存储节点中的各机柜相连;或将新处理结果写入机柜中的相应磁盘。
在一种具体实施方式中,磁盘操作模块具体用于:
按照各数据块组将N个中间处理结果写入机柜中的相应磁盘。
在一种具体实施方式中,还包括:
接收模块,用于在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果之前,接收交换设备发送的N个中间处理结果;交换设备与当前存储节点中的各机柜相连。
在一种具体实施方式中,若对磁盘进行读操作,则任一数据块的块处理时长取该数据块所属磁盘对应的传输时钟计数。
在一种具体实施方式中,若对磁盘进行写操作,则任一数据块的块处理时长为:该数据块所属磁盘的单位写操作的处理时长。
可选地,还包括:
填充模块,用于若所述N个条带中的数据块个数不等,则使所述N个条带中的数据块个数相等后,进入数据块排序模块。
其中,关于本实施例中各个模块、单元更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
可见,本实施例提供了一种数据处理装置,能够降低同一数据块组中的各数据块相互等待的概率,从而降低条带处理时的等待时长。
下面对本申请实施例提供的一种电子设备进行介绍,下文描述的一种电子设备与上文描述的一种数据处理方法及装置可以相互参照。
参见图7所示,本申请实施例公开了一种电子设备,包括:
存储器701,用于保存计算机程序;
处理器702,用于执行所述计算机程序,以实现上述任意实施例公开的方法。
在一种具体实施方式中,电子设备中的处理器在执行计算机程序时,可以实现如下步骤:在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果;2≤N≤预设阈值X;将N个条带中的各数据块按照块处理时长进行排序,得到块序列;将块序列划分为数据块个数相等的N个数据块组;按照各数据块组对机柜中的相应磁盘进行操作。
在一种具体实施方式中,电子设备中的处理器在执行计算机程序时,可以实现如下步骤:在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果之前,针对当前操作在机柜中对应的所有条带,将N个条带划分为一个条带组,得到多个条带组;针对每个条带组,分别执行在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果的步骤。
在一种具体实施方式中,电子设备中的处理器在执行计算机程序时,可以实现如下步骤:将当前操作要处理的所有条带按照条带处理时长进行排序,得到条带序列;在条带序列中,将N个条带划分为一个条带组,得到多个条带组。
在一种具体实施方式中,电子设备中的处理器在执行计算机程序时,可以实现如下步骤:按照各数据块组将机柜中的相应磁盘中的数据缓存至临时文件交换区。
在一种具体实施方式中,电子设备中的处理器在执行计算机程序时,可以实现如下步骤:在临时文件交换区对所述N个中间处理结果和新缓存的数据进行处理,得到新处理结果。
在一种具体实施方式中,电子设备中的处理器在执行计算机程序时,可以实现如下步骤:得到新处理结果之后,将新处理结果通过交换设备发送至当前存储节点中的其他机柜;交换设备与当前存储节点中的各机柜相连;或将新处理结果写入机柜中的相应磁盘。
在一种具体实施方式中,电子设备中的处理器在执行计算机程序时,可以实现如下步骤:按照各数据块组将N个中间处理结果写入机柜中的相应磁盘。
在一种具体实施方式中,电子设备中的处理器在执行计算机程序时,可以实现如下步骤:在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果之前,接收交换设备发送的N个中间处理结果;交换设备与当前存储节点中的各机柜相连。
可见,本实施例提供了一种电子设备,能够降低同一数据块组中的各数据块相互等待的概率,从而降低条带处理时的等待时长。
当电子设备是服务器时,该服务器具体可以包括:至少一个处理器、至少一个存储器、电源、通信接口、输入输出接口和通信总线。其中,存储器用于存储计算机程序,计算机程序由处理器加载并执行,以实现前述任一实施例公开的相应方法。电源用于为服务器上的各硬件设备提供工作电压;通信接口能够为服务器创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。存储器作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源包括操作***、计算机程序及数据等,存储方式可以是短暂存储或者永久存储。其中,操作***用于管理与控制服务器上的各硬件设备以及计算机程序,以实现处理器对存储器中数据的运算与处理,其可以是Windows Server、Netware、Unix、Linux等。计算机程序除了包括能够用于完成前述任一实施例公开的方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。数据除了可以包括图像数据、文本数据、模型参数等数据外,还可以包括应用程序的开发商信息等数据。
当电子设备是终端时,该终端具体可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。通常,本实施例中的终端包括有:处理器和存储器。其中,处理器可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器可以采用DSP(DigitalSignal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central Processing Unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。存储器可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器至少用于存储以下计算机程序,其中,该计算机程序被处理器加载并执行之后,能够实现前述任一实施例公开的由终端侧执行的方法中的相关步骤。另外,存储器所存储的资源还可以包括操作***和数据等,存储方式可以是短暂存储或者永久存储。其中,操作***可以包括Windows、Unix、Linux等。数据可以包括但不限于图像数据、模型参数等。在一些实施例中,终端还可包括有显示屏、输入输出接口、通信接口、传感器、电源以及通信总线。
下面对本申请实施例提供的一种数据处理***进行介绍,下文描述的一种数据处理***与上文描述的一种数据处理方法、装置及设备可以相互参照。
本申请实施例公开了一种数据处理***,包括:多个存储节点,每个存储节点包括多个如上实施例所述的电子设备。该数据处理***可以是分布式存储***,那么各电子设备为分布式存储***中任一存储节点里的机柜。一个机柜中包括多个磁盘以及一个临时文件交换区(如DDR)。在一个存储节点内,各个机柜通过交换设备进行通信。
在分布式存储场景下,一个节点中的多个机柜通过网络连接,并通过上层主机进行控制,如图2所示。跨机柜工作时,受到传输协议、HOST控制流、工作状态等情况的影响,数据处理的时间损耗较大,而按照本申请可以降低数据跨机柜搬移所需时间。例如:在当前机柜的临时文件交换区中确定了当前操作对应的条带总量,之后将N个条带划分为一个条带组,得到多个条带组;针对任一条带组,在当前机柜的临时文件交换区中确定N个条带对应的N个中间处理结果;将N个条带中的各数据块按照块处理时长进行排序,得到块序列;将块序列划分为数据块个数相等的N个数据块组;按照各数据块组将N个条带的数据缓存至临时文件交换区,然后在临时文件交换区对上述N个中间处理结果和新缓存的N个条带的数据进行处理,得到处理结果,之后将此处理结果通过交换设备传输至其他机柜。可见,跨机柜工作时,处理一个条带的等待时长得到了缩短。
可见,本实施例提供了一种数据处理***,该数据处理***中每个节点都能够降低条带处理时的等待时长。
下面对本申请实施例提供的一种可读存储介质进行介绍,下文描述的一种可读存储介质与上文描述的一种数据处理方法、装置及设备可以相互参照。
一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的数据处理方法。
在一种具体实施方式中,可读存储介质中的计算机程序被处理器执行时可以实现如下步骤:在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果;2≤N≤预设阈值X;将N个条带中的各数据块按照块处理时长进行排序,得到块序列;将块序列划分为数据块个数相等的N个数据块组;按照各数据块组对机柜中的相应磁盘进行操作。
在一种具体实施方式中,可读存储介质中的计算机程序被处理器执行时可以实现如下步骤:在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果之前,针对当前操作在机柜中对应的所有条带,将N个条带划分为一个条带组,得到多个条带组;针对每个条带组,分别执行在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果的步骤。
在一种具体实施方式中,可读存储介质中的计算机程序被处理器执行时可以实现如下步骤:将当前操作要处理的所有条带按照条带处理时长进行排序,得到条带序列;在条带序列中,将N个条带划分为一个条带组,得到多个条带组。
在一种具体实施方式中,可读存储介质中的计算机程序被处理器执行时可以实现如下步骤:针对每个条带组,按照各数据块组将机柜中的相应磁盘中的数据缓存至临时文件交换区。
在一种具体实施方式中,可读存储介质中的计算机程序被处理器执行时可以实现如下步骤:在临时文件交换区对所述N个中间处理结果和新缓存的数据进行处理,得到新处理结果。
在一种具体实施方式中,可读存储介质中的计算机程序被处理器执行时可以实现如下步骤:得到新处理结果之后,将新处理结果通过交换设备发送至当前存储节点中的其他机柜;交换设备与当前存储节点中的各机柜相连;或将新处理结果写入机柜中的相应磁盘。
在一种具体实施方式中,可读存储介质中的计算机程序被处理器执行时可以实现如下步骤:按照各数据块组将N个中间处理结果写入机柜中的相应磁盘。
在一种具体实施方式中,可读存储介质中的计算机程序被处理器执行时可以实现如下步骤:在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果之前,接收交换设备发送的N个中间处理结果;交换设备与当前存储节点中的各机柜相连。
本申请涉及的“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法或设备固有的其它步骤或单元。
需要说明的是,在本申请中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的可读存储介质中。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (16)
1.一种数据处理方法,其特征在于,包括:
在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果;2≤N≤预设阈值X;
将所述N个条带中的各数据块按照块处理时长进行排序,得到块序列;
将所述块序列划分为数据块个数相等的N个数据块组;
按照各数据块组对所述机柜中的相应磁盘进行操作。
2.根据权利要求1所述的方法,其特征在于,所述在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果之前,还包括:
针对当前操作在所述机柜中对应的所有条带,将N个条带划分为一个条带组,得到多个条带组;
针对每个条带组,分别执行所述在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果的步骤。
3.根据权利要求2所述的方法,其特征在于,所述针对当前操作要处理的所有条带,将N个条带划分为一个条带组,得到多个条带组,包括:
将当前操作要处理的所有条带按照条带处理时长进行排序,得到条带序列;
在所述条带序列中,将N个条带划分为一个条带组,得到多个条带组。
4.根据权利要求3所述的方法,其特征在于,任一条带的条带处理时长为:该条带包括的所有数据块的块处理时长之和。
5.根据权利要求1所述的方法,其特征在于,所述按照各数据块组对所述机柜中的相应磁盘进行操作,包括:
按照各数据块组将所述机柜中的相应磁盘中的数据缓存至所述临时文件交换区。
6.根据权利要求5所述的方法,其特征在于,还包括:
在所述临时文件交换区对所述N个中间处理结果和新缓存的数据进行处理,得到新处理结果。
7.根据权利要求6所述的方法,其特征在于,所述得到新处理结果之后,还包括:
将所述新处理结果通过交换设备发送至当前存储节点中的其他机柜;所述交换设备与当前存储节点中的各机柜相连;
或
将所述新处理结果写入所述机柜中的相应磁盘。
8.根据权利要求1所述的方法,其特征在于,所述按照各数据块组对所述机柜中的相应磁盘进行操作,包括:
按照各数据块组将所述N个中间处理结果写入所述机柜中的相应磁盘。
9.根据权利要求1至8任一项所述的方法,其特征在于,所述在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果之前,还包括:
接收交换设备发送的所述N个中间处理结果;所述交换设备与当前存储节点中的各机柜相连。
10.根据权利要求1至8任一项所述的方法,其特征在于,若对磁盘进行读操作,则任一数据块的块处理时长取该数据块所属磁盘对应的传输时钟计数。
11.根据权利要求1至8任一项所述的方法,其特征在于,若对磁盘进行写操作,则任一数据块的块处理时长为:该数据块所属磁盘的单位写操作的处理时长。
12.根据权利要求1至8任一项所述的方法,其特征在于,所述将所述N个条带中的各数据块按照块处理时长进行排序之前,还包括:
若所述N个条带中的数据块个数不等,则使所述N个条带中的数据块个数相等后,执行所述将所述N个条带中的各数据块按照块处理时长进行排序的步骤。
13.一种数据处理装置,其特征在于,包括:
确定模块,用于在机柜的临时文件交换区中确定N个条带对应的N个中间处理结果;2≤N≤预设阈值X;
数据块排序模块,用于将所述N个条带中的各数据块按照块处理时长进行排序,得到块序列;
数据块重组模块,用于将所述块序列划分为数据块个数相等的N个数据块组;
磁盘操作模块,用于按照各数据块组对所述机柜中的相应磁盘进行操作。
14.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至12任一项所述的方法。
15.一种数据处理***,其特征在于,包括:多个存储节点,每个存储节点包括多个如权利要求14所述的电子设备。
16.一种可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至12任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210919507.1A CN114995770B (zh) | 2022-08-02 | 2022-08-02 | 一种数据处理方法、装置、设备、***及可读存储介质 |
PCT/CN2023/077992 WO2024027140A1 (zh) | 2022-08-02 | 2023-02-23 | 一种数据处理方法、装置、设备、***及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210919507.1A CN114995770B (zh) | 2022-08-02 | 2022-08-02 | 一种数据处理方法、装置、设备、***及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114995770A true CN114995770A (zh) | 2022-09-02 |
CN114995770B CN114995770B (zh) | 2022-12-27 |
Family
ID=83021996
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210919507.1A Active CN114995770B (zh) | 2022-08-02 | 2022-08-02 | 一种数据处理方法、装置、设备、***及可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114995770B (zh) |
WO (1) | WO2024027140A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024027140A1 (zh) * | 2022-08-02 | 2024-02-08 | 苏州元脑智能科技有限公司 | 一种数据处理方法、装置、设备、***及可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105224291A (zh) * | 2015-09-29 | 2016-01-06 | 北京奇艺世纪科技有限公司 | 一种数据处理方法及装置 |
CN109376100A (zh) * | 2018-11-05 | 2019-02-22 | 浪潮电子信息产业股份有限公司 | 一种缓存写入方法、装置、设备及可读存储介质 |
CN113176858A (zh) * | 2021-05-07 | 2021-07-27 | 锐捷网络股份有限公司 | 数据处理方法、存储***及存储设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11334277B2 (en) * | 2020-04-07 | 2022-05-17 | Vmware Inc. | Issuing efficient writes to erasure coded objects in a distributed storage system with two tiers of storage |
CN114816837B (zh) * | 2022-06-28 | 2022-12-02 | 苏州浪潮智能科技有限公司 | 一种纠删码融合方法、***、电子设备及存储介质 |
CN114995770B (zh) * | 2022-08-02 | 2022-12-27 | 苏州浪潮智能科技有限公司 | 一种数据处理方法、装置、设备、***及可读存储介质 |
-
2022
- 2022-08-02 CN CN202210919507.1A patent/CN114995770B/zh active Active
-
2023
- 2023-02-23 WO PCT/CN2023/077992 patent/WO2024027140A1/zh unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105224291A (zh) * | 2015-09-29 | 2016-01-06 | 北京奇艺世纪科技有限公司 | 一种数据处理方法及装置 |
CN109376100A (zh) * | 2018-11-05 | 2019-02-22 | 浪潮电子信息产业股份有限公司 | 一种缓存写入方法、装置、设备及可读存储介质 |
CN113176858A (zh) * | 2021-05-07 | 2021-07-27 | 锐捷网络股份有限公司 | 数据处理方法、存储***及存储设备 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024027140A1 (zh) * | 2022-08-02 | 2024-02-08 | 苏州元脑智能科技有限公司 | 一种数据处理方法、装置、设备、***及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114995770B (zh) | 2022-12-27 |
WO2024027140A1 (zh) | 2024-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109062512A (zh) | 一种分布式存储集群、数据读写方法、***及相关装置 | |
CN110209348B (zh) | 数据存储方法、装置、电子设备及存储介质 | |
CN105574141B (zh) | 一种对数据库进行数据迁移的方法和装置 | |
CN110737401B (zh) | 用于管理独立冗余磁盘阵列的方法、设备和计算机程序产品 | |
CN115576505B (zh) | 一种数据存储方法、装置、设备及可读存储介质 | |
CN111984557A (zh) | 数据处理方法、装置和*** | |
CN114995770B (zh) | 一种数据处理方法、装置、设备、***及可读存储介质 | |
CN113791917A (zh) | 延迟消息处理方法、装置与*** | |
CN115048254B (zh) | 数据分配策略的仿真测试方法、***、设备和可读介质 | |
CN111625180B (zh) | 数据写入方法及装置、存储介质 | |
CN111124094A (zh) | 一种服务器硬盘上下电的控制方法、控制装置及控制设备 | |
CN112748862A (zh) | 用于管理盘的方法、电子设备和计算机程序产品 | |
CN116089477B (zh) | 分布式训练方法及*** | |
CN116339643B (zh) | 一种磁盘阵列的格式化方法、装置、设备和介质 | |
CN110941436B (zh) | 应用程序的数据存储方法、装置、存储介质与终端设备 | |
CN116467235B (zh) | 一种基于dma的数据处理方法、装置、电子设备及介质 | |
CN113272785B (zh) | 一种挂载文件***的方法、终端设备及存储介质 | |
CN115202589B (zh) | 放置组成员选择方法、装置、设备及可读存储介质 | |
CN113132241B (zh) | Acl模板动态配置方法及装置 | |
CN111026677B (zh) | 一种基于ema算法的缓存分配方法、***、终端及存储介质 | |
CN114356970A (zh) | 一种存储***资源缓存方法及装置 | |
CN113254271A (zh) | 一种数据序列恢复方法、装置、设备及存储介质 | |
CN102693325B (zh) | 一种文件存储方法和装置 | |
CN116804915B (zh) | 基于存储器的数据交互方法、处理器、设备以及介质 | |
CN109726053B (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 |