CN113031872A - 一种存储系统的数据写入方法及相关装置 - Google Patents
一种存储系统的数据写入方法及相关装置 Download PDFInfo
- Publication number
- CN113031872A CN113031872A CN202110327663.4A CN202110327663A CN113031872A CN 113031872 A CN113031872 A CN 113031872A CN 202110327663 A CN202110327663 A CN 202110327663A CN 113031872 A CN113031872 A CN 113031872A
- Authority
- CN
- China
- Prior art keywords
- token
- data
- tokens
- written
- storage system
- 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
- 238000000034 method Methods 0.000 title claims abstract description 55
- 230000005012 migration Effects 0.000 claims abstract description 39
- 238000013508 migration Methods 0.000 claims abstract description 39
- 238000012545 processing Methods 0.000 claims abstract description 31
- 230000008859 change Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 11
- 230000000903 blocking effect Effects 0.000 claims description 6
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 16
- 238000011084 recovery Methods 0.000 description 4
- 230000001680 brushing effect Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 238000012546 transfer 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/0614—Improving the reliability of storage systems
-
- 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/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- 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/0658—Controller construction 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/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种存储系统的数据写入方法,包括:将接收到的主机数据或迁移数据进行分块补齐处理,得到多个数据块;判断令牌池中是否存在与所述多个数据块中的待写入数据块对应类型的令牌;其中,所述令牌池中每个类型令牌的数量是根据存储系统的性能参数进行调整得到的;若是,则从所述令牌池中取出所述令牌,并对所述待写入数据块进行写入处理。通过将主机数据或迁移数据分为多个数据块,再使用令牌池中的令牌对待写入数据块进行处理,以便通过令牌对数据写入的速度进行控制,避免出现存储空间被耗尽的问题,提高存储系统的可靠性。本申请还公开了一种存储系统、服务器以及计算机可读存储介质,具有以上有益效果。
Description
技术领域
本申请涉及存储系统技术领域,特别涉及一种存储系统的数据写入方法、存储系统、服务器以及计算机可读存储介质。
背景技术
全闪存存储(全闪存储)是完全由固态存储介质构成的独立的存储阵列或设备。区别于传统存储系统,全闪存储的数据写入一般是追加写方式,即向同一个逻辑地址写入数据时,每次都写在一个新地方,而旧数据不会被覆盖,而是通过垃圾回收进行处理。
全闪存储在处理写IO(Input/Output)的过程中,由于采用了追加写并凑满条带下刷的实现方式,因此在接收并处理主机下发数据的过程中,存储设备的空间被不断消耗。同时又由于垃圾数据占用的空间会不断被回收,存储设备又不断释放出新的可用空间。最终通过有效空间持续的消耗和回收,最终可以使有效数据不断写入。
相关技术中,由于垃圾回收过程中会发生有效数据的迁移操作,导致主机数据的写入过程相对于垃圾回收会更快。因此,当数据出现大量的持续写入最终空间消耗速度会远大于回收速度,并导致存储设备中的空间被全部消耗完,从而变得不可用,导致无法写入数据,出现存储系统的可靠性问题。
因此,如何避免在数据刷写过程中出现空间被耗尽的情况是本领域技术人员关注的重点问题。
发明内容
本申请的目的是提供一种存储系统的数据写入方法、存储系统、服务器以及计算机可读存储介质,通过将主机数据或迁移数据分为多个数据块,再使用令牌池中的令牌对待写入数据块进行处理,以便通过令牌对数据写入的速度进行控制,避免出现存储空间被耗尽的问题,提高存储系统的可靠性。
为解决上述技术问题,本申请提供一种存储系统的数据写入方法,包括:
将接收到的主机数据或迁移数据进行分块补齐处理,得到多个数据块;
判断令牌池中是否存在与所述多个数据块中的待写入数据块对应类型的令牌;其中,所述令牌池中每个类型令牌的数量是根据存储系统的性能参数进行调整得到的;
若是,则从所述令牌池中取出所述令牌,并对所述待写入数据块进行写入处理。
可选的,所述根据存储系统的性能参数进行调整得到所述令牌池中每个类型令牌的数量的步骤,包括:
按照预设时间周期获取当前的可用空间占比;
根据所述当前的可用空间占比确定令牌总数和每个类型令牌的数量比例;
根据所述令牌总数和所述数量比例进行计算,得到所述每个类型令牌的数量。
可选的,所述根据存储系统的性能参数进行调整得到所述令牌池中每个类型令牌的数量的步骤,包括:
每当执行完成预设数量的数据块的写入处理时,获取当前的可用空间占比;
根据所述当前的可用空间占比确定令牌总数和每个类型令牌的数量比例;
根据所述令牌总数和所述数量比例进行计算,得到所述每个类型令牌的数量。
可选的,所述根据所述当前的可用空间占比确定令牌总数和每个类型令牌的数量比例的步骤,包括:
根据线性变化模型和所述当前的可用空间占比确定令牌总数;其中,所述线性变化模型的变化规律为可用空间占比扩大时所述令牌总数线性扩大。
可选的,还包括:
当所述令牌池中不存在与所述待写入数据块对应类型的令牌,发送处理等待指令,直至出现与所述待写入数据块对应类型的令牌。
可选的,还包括:
当所述待写入数据块写入完成时,将所述令牌添加至所述令牌池。
可选的,在所述判断令牌池中是否存在与所述多个数据块中的待写入数据块对应的令牌的步骤之前,还包括:
按照顺序从所述多个数据块中确定所述待写入数据块。
本申请还提供一种存储系统,包括:
数据分块模块,用于将接收到的主机数据或迁移数据进行分块补齐处理,得到多个数据块;
令牌判断模块,用于判断令牌池中是否存在与所述多个数据块中的待写入数据块对应类型的令牌;其中,所述令牌池中每个类型令牌的数量是根据存储系统的性能参数进行调整得到的;
数据块写入模块,用于当令牌池中存在与所述待写入数据块对应类型的令牌时,从所述令牌池中取出所述令牌,并对所述待写入数据块进行写入处理。
本申请还提供一种服务器,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上所述的数据写入方法的步骤。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的数据写入方法的步骤。
本申请所提供的一种存储系统的数据写入方法,包括:将接收到的主机数据或迁移数据进行分块补齐处理,得到多个数据块;判断令牌池中是否存在与所述多个数据块中的待写入数据块对应类型的令牌;其中,所述令牌池中每个类型令牌的数量是根据存储系统的性能参数进行调整得到的;若是,则从所述令牌池中取出所述令牌,并对所述待写入数据块进行写入处理。
通过先将接收到的主机数据或迁移数据进行分块补齐处理,得到多个数据块,再判断是否存在待写入数据块的对应类型的令牌,若是,则取出令牌并写入数据,由于其中的各个类型令牌的数量是由性能参数进行调整得到的,保持令牌池中每个类型令牌的数量是符合当前存储系统的性能的,很显然,通过该令牌池中的令牌数量对是否处理对应的数据块进行控制,可以很有效的调节主机数据或迁移数据的处理速度,避免出现由于主机数据处理过多导致的空间耗尽问题。
本申请还提供一种存储系统、服务器以及计算机可读存储介质,具有以上有益效果,在此不作赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例所提供的一种存储系统的数据写入方法的流程图;
图2为本申请实施例所提供的一种存储系统的结构示意图。
具体实施方式
本申请的核心是提供一种存储系统的数据写入方法、存储系统、服务器以及计算机可读存储介质,通过将主机数据或迁移数据分为多个数据块,再使用令牌池中的令牌对待写入数据块进行处理,以便通过令牌对数据写入的速度进行控制,避免出现存储空间被耗尽的问题,提高存储系统的可靠性。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
相关技术中,由于垃圾回收过程中会发生有效数据的迁移操作,导致主机数据的写入过程相对于垃圾回收会更快。因此,当数据出现大量的持续写入最终空间消耗速度会远大于回收速度,并导致存储设备中的空间被全部消耗完,从而变得不可用,导致无法写入数据,出现存储系统的可靠性问题。
因此,本申请提供一种存储系统的数据写入方法,通过先将接收到的主机数据或迁移数据进行分块补齐处理,得到多个数据块,再判断是否存在待写入数据块的对应类型的令牌,若是,则取出令牌并写入数据,由于其中的各个类型令牌的数量是由性能参数进行调整得到的,保持令牌池中每个类型令牌的数量是符合当前存储系统的性能的,很显然,通过该令牌池中的令牌数量对是否处理对应的数据块进行控制,可以很有效的调节主机数据或迁移数据的处理速度,避免出现由于主机数据处理过多导致的空间耗尽问题。
以下通过一个实施例,对本申请提供的一种存储系统的数据写入方法进行说明。
请参考图1,图1为本申请实施例所提供的一种存储系统的数据写入方法的流程图。
本实施例中,该方法可以包括:
S101,将接收到的主机数据或迁移数据进行分块补齐处理,得到多个数据块;
本步骤旨在将接收到的主机数据或迁移数据进行分块补齐处理,得到多个数据块。
进一步的,可以按照预设数据块大小对接收到的主机数据或迁移数据进行分块,当分块后存在不足一块数据块大小的数据块时,对该数据块进行补齐处理,以便得到完整的数据块。其中,补齐处理可以用0进行补齐。
其中,主机数据是指主机或上层设备向存储系统下发的,写入至该存储系统内的数据。迁移数据是指存储系统进行垃圾空间回收时进行数据迁移的数。可见,写入主机数据是消耗存储空间,而写入迁移数据是增加存储空间。
S102,判断令牌池中是否存在与多个数据块中的待写入数据块对应类型的令牌;其中,令牌池中每个类型令牌的数量是根据存储系统的性能参数进行调整得到的;
在S101的步骤上,本步骤旨在判断令牌池中是否存在与多个数据块中的待写入数据块对应类型的令牌;其中,令牌池中每个类型令牌的数量是根据存储系统的性能参数进行调整得到的。其中,每个类型令牌的数量是指主机数据对应令牌的数量和迁移数据对应令牌的数量。
其中,性能参数可以是可用空间占比,也可以是IOPS,还可以是存储系统的写入速率。
其中,进行调整的方式可以是根据存储系统的可用空间占比对每个类型令牌,即根据可用空间占比对主机数据对应令牌的数量和迁移数据对应令牌的数量进行调整,使得当可用空间占比较大时调整至较大的令牌总数,当可用空间占比较小时调整至较小的令牌总数,以便对数据写入的速度进行调整。
进一步的,可以根据可用空间占比对令牌总数进行调整,然后对主机数据对应令牌的数量和迁移数据对应令牌的数量的比例进行调整,进一步的根据令牌总数和比例进行计算,得到每个类型令牌数量。其中,对于令牌总数进行调整的过程可以是根据线性变化模型和当前的可用空间占比进行计算,得到当前的令牌总数;也可以是根据曲线变化模型和当前的可用空间占比进行计算,得到当前的令牌总数;还可以是根据阶梯模型和当前的可用空间占比进行计算,得到当前的令牌总数。
进一步的,为了调整的主机数据对应令牌的数量和迁移数据对应令牌的数量的比例可以是确定可用空间占比的所在的预设范围,然后将该预设范围对应的比例设置为当前的主机数据对应令牌的数量和迁移数据对应令牌的数量的比例;也可以是根据阶梯变化模型和当前的可用空间占比进行计算,得到当前的主机数据对应令牌的数量和迁移数据对应令牌的数量的比例;还可以是根据第一比例的线性模型和可用空间占比进行计算,得到主机数据对应令牌的数量的比例数,根据第二比例的线性模型和可用空间占比进行计算,得到迁移数据对应令牌的数量的比例数。
其中,为了及时对令牌进行调整,并且避免高频率调整对性能进行影响,本步骤可以包括:
步骤1,按照预设时间周期获取当前的可用空间占比;
步骤2,根据当前的可用空间占比确定令牌总数和每个类型令牌的数量比例;
步骤3,根据令牌总数和数量比例进行计算,得到每个类型令牌的数量。
可见,本可选方案中主要是对何时进行调整进行说明。本可选方案中按照预设时间周期获取当前的可用空间占比;然后根据当前的可用空间占比确定令牌总数和每个类型令牌的数量比例;最后根据令牌总数和数量比例进行计算,得到每个类型令牌的数量。
其中,为了及时对令牌进行调整,并且避免高频率调整对性能进行影响,本步骤可以包括:
步骤1,每当执行完成预设数量的数据块的写入处理时,获取当前的可用空间占比;
步骤2,根据当前的可用空间占比确定令牌总数和每个类型令牌的数量比例;
步骤3,根据令牌总数和数量比例进行计算,得到每个类型令牌的数量。
可见,本可选方案中主要是对何时进行调整进行说明。本可选方案中每当执行完成预设数量的数据块的写入处理时,获取当前的可用空间占比;然后,根据当前的可用空间占比确定令牌总数和每个类型令牌的数量比例;最后,根据令牌总数和数量比例进行计算,得到每个类型令牌的数量
根据当前的可用空间占比确定令牌总数的步骤,包括:
根据线性变化模型和当前的可用空间占比确定令牌总数;其中,线性变化模型的变化规律为可用空间占比扩大时令牌总数线性扩大。
可见,本可选方案中主要是如何确定令牌总数进行说明。本可选方案中主要是根据线性变化模型和当前的可用空间占比确定令牌总数;其中,线性变化模型的变化规律为可用空间占比扩大时令牌总数线性扩大。
S103,若是,则从令牌池中取出令牌,并对待写入数据块进行写入处理。
在S102的基础上,当令牌池中存在与待写入数据块对应类型的令牌时,从令牌池中取出令牌,并对待写入数据块进行写入处理。也就是,消耗一个令牌并对该待写入数据块进行相应的处理,以便通过令牌池中的令牌数量对数据写入的过程进行控制。
S104,若否,则发送处理等待指令,直至出现与待写入数据块对应类型的令牌。
在S102的基础上,当不存在对应的令牌时,则进行等待处理暂停对该待写入数据块的处理操作,直至出现与待写入数据块对应类型的令牌。
进一步的,本实施例还可以包括:
当待写入数据块写入完成时,将令牌添加至令牌池。
可见,本可选方案中主要是说明如何将令牌进行回收。也就是,当待写入数据块写入完成时,将令牌添加至令牌池。
进一步的,在判断令牌池中是否存在与多个数据块中的待写入数据块对应的令牌的步骤之前,还包括:
按照顺序从多个数据块中确定待写入数据块。
可见,本可选方案中主要是说明如何确定出待写入数据块。
综上,本实施例通过先将接收到的主机数据或迁移数据进行分块补齐处理,得到多个数据块,再判断是否存在待写入数据块的对应类型的令牌,若是,则取出令牌并写入数据,由于其中的各个类型令牌的数量是由性能参数进行调整得到的,保持令牌池中每个类型令牌的数量是符合当前存储系统的性能的,很显然,通过该令牌池中的令牌数量对是否处理对应的数据块进行控制,可以很有效的调节主机数据或迁移数据的处理速度,避免出现由于主机数据处理过多导致的空间耗尽问题。
以下通过一个具体的实施例,对本申请提供的一种存储系统的数据写入方法做进一步说明。
本实施例中,主机数据或迁移数据到达存储系统后,会先对其做拆分补齐操作,得到一个或多个大小相同的数据块。然后通过令牌控制器为每个数据块申请令牌,如果申请到令牌,则该数据块拿到令牌后,数据块将连同令牌到达数据刷盘单元等待下刷;如果本轮未申请到令牌,则继续等待令牌控制器分配令牌。
数据刷写单元在完成数据刷写后,数据刷写单元会定时将接收到的数据进行刷盘操作,从等待接收数据到完成一次刷盘作为数据刷写单元的一轮刷写周期,一般来说为保证系统的整个性能,刷写周期的设置不会太长(如20ms等)。在完成一次刷写动作后,数据刷写单元会将已落盘数据的令牌交回令牌控制器,由令牌控制器在后续轮次中进行使用。
在整个调节过程中,令牌控制器起到核心作用,通过控制令牌的发放的数量与比例关系,从而实现数据下刷的快慢,以及主机数据与迁移数据的比例分配。
本实施例中,令牌控制器可以包括:令牌池、令牌计数单元、令牌决策单元、令牌发放单元四部分。
其中,令牌池用于全部令牌的存放,在令牌回收时也是交回到令牌池;令牌计数单元用于记录当前发放出去的令牌数,以及主机数据和迁移数据各自获取到的令牌数等信息;令牌决策单元是令牌控制器的核心,用于根据存储系统当前的工作情况来决策令牌是否发放;令牌发放单元用于从令牌池中获取空闲令牌,并将令牌交给对应的数据块使用。
其中,令牌决策单元在进行令牌发放与否的判定时,参考的最基本的条件有当前系统中总的可用空间的占比,以及主机数据的令牌与迁移数据的令牌占用比,需要说明的是这两项只是实现令牌决策单元功能的最基本的条件,通过这两项条件可以基本满足调控要求,但实际应用中为达到更好的调控效果,还可能引入与具体存储设备相适应的其他条件变量,从而获的更优质平滑的调控效果。
进一步的,为了提高调控的效果,令牌决策单元的基本工作过程可以包括:
步骤1,根据存储系统中可用空间与总空间的占比,来确定可发放令牌的总数;
举例来说,当前存储系统的最终数据并发处理能力为N,则可设置令牌池的总数为N,此时如果可用空间占比较大,则令牌控制器在发放令牌时不需要限制发放总数,即N个令牌允许全部发放出去,从而获得最好的系统性能;如果可用空间占比较小时,即当前存储系统面临逐渐耗尽的情况时,令牌控制器需要限制发放令牌的总数(以便适当抑制主机端的性能),从而防止空间消耗过快,以至于用户来不及增加新的空间而出现业务中断的情况;一般说来,令牌数的发放与可用空间的占比的关系可以采用几种常用方式,可以包括:
线性模型方式,即随着可用空间占比的减低,允许发放的最终令牌数也线性降低;
曲线模型方式,即开始阶段令牌数数较大,随着空间占比降低,令牌数呈曲线状态下降;
其他如阶梯模型方式等,不同的模型可以通过构造不同的数学函数模型来实现,此处只是举例说明实现方式,不做赘述。
步骤2,根据可用空间占比调节主机数据和迁移数据的比例关系,以便调整令牌是否发放。
距离来说,当可用空间占比较高时,此时优先处理主机数据,因此可以分配更多的令牌给主机数据,比如主机数据与迁移数据的比例可以允许为1000:1,或更高;当可用空间占比下降时,主机数据与迁移数据的比例会逐步下降,直到达到1:1平衡状态;如果可用空间占比很小时(如主机下发的数据已新写为主,导致垃圾数据量等场景),此时主机数据与迁移数据的比例可以为1:10,或更高。确定好比例关系后,一般可以以迁移数据为基准,即根据当前发放了多少个迁移数据的令牌,确定允许发放主机数据令牌的最大数量,如果当前已发放的主机数据令牌数小于该最大值,则允许为新来的主机数据发放令牌,如果已发放的数量大于该最大值,则不再允许为新来的主机数据发放新的令牌,从而限制主机数据的写盘速率,进而限制主机端的性能,最终达到空间消耗和空间回收相对平衡的状态。
可见,本实施例可以通过先将接收到的主机数据或迁移数据进行分块补齐处理,得到多个数据块,再判断是否存在待写入数据块的对应类型的令牌,若是,则取出令牌并写入数据,由于其中的各个类型令牌的数量是由性能参数进行调整得到的,保持令牌池中每个类型令牌的数量是符合当前存储系统的性能的,很显然,通过该令牌池中的令牌数量对是否处理对应的数据块进行控制,可以很有效的调节主机数据或迁移数据的处理速度,避免出现由于主机数据处理过多导致的空间耗尽问题。
下面对本申请实施例提供的存储系统进行介绍,下文描述的存储系统与上文描述的存储系统的数据写入方法可相互对应参照。
请参考图2,图2为本申请实施例所提供的一种存储系统的结构示意图。
本实施例中,该系统可以包括:
数据分块模块100,用于将接收到的主机数据或迁移数据进行分块补齐处理,得到多个数据块;
令牌判断模块200,用于判断令牌池中是否存在与多个数据块中的待写入数据块对应类型的令牌;其中,令牌池中每个类型令牌的数量是根据存储系统的性能参数进行调整得到的;
300,用于当令牌池中存在与待写入数据块对应类型的令牌时,从令牌池中取出令牌,并对待写入数据块进行写入处理。
本申请实施例还提供一种服务器,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如以上实施例所述的数据写入方法的步骤。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如以上实施例所述的数据写入方法的步骤。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种存储系统的数据写入方法、存储系统、服务器以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
Claims (10)
1.一种存储系统的数据写入方法,其特征在于,包括:
将接收到的主机数据或迁移数据进行分块补齐处理,得到多个数据块;
判断令牌池中是否存在与所述多个数据块中的待写入数据块对应类型的令牌;其中,所述令牌池中每个类型令牌的数量是根据存储系统的性能参数进行调整得到的;
若是,则从所述令牌池中取出所述令牌,并对所述待写入数据块进行写入处理。
2.根据权利要求1所述的数据写入方法,其特征在于,所述根据存储系统的性能参数进行调整得到所述令牌池中每个类型令牌的数量的步骤,包括:
按照预设时间周期获取当前的可用空间占比;
根据所述当前的可用空间占比确定令牌总数和每个类型令牌的数量比例;
根据所述令牌总数和所述数量比例进行计算,得到所述每个类型令牌的数量。
3.根据权利要求1所述的数据写入方法,其特征在于,所述根据存储系统的性能参数进行调整得到所述令牌池中每个类型令牌的数量的步骤,包括:
每当执行完成预设数量的数据块的写入处理时,获取当前的可用空间占比;
根据所述当前的可用空间占比确定令牌总数和每个类型令牌的数量比例;
根据所述令牌总数和所述数量比例进行计算,得到所述每个类型令牌的数量。
4.根据权利要求3或4所述的数据写入方法,其特征在于,所述根据所述当前的可用空间占比确定令牌总数的步骤,包括:
根据线性变化模型和所述当前的可用空间占比确定令牌总数;其中,所述线性变化模型的变化规律为可用空间占比扩大时所述令牌总数线性扩大。
5.根据权利要求1所述的数据写入方法,其特征在于,还包括:
当所述令牌池中不存在与所述待写入数据块对应类型的令牌,发送处理等待指令,直至出现与所述待写入数据块对应类型的令牌。
6.根据权利要求1所述的数据写入方法,其特征在于,还包括:
当所述待写入数据块写入完成时,将所述令牌添加至所述令牌池。
7.根据权利要求1所述的数据写入方法,其特征在于,在所述判断令牌池中是否存在与所述多个数据块中的待写入数据块对应的令牌的步骤之前,还包括:
按照顺序从所述多个数据块中确定所述待写入数据块。
8.一种存储系统,其特征在于,包括:
数据分块模块,用于将接收到的主机数据或迁移数据进行分块补齐处理,得到多个数据块;
令牌判断模块,用于判断令牌池中是否存在与所述多个数据块中的待写入数据块对应类型的令牌;其中,所述令牌池中每个类型令牌的数量是根据存储系统的性能参数进行调整得到的;
数据块写入模块,用于当令牌池中存在与所述待写入数据块对应类型的令牌时,从所述令牌池中取出所述令牌,并对所述待写入数据块进行写入处理。
9.一种服务器,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述的数据写入方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的数据写入方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110327663.4A CN113031872A (zh) | 2021-03-26 | 2021-03-26 | 一种存储系统的数据写入方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110327663.4A CN113031872A (zh) | 2021-03-26 | 2021-03-26 | 一种存储系统的数据写入方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113031872A true CN113031872A (zh) | 2021-06-25 |
Family
ID=76472571
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110327663.4A Pending CN113031872A (zh) | 2021-03-26 | 2021-03-26 | 一种存储系统的数据写入方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113031872A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113672523A (zh) * | 2021-07-09 | 2021-11-19 | 济南浪潮数据技术有限公司 | 一种缓存池数据下刷方法、系统、电子设备及存储介质 |
CN117389485A (zh) * | 2023-12-13 | 2024-01-12 | 苏州元脑智能科技有限公司 | 存储性能优化方法、装置、存储系统、电子设备和介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103164172A (zh) * | 2013-03-11 | 2013-06-19 | 华为技术有限公司 | 数据流存储方法及装置 |
CN105763478A (zh) * | 2015-12-21 | 2016-07-13 | 中国电子科技集团公司第十五研究所 | 基于令牌桶算法的卫星数据地面传输网络流量控制系统 |
CN107276827A (zh) * | 2017-07-25 | 2017-10-20 | 郑州云海信息技术有限公司 | 一种分布式存储系统中Qos的实现方法及装置 |
CN109344131A (zh) * | 2018-10-10 | 2019-02-15 | 国网安徽省电力有限公司信息通信分公司 | 数据存储方法、装置及管理服务器 |
CN109672627A (zh) * | 2018-09-26 | 2019-04-23 | 深圳壹账通智能科技有限公司 | 基于集群服务器的业务处理方法、平台、设备及存储介质 |
CN110221775A (zh) * | 2019-05-05 | 2019-09-10 | 华为技术有限公司 | 存储系统中令牌的分配方法和装置 |
CN111447150A (zh) * | 2020-02-29 | 2020-07-24 | 中国平安财产保险股份有限公司 | 访问请求限流方法、服务器及存储介质 |
CN112306415A (zh) * | 2020-11-02 | 2021-02-02 | 成都佰维存储科技有限公司 | Gc流控方法、装置、计算机可读存储介质及电子设备 |
-
2021
- 2021-03-26 CN CN202110327663.4A patent/CN113031872A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103164172A (zh) * | 2013-03-11 | 2013-06-19 | 华为技术有限公司 | 数据流存储方法及装置 |
CN105763478A (zh) * | 2015-12-21 | 2016-07-13 | 中国电子科技集团公司第十五研究所 | 基于令牌桶算法的卫星数据地面传输网络流量控制系统 |
CN107276827A (zh) * | 2017-07-25 | 2017-10-20 | 郑州云海信息技术有限公司 | 一种分布式存储系统中Qos的实现方法及装置 |
CN109672627A (zh) * | 2018-09-26 | 2019-04-23 | 深圳壹账通智能科技有限公司 | 基于集群服务器的业务处理方法、平台、设备及存储介质 |
CN109344131A (zh) * | 2018-10-10 | 2019-02-15 | 国网安徽省电力有限公司信息通信分公司 | 数据存储方法、装置及管理服务器 |
CN110221775A (zh) * | 2019-05-05 | 2019-09-10 | 华为技术有限公司 | 存储系统中令牌的分配方法和装置 |
CN111447150A (zh) * | 2020-02-29 | 2020-07-24 | 中国平安财产保险股份有限公司 | 访问请求限流方法、服务器及存储介质 |
CN112306415A (zh) * | 2020-11-02 | 2021-02-02 | 成都佰维存储科技有限公司 | Gc流控方法、装置、计算机可读存储介质及电子设备 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113672523A (zh) * | 2021-07-09 | 2021-11-19 | 济南浪潮数据技术有限公司 | 一种缓存池数据下刷方法、系统、电子设备及存储介质 |
CN117389485A (zh) * | 2023-12-13 | 2024-01-12 | 苏州元脑智能科技有限公司 | 存储性能优化方法、装置、存储系统、电子设备和介质 |
CN117389485B (zh) * | 2023-12-13 | 2024-03-01 | 苏州元脑智能科技有限公司 | 存储性能优化方法、装置、存储系统、电子设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9110669B2 (en) | Power management of a storage device including multiple processing cores | |
EP2921963B1 (en) | Memory recycling method and device | |
CN111724827B (zh) | 存储器系统及非易失性存储器 | |
US10860494B2 (en) | Flushing pages from solid-state storage device | |
CN113031872A (zh) | 一种存储系统的数据写入方法及相关装置 | |
KR102356523B1 (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
CN109471594B (zh) | 一种mlc闪存读写方法 | |
US10860260B2 (en) | Method, apparatus and computer program product for managing storage system | |
TWI782654B (zh) | 垃圾回收操作的管理機制 | |
US10891150B2 (en) | Storage control method and storage controller for user individual service environment | |
CN110688256A (zh) | 一种元数据上电恢复方法、装置、电子设备及存储介质 | |
CN110968524B (zh) | 数据存储控制方法、装置、存储介质及电子装置 | |
WO2024093479A1 (zh) | 一种磁盘阵列的数据迁移方法、装置、设备和介质 | |
CN109491592B (zh) | 存储设备及其数据写入方法、存储装置 | |
CN111737212A (zh) | 一种分布式文件系统提升性能的方法和设备 | |
CN114968839A (zh) | 硬盘垃圾回收方法、装置、设备及计算机可读存储介质 | |
CN112306408A (zh) | 一种存储块处理方法、装置、设备及存储介质 | |
CN112269535A (zh) | 存储系统的空间资源分配方法、装置及可读存储介质 | |
CN115840542B (zh) | 一种硬盘的请求处理方法、系统、存储介质和电子设备 | |
CN104899158A (zh) | 访存优化方法和装置 | |
CN111597066A (zh) | Ssd修复方法、装置、计算机设备及存储介质 | |
CN110990301A (zh) | 多plane存储介质的顺序读方法及相关装置 | |
CN111966301B (zh) | 分布式对象存储系统的迁移速度控制方法、装置及介质 | |
CN115907949A (zh) | 银行交易数据处理方法及装置 | |
JP2012128770A (ja) | バッチジョブ管理サーバ、バッチジョブ処理システム及びバッチジョブ実行方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210625 |
|
RJ01 | Rejection of invention patent application after publication |