CN116521090B - 数据落盘方法、装置、电子设备及存储介质 - Google Patents
数据落盘方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116521090B CN116521090B CN202310749018.0A CN202310749018A CN116521090B CN 116521090 B CN116521090 B CN 116521090B CN 202310749018 A CN202310749018 A CN 202310749018A CN 116521090 B CN116521090 B CN 116521090B
- Authority
- CN
- China
- Prior art keywords
- data
- disk
- cache
- written
- buffer
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 107
- 230000001680 brushing effect Effects 0.000 claims abstract description 77
- 230000009471 action Effects 0.000 claims abstract description 59
- 238000013500 data storage Methods 0.000 claims abstract description 45
- 238000004422 calculation algorithm Methods 0.000 claims description 24
- 239000007787 solid Substances 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 4
- 230000004044 response Effects 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 19
- 238000011010 flushing procedure Methods 0.000 description 13
- 238000005201 scrubbing Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
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
- G06F3/0611—Improving I/O performance in relation to response time
-
- 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
-
- 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/068—Hybrid storage device
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本申请提供了一种数据落盘方法、装置、电子设备及非易失性可读存储介质。数据落盘方法包括:获取数据落盘请求;对数据落盘请求对应的缓存盘的缓存空间进行判断,获取第一判断结果;当第一判断结果为缓存盘的缓存空间未占满时,将待写入数据写入缓存盘中;当第一判断结果为缓存盘的缓存空间占满时,将待写入数据写入数据盘。由于不需要依赖缓存盘,当缓存盘的缓存空间占满时不需要等待缓存盘数据下刷动作,能够直接将数据写入数据盘中,数据落盘请求触发了一次读数据盘和写数据盘的操作,避免了数据存储前需要进行大量的读盘、写盘操作后才能执行数据落盘动作,数据落盘等待时间过长的问题,提高了数据存储系统的响应速度,保障了用户体验。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据落盘方法、装置、电子设备及非易失性可读存储介质。
背景技术
数据存储依赖中央处理器、内存和硬盘等物理部件,用户可以从固态硬盘(SolidState Drive,SSD)和机械硬盘(Hard Disk Drive,HDD)中选择合适的配件进行数据存储。HDD存储空间大,成本低,但读写速度慢,功耗高,体积大,可靠性差;SSD读写速度快,功耗低,体积小,可靠性好,但SSD价格昂贵,存储空间有限。用户往往采用兼顾磁盘性能和成本两方面的混闪磁盘配置,利用HDD存储空间大,成本低的优点,将其作为数据盘;利用SSD读写速度快的优点,将其作为缓存盘。相关技术中,数据落盘请求优先在缓存盘中完成,当缓存盘中的缓存数据占满时,需要通过数据下刷的方式将缓存盘中的数据写入数据盘中。此时,新的数据落盘请求需要等待缓存盘中的数据下刷完成后,缓存空间充足时才能进行,存储系统响应慢,用户体验较差。
发明内容
本申请提供了一种数据落盘方法、装置、电子设备及非易失性可读存储介质。本申请提供的数据落盘方法,在执行数据落盘动作前,先对缓存盘的缓存空间进行判断,当判断缓存盘中缓存空间占满时,直接从内存写入数据盘中。由于本申请不需要依赖缓存盘,当缓存盘的缓存空间占满时不需要等待缓存盘数据下刷动作,能够直接将数据写入数据盘中,数据落盘请求仅触发了一次读数据盘和写数据盘的操作,避免了相关技术中数据存储前需要进行大量的读盘、写盘操作后才能执行数据落盘动作,数据落盘等待时间过长的问题,提高了数据存储系统的响应速度,保障了用户体验。
第一方面,本申请提供了一种数据落盘方法,该方法包括:
获取数据落盘请求;
对数据落盘请求对应的缓存盘的缓存空间进行判断,获取第一判断结果;
当第一判断结果为缓存盘的缓存空间未占满时,将待写入数据写入缓存盘中;
当第一判断结果为缓存盘的缓存空间占满时,将待写入数据写入数据盘。
可选的,本申请提供的数据落盘方法还包括:
根据预先设置的下刷判断条件,对缓存盘进行下刷判断,获取下刷判断结果;
根据下刷判断结果对缓存盘执行数据下刷动作。
可选的,下刷判断条件包括缓存盘的缓存空间使用率判断条件和磁盘输入输出压力判断条件,本申请提供的数据落盘方法还包括:
根据预先设置的缓存盘的缓存空间使用率判断条件和磁盘输入输出压力判断条件,对缓存盘进行判断,得到下刷判断结果。
可选的,本申请提供的数据落盘方法还包括:
获取缓存盘的缓存空间使用率和缓存盘的输入输出压力;
将缓存空间使用率与预先设置的缓存最优使用率阈值比较,将磁盘输入输出压力与预先设置的输入输出压力阈值比较,获取下刷判断结果。
可选的,本申请提供的数据落盘方法还包括:
当下刷判断结果为缓存空间使用率大于缓存最优使用率阈值且缓存盘的输入输出压力小于输入输出压力阈值时,对缓存盘执行数据下刷动作。
可选的,数据下刷动作包括冷数据下刷动作,本申请提供的数据落盘方法还包括:
根据下刷判断结果,对缓存盘中冷数据执行数据下刷动作,其中,冷数据包括命中率小于预设命中率阈值的缓存盘中的缓存数据。
可选的,本申请提供的数据落盘方法还包括:
实时检测缓存盘的缓存空间使用率,当缓存盘的缓存空间使用率小于缓存最优使用率阈值时,停止数据下刷动作。
可选的,本申请提供的数据落盘方法还包括:
实时对缓存盘的输入输出压力判断,当缓存盘的输入输出压力大于输入输出压力阈值时,停止数据下刷动作。
可选的,本申请提供的数据落盘方法还包括:
根据数据落盘请求获取第一待写入数据;
对缓存盘进行第一待写入数据的目标存储索引的检索判断;
当缓存盘不存在第一待写入数据的目标存储索引时,将第一待写入数据的目标存储索引从数据盘读取到内存;
将第一待写入数据的目标存储索引从内存落盘到缓存盘。
可选的,本申请提供的数据落盘方法还包括:
通过检索缓存盘对应的内存中的元数据,对缓存盘进行第一待写入数据的目标存储索引的检索判断。
可选的,缓存盘为多个,本申请提供的数据落盘方法还包括:
当缓存盘存在第一待写入数据的目标存储索引时,通过一致性哈希算法从多个缓存盘中获取携带第一待写入数据的目标存储索引的缓存盘。
可选的,数据盘为多个,本申请提供的数据落盘方法还包括:
通过一致性哈希算法从多个数据盘中获取携带第一待写入数据的目标存储索引的数据盘。
可选的,本申请提供的数据落盘方法还包括:
将第一待写入数据的目标存储索引写入缓存盘中;
根据第一待写入数据的目标存储索引的写入结果生成第一判断结果。
可选的,本申请提供的数据落盘方法还包括:
当第一待写入数据的目标存储索引写入缓存盘失败,将第一待写入数据写入携带第一待写入数据的目标存储索引的数据盘。
可选的,本申请提供的数据落盘方法还包括:
根据数据存储请求构建逻辑单元号,其中数据存储请求包括数据落盘请求;
根据逻辑单元号和待写入数据的数据大小获取多个第二待写入数据的目标存储索引,其中第二待写入数据的目标索引包括第一待写入数据的目标存储索引;
通过一致性哈希算法将多个第二待写入数据的目标索引均匀分配到多个数据盘中。
可选的,本申请提供的数据落盘方法还包括:
将逻辑单元号中的第二待写入数据同步加载到缓存盘中。
可选的,缓存盘为固态硬盘,数据盘为机械硬盘,本申请提供的数据落盘方法还包括:
当第一判断结果为固态硬盘的缓存空间占满时,将待写入数据写入机械硬盘。
第二方面,本申请还提供一种数据落盘装置,包括:
落盘请求获取模块,用于获取数据落盘请求;
缓存空间判断模块,用于对数据落盘请求对应的缓存盘的缓存空间进行判断,获取第一判断结果;
第一数据盘写入模块,用于当第一判断结果为缓存盘的缓存空间占满时,将待写入数据写入数据盘;
第一缓存盘写入模块,用于当第一判断结果为缓存盘的缓存空间未占满时,将待写入数据写入缓存盘中。
第三方面,本申请还提供了一种电子设备,该电子设备包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的数据落盘方法的步骤。
第四方面,本申请实施例提供了一种非易失性可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的数据落盘方法的步骤。
本申请提供的数据落盘方法,在执行数据落盘动作前,先对缓存盘的缓存空间进行判断,当判断缓存盘中缓存空间占满时,直接从内存写入数据盘中。由于本申请不需要依赖缓存盘,当缓存盘的缓存空间占满时不需要等待缓存盘数据下刷动作,能够直接将数据写入数据盘中,数据落盘请求仅触发了一次读数据盘和写数据盘的操作,避免了相关技术中数据存储前需要进行大量的读盘、写盘操作后才能执行数据落盘动作,数据落盘等待时间过长的问题,提高了数据存储系统的响应速度,保障了用户体验。
上述说明仅是本申请提供的技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是本申请实施例提供的数据落盘方法示意图之一;
图2是本申请实施例提供的数据落盘方法示意图之二;
图3是本申请实施例提供的数据落盘方法示意图之三;
图4是本申请实施例提供的数据落盘方法示意图之四;
图5是本申请实施例提供的数据落盘方法示意图之五;
图6是本申请实施例提供的数据落盘方法示意图之六;
图7是本申请实施例提供的数据落盘方法示意图之七;
图8是本申请实施例提供的数据落盘方法示意图之八;
图9是本申请实施例提供的数据落盘方法示意图之九;
图10是本申请实施例提供的数据落盘方法示意图之十;
图11是本申请实施例提供的数据落盘方法示意图之十一;
图12是本申请实施例提供的数据落盘方法示意图之十二;
图13是本申请实施例提供的数据落盘方法示意图之十三;
图14是本申请实施例提供的数据落盘方法示意图之十四;
图15是本申请实施例提供的数据落盘方法示意图之十五;
图16是本申请实施例提供的数据落盘方法示意图之十六;
图17是本申请实施例提供的数据落盘方法示意图之十七;
图18是本申请实施例提供的一种数据落盘示意;
图19是本申请实施例提供的数据落盘装置示意图;
图20是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本申请的示例性实施例。虽然附图中显示了本申请的示例性实施例,然而应当理解,可以以各种形式实现本申请而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本申请,并且能够将本申请的范围完整的传达给本领域的技术人员。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
下面结合附图,通过具体的实施例及其应用场景对本申请提供的数据落盘方法、装置、电子设备及非易失性可读存储介质进行详细地说明。
本申请的第一实施方式涉及一种数据落盘方法,如图1所示,包括:
步骤101、获取数据落盘请求;
步骤102、对数据落盘请求对应的缓存盘的缓存空间进行判断,获取第一判断结果;
步骤103、当第一判断结果为缓存盘的缓存空间未占满时,将待写入数据写入缓存盘中;
步骤104、当第一判断结果为缓存盘的缓存空间占满时,将待写入数据写入数据盘。
具体的,数据存储系统获取操作系统下发的数据落盘请求,例如输入输出(InputOutput,IO)写请求后,根据数据落盘请求中的第一待写入数据的数据大小在缓存盘中给待写入数据进行空间分配。在执行数据存储动作前,先判断缓存盘的缓存空间是否足够,当缓存盘的缓存空间充足时,将待写入数据写入缓存盘中待写入数据的目标存储索引,例如目标数据(objective data,obj)中,完成数据存储动作。系统后续再将数据落盘请求对应的第一待写入数据从缓存盘下刷到数据盘中。当判断缓存盘的缓存空间不足时,绕过缓存盘,将数据落盘请求对应的第一待写入数据直接写入数据盘中,完成数据存储动作。
本申请提供的数据落盘方法,在执行数据落盘动作前,先对缓存盘的缓存空间进行判断,当判断缓存盘中缓存空间占满时,直接从内存写入数据盘中。由于本申请不需要依赖缓存盘,当缓存盘的缓存空间占满时不需要等待缓存盘数据下刷动作,能够直接将数据写入数据盘中,数据落盘请求仅触发了一次读数据盘和写数据盘的操作,避免了相关技术中数据存储前需要进行大量的读盘、写盘操作后才能执行数据落盘动作,数据落盘等待时间过长的问题,提高了数据存储系统的响应速度,保障了用户体验。
在上述实施方式的基础上,如图2所示,本申请提供的数据落盘方法中,在步骤101之前,还包括:
步骤105、根据预先设置的下刷判断条件,对缓存盘进行下刷判断,获取下刷判断结果;
步骤106、根据下刷判断结果对缓存盘执行数据下刷动作。
具体的,在进行数据落盘之前,首先根据预先设置的下刷判断条件对缓存盘进行判断,当判断缓存盘满足预设条件,例如缓存盘数据过多、或者缓存盘较为空闲时执行数据下刷动作,将缓存盘中携带的数据写入数据盘中,删除缓存盘中的这些数据,避免缓存盘空间不足的问题。
在上述实施方式的基础上,通过对缓存盘根据预先设置的下刷判断条件进行判断,当判断缓存盘满足下刷条件时,对缓存盘进行数据下刷,避免缓存盘空间占满。相比相关技术需要在缓存盘空间占满后才能进行数据下刷,本申请在执行数据存储动作前进行数据下刷,避免了数据存储时需要先等数据下刷完成后才能执行从内存写入缓存盘的问题,提高了数据存储系统的响应速度,保障了用户体验。
在上述实施方式的基础上,如图3所示,下刷判断条件包括缓存盘的缓存空间使用率判断条件和磁盘输入输出压力判断条件,本申请提供的数据落盘方法中,步骤105包括:
步骤151、根据预先设置的缓存盘的缓存空间使用率判断条件和磁盘输入输出压力判断条件,对缓存盘进行判断,得到下刷判断结果。
具体的,本申请判断对缓存盘执行数据下刷动作的下刷判断条件包括缓存盘的缓存空间使用率判断条件和磁盘输入输出压力判断条件,当缓存盘的缓存空间使用率和磁盘输入输出(Input/Output,IO)压力同时满足对应的判断条件时,缓存盘的缓存空间占用较多且数据存储系统业务并不繁忙时,执行数据下刷动作。
在上述实施方式的基础上,通过对缓存盘的使用率和磁盘IO压力进行监控,确保数据下刷时缓存盘的缓存空间使用率和磁盘IO压力均满足要求,即缓存盘的缓存空间占用较多,需要进行数据下刷,并且此时数据存储系统业务并不繁忙,执行数据下刷动作不会影响正常的数据落盘,从而避免数据存储时出现缓存盘空间占满不能立刻执行数据存储动作的问题,提高了数据存储系统的响应速度,保障了用户体验。
在上述实施方式的基础上,如图4所示,步骤151还包括:
步骤152、获取缓存盘的缓存空间使用率和缓存盘的输入输出压力;
步骤153、将缓存空间使用率与预先设置的缓存最优使用率阈值比较,将磁盘输入输出压力与预先设置的输入输出压力阈值比较,获取下刷判断结果。
具体的,可以通过将缓存盘的缓存空间使用率和缓存盘的IO压力分别与缓存最优使用率阈值和IO压力阈值进行比较。当缓存盘的缓存空间使用率大于预先设置的缓存最优使用率阈值时,说明缓存盘空间已被占用大部分,需要进行数据下刷,为后续数据存储提供更多的空间。当缓存盘的IO压力小于IO压力阈值时,说明数据存储系统工作量少,磁盘还有冗余的数据带宽用于缓存下刷,此时执行数据下刷不会影响数据落盘动作的正常进行。
需要强调的是,本申请提供的数据落盘方法中,缓存最优使用率阈值和输入输出压力阈值可以根据用户的实际需要进行预先设置。其中,合适的缓存最优使用率阈值能够减少缓存盘数据下刷频率,提高缓存命中率。当用户需要增加缓存盘数据下刷动作的频率时,可以降低缓存最优使用率阈值,避免缓存盘空间占满,采用本申请提供的数据落盘方法直接将数据落入数据盘,降低缓存命中率的问题;当用户需要降低缓存盘数据下刷动作的频率时,可以提高缓存最优使用率阈值,充分利用缓存盘的存储空间,避免频繁触发数据下刷动作。合适的输入输出压力阈值能避免数据下刷动作对数据存储系统中其他的IO业务的影响。当用户设置的输入输出压力阈值与数据存储系统中业务平均IO水平接近时,缓存盘的数据下刷动作对数据存储系统中的IO影响小。
在上述实施方式的基础上,如图5所示,本申请提供的数据落盘方法中,步骤106包括:
步骤161、当下刷判断结果为缓存空间使用率大于缓存最优使用率阈值且缓存盘的输入输出压力小于输入输出压力阈值时,对缓存盘执行数据下刷动作。
具体的,当缓存盘的缓存空间使用率大于预先设置的缓存最优使用率阈值时,说明缓存盘空间已被占用大部分,需要进行数据下刷,为后续数据存储提供更多的空间。当缓存盘的IO压力小于IO压力阈值时,说明数据存储系统工作量少,此时执行数据下刷不会影响数据落盘动作的正常进行。而只有在同时满足上述两种条件时执行数据下刷才能降低数据存储系统延迟。避免用户IO业务很繁忙,同时缓存使用率很高时触发数据下刷占用磁盘的IO吞吐量,干扰用户IO性能的问题。
在上述实施方式的基础上,如图6所示,数据下刷动作包括冷数据下刷动作,本申请提供的数据落盘方法中,步骤106包括:
步骤162、根据下刷判断结果,对缓存盘中冷数据执行数据下刷动作,其中,冷数据包括命中率小于预设命中率阈值的缓存盘中的缓存数据。
具体的,数据下刷主要针对缓存盘中的冷数据,例如命中率低的存储索引数据,将这些使用频率低的存储索引数据写入数据盘并在缓存盘中删除。
在上述实施方式的基础上,通过针对缓存盘中的冷数据进行数据下刷,避免了使用频率低的数据长期占用缓存盘,而使用频率高的存储索引数据保留在缓存盘中,当进行新的数据落盘动作时,降低将存储索引数据重新从数据盘返回内存并写入缓存盘的频率,降低数据存储系统的整体工作量,提高数据存储系统工作效率。
在上述实施方式的基础上,如图7所示,本申请提供的数据落盘方法中,步骤106之后,步骤101之前,还包括:
步骤107、实时检测缓存盘的缓存空间使用率,当缓存盘的缓存空间使用率小于缓存最优使用率阈值时,停止数据下刷动作。
具体的,在执行数据下刷时,实时检测缓存盘的缓存空间使用率,当缓存盘的缓存空间使用率低于预先设置的缓存最优使用率阈值时,缓存盘有充足的可用存储空间,停止数据下刷动作,让缓存盘中暂存尽可能多的数据,提高缓存命中率。
在上述实施方式的基础上,通过实时对缓存盘的缓存空间使用率进行检测,当判断缓存盘的缓存空间小于预先设置的缓存最优使用率阈值时,停止数据下刷动作,避免重复数据下刷对存储系统资源的浪费。
在上述实施方式的基础上,如图8所示,本申请提供的数据落盘方法中,步骤106之后,步骤101之前,还包括:
步骤108、实时对缓存盘的输入输出压力判断,当缓存盘的输入输出压力大于输入输出压力阈值时,停止数据下刷动作。
具体的,在执行数据下刷时,实时检测数据存储系统和缓存盘的IO压力,当数据存储系统和缓存盘的IO压力大于预设的IO压力阈值时,磁盘性能已经充分发挥出来,缓存下刷占用的磁盘数据带宽开始影响用户业务IO,停止数据下刷动作,把磁盘数据带宽尽可能地给用户业务IO使用,减小缓存下刷对用户业务IO的影响。
本申请提供的方法,通过实时对缓存盘的IO压力进行检测,当判断缓存盘的IO压力大于预设的IO压力阈值时,停止数据下刷动作,避免数据存储系统业务繁忙时数据下刷对数据存储业务开展的干扰,避免数据下刷导致的IP写请求延时大,存储系统响应慢,用户体验差的问题。
在上述实施方式的基础上,如图9所示,本申请提供的数据落盘方法中,步骤101之后,步骤102之前,还包括:
步骤109、根据数据落盘请求获取第一待写入数据;
步骤110、对缓存盘进行第一待写入数据的目标存储索引的检索判断;
步骤111、当缓存盘不存在第一待写入数据的目标存储索引时,将第一待写入数据的目标存储索引从数据盘读取到内存;
步骤112、将第一待写入数据的目标存储索引从内存同步到缓存盘。
具体的,根据第一待写入数据对应的目标存储索引,例如目标obj判断第一待写入数据的obj是否存在于缓存盘中。当判断目标obj不存在于缓存盘汇总,缓存未命中,将目标obj从数据盘同步到缓存盘中。将目标obj从指定数据盘读到内存,触发1次读数据盘操作,能够为写缓存盘准备数据。将目标obj从内存写入到缓存盘,触发1次写缓存盘操作,能够将最近访问的obj数据同步到缓存盘中,增加后续该obj在缓存盘中的命中率,
在上述实施方式的基础上,如图10所示,本申请提供的数据落盘方法中,步骤110包括:
步骤113、通过检索缓存盘对应的内存中的元数据,对缓存盘进行第一待写入数据的目标存储索引的检索判断。
具体的,可以采用但不限于检索缓存盘对应内存中的元数据,确认数据落盘请求中的第一待写入数据的存储索引是否存在于缓存盘中的方式进行检索判断。
在上述实施方式的基础上,如图11所示,缓存盘为多个,本申请提供的数据落盘方法中,步骤110之后,还包括:
步骤114、当缓存盘存在第一待写入数据的目标存储索引时,通过一致性哈希算法从多个缓存盘中获取携带第一待写入数据的目标存储索引的缓存盘。
具体的,本申请提供的数据落盘方法所应用的数据存储系统中缓存盘可以为多个。当缓存盘为多个时,本申请可以采用但不限于一致性哈希算法从多个缓存盘中获取携带第一待写入数据的目标存储索引的缓存盘,即携带数据落盘请求中第一待写入数据对应的目标存储索引,例如目标obj的缓存盘后,再执行写盘动作。
本申请提供的方法,通过一致性哈希算法快速计算得到与数据落盘请求相关的缓存盘,提高了数据落盘效率。
在上述实施方式的基础上,如图12所示,数据盘为多个,本申请提供的数据落盘方法中,步骤110和步骤111之间,还包括:
步骤115、通过一致性哈希算法从多个数据盘中获取携带第一待写入数据的目标存储索引的数据盘。
具体的,本申请提供的数据落盘方法所应用的数据存储系统中数据盘可以为多个。当数据盘为多个时,本申请可以采用但不限于一致性哈希算法从多个数据盘中获取携带第一待写入数据的目标存储索引的数据盘,即携带数据落盘请求中第一待写入数据对应的目标存储索引,例如目标obj的数据盘后,再执行写盘动作。
本申请提供的方法,通过一致性哈希算法快速计算得到与数据落盘请求相关的数据盘,提高了数据落盘效率。
在上述实施方式的基础上,如图13所示,本申请提供的数据落盘方法中,步骤102包括:
步骤121、将第一待写入数据的目标存储索引写入缓存盘中;
步骤122、根据第一待写入数据的目标存储索引的写入结果生成第一判断结果。
具体的,本申请提供的数据落盘方法可以采用但不限于如下方式判断数据落盘是否完成:将第一待写入数据的目标存储索引,例如目标obj写入缓存盘中,当缓存盘的缓存空间不足时,生成第一判断结果,即写入失败。
在上述实施方式的基础上,如图14所示,本申请提供的数据落盘方法中,步骤103包括:
步骤131、当第一待写入数据的目标存储索引写入缓存盘失败,将第一待写入数据写入携带第一待写入数据的目标存储索引的数据盘。
具体的,当obj写入缓存盘的动作由于缓存盘空间不足失败时,将第一待写入数据绕过缓存盘,直接写入到目标obj所在的数据盘,数据落盘后返回,数据落盘请求结束。
在上述实施方式的基础上,如图15所示,本申请提供的数据落盘方法中,步骤109和步骤110之间包括:
步骤191、根据数据存储请求构建逻辑单元号,其中数据存储请求包括数据落盘请求;
步骤192、根据逻辑单元号和待写入数据的数据大小获取多个第二待写入数据的目标存储索引,其中第二待写入数据的目标存储索引包括第一待写入数据的目标存储索引;
步骤193、通过一致性哈希算法将多个第二待写入数据的目标索引均匀分配到多个数据盘中。
具体的,在进行数据落盘前,可以构建逻辑单元号(Local unit number,lun),lun中的所有数据,例如第二待写入数据根据目标索引的数据大小获取对应的目标索引,例如第二待写入数据的obj,在通过一致性哈希算法将该lun中的obj均匀地分配到每块数据盘。
本申请提供的方法,通过一致性哈希算法将lun中的所有数据进行分配,最大程度发挥每块数据盘的性能,提升存储系统的数据吞吐量。
在上述实施方式的基础上,如图16所示,本申请提供的数据落盘方法中,步骤193之后,还包括:
步骤194、将逻辑单元号中的第二待写入数据同步加载到缓存盘中。
具体的,在将lun中的obj均匀地分配到每块数据盘后,对该lun进行预热,通过预热将lun上的数据同步加载到缓存盘中。
本申请提供的方法,通过增设预热步骤,保障了数据存储时查找的目标obj均位于缓存盘中,避免了数据存储时再从内存写入缓存盘的动作,提高了数据存储效率。
在上述实施方式的基础上,如图17所示,缓存盘为固态硬盘,数据盘为机械硬盘,本申请提供的数据落盘方法中,步骤104包括:
步骤141、当第一判断结果为固态硬盘的缓存空间占满时,将待写入数据写入机械硬盘。
具体的,本申请提供的数据落盘方法在混闪存储系统中实现,本申请提供的混闪存储系统中配置SSD作为缓存盘,配置HDD作为数据盘。
本申请提供的方法,通过混闪的磁盘配置,即将HDD作为数据盘,发挥其价格低廉、存储容量大的优势,将SSD作为缓存盘,发挥其读写速度快的优势,在控制成本的同时提高数据存储速度。
在上述实施方式的基础上,本申请还提供一种具体的数据落盘方法示例:
在混闪存储系统中配置一块SSD作为缓存盘,配置三块HDD作为数据盘,SSD的容量为500GB,每秒进行读写操作的次数(Input/Output Operations Per Second,IOPS)为57k,HDD的容量为4TB,写IOPS为100。目标存储索引obj的大小设为4MB,IO压力阈值为40K IOPS,缓存盘最优使用率阈值为80%。
本申请中内存、缓存盘和数据盘的交互如图18所示,图中动作1为常规地由内存的第一区域(io req buf)向缓存盘(cache)写入数据,完成数据落盘动作;当检测到缓存盘中不存在数据落盘动作对应的目标obj时,执行动作2和动作3,即从数据盘将目标obj写入内存的第二区域(tmp buf)中,并由内存写入缓存盘(cache)中;随后执行动作4,即从内存的第一区域(io req buf)向缓存盘(cache)写入目标obj对应的数据;当检测到缓存盘中缓存空间占满时,执行动作5,即从内存直接将数据写入数据盘1(data1)、数据盘2(data2)和数据盘3(data3)中的一个,实现数据落盘。举例来说:
首先在混闪存储系统中创建一个300GB的lun,命名为lun1。由于obj大小为4MB,故lun1总共包含76800个obj,通过一致性哈希算法将这76800个obj均匀地分配到3个数据盘。对lun1进行预热,通过预热,lun1上300G的数据会同步加载到缓存盘。
当需要写4k的数据量到已经预热过的lun1时,操作系统下发IO写请求到混闪存储系统,通过检索内存中的元数据,待写入的4K数据所在的目标obj已经存在于缓存盘中,将待写入的4k数据写入缓存盘的目标obj中,完成数据落盘。
随后在混闪存储系统中创建一个200GB的lun,命名为lun2。由于obj大小为4MB,故lun1总共包含51200个obj,通过一致性哈希算法将这51200个obj均匀地分配到3个数据盘。
当需要写4k的数据量到lun2时,操作系统下发IO写请求到混闪存储系统,通过检索内存中的元数据,待写入的4K数据所在的目标obj不在缓存盘中。缓存盘容量已经包括lun1的300G,占缓存总容量的60%,未触发数据下刷动作。由于目标obj不在缓存盘上,将目标obj从数据盘同步到缓存盘。首先通过一致性哈希算法计算得出该obj位于第3块数据盘上。然后将第3块数据盘上的目标obj读取到内存,再将目标obj写入到缓存盘,待写入的4K数据所在的目标obj存在于缓存盘中,将待写入的4k数据写入缓存盘的目标obj中,完成数据落盘。
随着数据写入请求不断将待写入数据写入缓存盘中,缓存盘的缓存空间使用率上升到80%,但此时数据写入请求的写入工作量大,写入速度,例如50k IOPS高于IO压力阈值40k IOPS时,继续以4KB大小的数据块为单位向缓存盘写入数据,此时不会触发数据下刷,避免数据下刷干扰数据存储业务正常进行。但缓存盘中的缓存空间随着数据写入动作的进行而不断下降,直到缓存盘占满。
随后新创建一个100GB的lun,命名为lun3。由于obj大小为4MB,故lun3总共包含25600个obj,通过一致性哈希算法将这25600个obj均匀地分配到3个数据盘。
当需要写4k的数据量到lun2时,操作系统下发IO写请求到混闪存储系统,通过检索内存中的元数据,待写入的4K数据所在的目标obj不在缓存盘中。由于目标obj不在缓存盘上,将目标obj从数据盘同步到缓存盘。首先通过一致性哈希算法计算得出该obj位于第3块数据盘上。然后将第3块数据盘上的目标obj读取到内存,再将目标obj写入到缓存盘,但此时缓存盘占满,缓存失败。此时,绕过缓存盘,直接将待写入的4K数据写入数据盘上的目标obj中完成数据落盘动作。
当IO写请求速度下降到20K IOPS时,小于预设的IO压力阈值40K IOPS,同时满足缓存盘使用率高于缓存盘最优使用阈值和当前系统IO业务压力低于IO压力阈值两个条件,触发缓存盘冷数据下刷动作。而当IO写请求的速度或缓存盘的使用率不满足阈值时,停止缓存盘冷数据下刷动作。
本申请的第二实施方式涉及一种数据落盘装置,如图19所示,包括:
第一请求获取模块201,用于获取数据落盘请求;
缓存空间判断模块202,用于对数据落盘请求对应的缓存盘的缓存空间进行判断,获取第一判断结果;
第一缓存盘写入模块203,用于当第一判断结果为缓存盘的缓存空间未占满时,将待写入数据写入缓存盘中;
第一数据盘写入模块204,用于当第一判断结果为缓存盘的缓存空间占满时,将待写入数据写入数据盘。
在上述实施方式的基础上,本申请提供的数据落盘装置还包括:
下刷判断模块205,用于根据预先设置的下刷判断条件,对缓存盘进行下刷判断,获取下刷判断结果;
下刷动作模块206,用于根据下刷判断结果对缓存盘执行数据下刷动作。
在上述实施方式的基础上,下刷判断条件包括缓存盘的缓存空间使用率判断条件和磁盘输入输出压力判断条件,本申请提供的下刷判断模块205包括:
下刷判断单元251,用于根据预先设置的缓存盘的缓存空间使用率判断条件和磁盘输入输出压力判断条件,对缓存盘进行判断,得到下刷判断结果。
在上述实施方式的基础上,下刷判断条件还包括磁盘输入输出压力判断条件,本申请提供的下刷判断单元251包括:
获取子单元252,用于获取缓存盘的缓存空间使用率和缓存盘的输入输出压力;
比较子单元253,用于将缓存空间使用率与预先设置的缓存最优使用率阈值比较,将磁盘输入输出压力与预先设置的输入输出压力阈值比较,获取下刷判断结果。
在上述实施方式的基础上,下刷动作模块206包括:
下刷动作单元261,用于当下刷判断结果为缓存空间使用率大于缓存最优使用率阈值且缓存盘的输入输出压力小于输入输出压力阈值时,对缓存盘执行数据下刷动作。
在上述实施方式的基础上,数据下刷动作包括冷数据下刷动作,下刷动作模块206包括:
冷下刷动作单元262,用于根据下刷判断结果,对缓存盘中冷数据执行数据下刷动作,其中,冷数据包括命中率小于预设命中率阈值的缓存盘中的缓存数据。
在上述实施方式的基础上,本申请提供的数据落盘装置还包括:
第一检测模块207,用于实时检测缓存盘的缓存空间使用率,当缓存盘的缓存空间使用率小于缓存最优使用率阈值时,停止数据下刷动作。
在上述实施方式的基础上,缓存盘为固态硬盘,数据盘为机械硬盘,本申请提供的数据落盘装置还包括:
第二检测模块208,用于实时对缓存盘的输入输出压力判断,当缓存盘的输入输出压力大于输入输出压力阈值时,停止数据下刷动作。
在上述实施方式的基础上,本申请提供的数据落盘装置还包括包括:
待写入数据获取模块209,用于根据数据落盘请求获取第一待写入数据;
缓存盘判断模块210,用于对缓存盘进行第一待写入数据的目标存储索引的检索判断;
内存写入模块211,用于当缓存盘不存在第一待写入数据的目标存储索引时,将第一待写入数据的目标存储索引从数据盘读取到内存;
缓存写入模块212,用于将第一待写入数据的目标存储索引从内存同步到缓存盘。
在上述实施方式的基础上,缓存盘判断模块210包括:
元数据检索单元213,用于通过检索缓存盘对应的内存中的元数据,对缓存盘进行第一待写入数据的目标存储索引的检索判断。
在上述实施方式的基础上,缓存盘为多个,本申请提供的数据落盘装置还包括:
第一哈希计算模块214,用于当缓存盘存在第一待写入数据的目标存储索引时,通过一致性哈希算法从多个缓存盘中获取携带第一待写入数据的目标存储索引的缓存盘。
在上述实施方式的基础上,数据盘为多个,本申请提供的数据落盘装置还包括:
第二哈希计算模块215,用于通过一致性哈希算法从多个数据盘中获取携带第一待写入数据的目标存储索引的数据盘。
在上述实施方式的基础上,缓存空间判断模块202包括:
目标索引写入单元221,用于将第一待写入数据的目标存储索引写入缓存盘中;
第一判断生成单元222,用于根据第一待写入数据的目标存储索引的写入结果生成第一判断结果。
在上述实施方式的基础上,第一数据盘写入模块203包括:
数据写入单元231,用于当第一待写入数据的目标存储索引写入缓存盘失败,将第一待写入数据写入携带第一待写入数据的目标存储索引的数据盘。
在上述实施方式的基础上,本申请提供的数据落盘装置还包括:
逻辑单元号构建模块291,用于根据数据存储请求构建逻辑单元号,其中数据存储请求包括数据落盘请求;
目标索引获取模块292,用于根据逻辑单元号和待写入数据的数据大小获取多个第二待写入数据的目标存储索引,其中第二待写入数据的目标存储索引包括第一待写入数据的目标存储索引;
目标索引分配模块293,用于通过一致性哈希算法将多个第二待写入数据的目标索引均匀分配到多个数据盘中。
在上述实施方式的基础上,本申请提供的数据落盘装置还包括:
逻辑单元号数据同步模块294,用于将逻辑单元号中的第二待写入数据同步加载到缓存盘中。
在上述实施方式的基础上,缓存盘为固态硬盘,数据盘为机械硬盘,第一数据盘写入模块204包括:
机械硬盘写入单元241,用于当第一判断结果为固态硬盘的缓存空间占满时,将待写入数据写入机械硬盘。
本申请的第三实施方式涉及一种电子设备,如图20所示,包括:
至少一个处理器171;以及,
与所述至少一个处理器171通信连接的存储器172;其中,
所述存储器172存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器171执行,以使所述至少一个处理器171能够实现本申请第一实施方式所述的数据落盘方法。
其中,存储器和处理器采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器和存储器的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器。
处理器负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器在执行操作时所使用的数据。
本申请第四实施方式涉及一种非易失性计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现本申请第一实施方式所述的数据落盘方法。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员在考虑说明书及实践这里公开的申请后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (20)
1.一种数据落盘方法,其特征在于,所述方法包括:
获取数据落盘请求;
对所述数据落盘请求对应的缓存盘的缓存空间进行判断,获取第一判断结果;
当第一判断结果为所述缓存盘的缓存空间未占满时,将待写入数据写入所述缓存盘中;
当第一判断结果为所述缓存盘的缓存空间占满时,将所述待写入数据写入数据盘。
2.根据权利要求1所述的方法,其特征在于,所述获取数据落盘请求之前,还包括:
根据预先设置的下刷判断条件,对所述缓存盘进行下刷判断,获取下刷判断结果;
根据所述下刷判断结果对所述缓存盘执行数据下刷动作。
3.根据权利要求2所述的方法,其特征在于,所述下刷判断条件包括缓存盘的缓存空间使用率判断条件和磁盘输入输出压力判断条件,所述根据预先设置的下刷判断条件,对所述缓存盘进行下刷判断,获取下刷判断结果包括:
根据预先设置的所述缓存盘的缓存空间使用率判断条件和所述磁盘输入输出压力判断条件,对所述缓存盘进行判断,得到下刷判断结果。
4.根据权利要求3所述的方法,其特征在于,所述根据预先设置的所述缓存盘的缓存空间使用率判断条件和所述磁盘输入输出压力判断条件,对所述缓存盘进行判断,得到下刷判断结果包括:
获取所述缓存盘的缓存空间使用率和所述缓存盘的输入输出压力;
将所述缓存空间使用率与预先设置的缓存最优使用率阈值比较,将所述磁盘输入输出压力与预先设置的输入输出压力阈值比较,获取所述下刷判断结果。
5.根据权利要求4所述的方法,其特征在于,所述根据所述下刷判断结果对所述缓存盘执行数据下刷动作包括:
当所述下刷判断结果为所述缓存空间使用率大于所述缓存最优使用率阈值且所述缓存盘的输入输出压力小于所述输入输出压力阈值时,对所述缓存盘执行数据下刷动作。
6.根据权利要求2所述的方法,其特征在于,所述数据下刷动作包括冷数据下刷动作,所述根据所述下刷判断结果对所述缓存盘执行数据下刷动作包括:
根据所述下刷判断结果,对所述缓存盘中冷数据执行数据下刷动作,其中,所述冷数据包括命中率小于预设命中率阈值的缓存盘中的缓存数据。
7.根据权利要求4所述的方法,其特征在于,所述根据所述下刷判断结果对所述缓存盘执行数据下刷动作之后,所述获取数据落盘请求之前,还包括:
实时检测所述缓存盘的缓存空间使用率,当所述缓存盘的缓存空间使用率小于所述缓存最优使用率阈值时,停止数据下刷动作。
8.根据权利要求4所述的方法,其特征在于,所述根据所述下刷判断结果对所述缓存盘执行数据下刷动作之后,所述获取数据落盘请求之前,还包括:
实时对所述缓存盘的输入输出压力判断,当所述缓存盘的输入输出压力大于所述输入输出压力阈值时,停止数据下刷动作。
9.根据权利要求1所述的方法,其特征在于,所述获取数据落盘请求之后,所述对所述数据落盘请求对应的缓存盘的缓存空间进行判断,获取第一判断结果之前,还包括:
根据数据落盘请求获取第一待写入数据;
对所述缓存盘进行第一待写入数据的目标存储索引的检索判断;
当所述缓存盘不存在所述第一待写入数据的目标存储索引时,将所述第一待写入数据的目标存储索引从所述数据盘读取到内存;
将所述第一待写入数据的目标存储索引从所述内存落盘到所述缓存盘。
10.根据权利要求9所述的方法,其特征在于,所述对所述缓存盘进行第一待写入数据的目标存储索引的检索判断包括:
通过检索所述缓存盘对应的内存中的元数据,对所述缓存盘进行第一待写入数据的目标存储索引的检索判断。
11.根据权利要求9所述的方法,其特征在于,所述缓存盘为多个,所述对所述缓存盘进行第一待写入数据的目标存储索引的检索判断之后还包括:
当所述缓存盘存在所述第一待写入数据的目标存储索引时,通过一致性哈希算法从多个所述缓存盘中获取携带所述第一待写入数据的目标存储索引的缓存盘。
12.根据权利要求9所述的方法,其特征在于,所述数据盘为多个,所述对所述缓存盘进行第一待写入数据的目标存储索引的检索判断之后,所述当所述缓存盘不存在所述第一待写入数据的目标存储索引时,将所述第一待写入数据的目标存储索引从所述数据盘读取到内存之前,还包括:
通过一致性哈希算法从多个所述数据盘中获取携带所述第一待写入数据的目标存储索引的数据盘。
13.根据权利要求9所述的方法,其特征在于,所述对所述数据落盘请求对应的缓存盘的缓存空间进行判断,获取第一判断结果包括:
将所述第一待写入数据的目标存储索引写入所述缓存盘中;
根据所述第一待写入数据的目标存储索引的写入结果生成第一判断结果。
14.根据权利要求13所述的方法,其特征在于,所述当第一判断结果为所述缓存盘的缓存空间占满时,将所述第一待写入数据写入数据盘包括:
当所述第一待写入数据的目标存储索引写入所述缓存盘失败,将所述第一待写入数据写入携带所述第一待写入数据的目标存储索引的数据盘。
15.根据权利要求9所述的方法,其特征在于,所述根据数据落盘请求获取第一待写入数据之后,所述对所述缓存盘进行第一待写入数据的目标存储索引的检索判断之前,还包括:
根据数据存储请求构建逻辑单元号,其中数据存储请求包括所述数据落盘请求;
根据所述逻辑单元号和所述第一待写入数据的数据大小获取多个第二待写入数据的目标存储索引,其中所述第二待写入数据的目标索引包括所述第一待写入数据的目标存储索引;
通过一致性哈希算法将多个所述第二待写入数据的目标索引均匀分配到多个所述数据盘中。
16.根据权利要求15所述的方法,其特征在于,所述通过所述一致性哈希算法将多个所述第二待写入数据的目标索引均匀分配到多个所述数据盘中之后,还包括:
将所述逻辑单元号中的所述第二待写入数据同步加载到所述缓存盘中。
17.根据权利要求1所述的方法,其特征在于,所述缓存盘为固态硬盘,所述数据盘为机械硬盘,所述当第一判断结果为所述缓存盘的缓存空间占满时,将所述待写入数据写入数据盘包括:
当所述第一判断结果为所述固态硬盘的缓存空间占满时,将所述待写入数据写入所述机械硬盘。
18.一种数据落盘装置,其特征在于,包括:
待写入数据获取模块,用于根据数据落盘请求获取待写入数据;
第一使用率获取模块,用于获取缓存盘的缓存空间使用率;
第一数据盘写入模块,用于当所述缓存盘的缓存空间使用率大于预先设置的缓存空间使用率阈值时,将所述待写入数据写入数据盘;
第一缓存盘写入模块,用于当第一判断结果为所述缓存盘的缓存空间未占满时,将所述待写入数据写入所述缓存盘中。
19.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如权利要求1-17任一项所述的数据落盘方法的步骤。
20.一种非易失性可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-17任一项所述的数据落盘方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310749018.0A CN116521090B (zh) | 2023-06-25 | 2023-06-25 | 数据落盘方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310749018.0A CN116521090B (zh) | 2023-06-25 | 2023-06-25 | 数据落盘方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116521090A CN116521090A (zh) | 2023-08-01 |
CN116521090B true CN116521090B (zh) | 2023-09-12 |
Family
ID=87396152
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310749018.0A Active CN116521090B (zh) | 2023-06-25 | 2023-06-25 | 数据落盘方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116521090B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102662459A (zh) * | 2012-04-22 | 2012-09-12 | 复旦大学 | 利用固态硬盘与机械硬盘混合存储减少服务器能源消耗的方法 |
CN105786410A (zh) * | 2016-03-01 | 2016-07-20 | 深圳市瑞驰信息技术有限公司 | 一种提高数据存储系统处理速度的方法及数据存储系统 |
CN106873904A (zh) * | 2016-12-30 | 2017-06-20 | 北京联想核芯科技有限公司 | 数据写入方法及固态硬盘 |
CN107092525A (zh) * | 2016-02-18 | 2017-08-25 | 深圳市深信服电子科技有限公司 | 数据缓存方法和装置 |
CN107145301A (zh) * | 2016-03-01 | 2017-09-08 | 深圳市深信服电子科技有限公司 | 基于混合磁盘的数据存取方法及装置 |
CN108153495A (zh) * | 2018-01-15 | 2018-06-12 | 沈阳延云云计算技术有限公司 | 数据存储方法、装置及数据存储系统 |
CN109388346A (zh) * | 2018-10-15 | 2019-02-26 | 郑州云海信息技术有限公司 | 一种数据落盘方法和相关装置 |
CN114035748A (zh) * | 2021-11-10 | 2022-02-11 | 罗普特科技集团股份有限公司 | 一种数据文件的存取方法与系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103870492B (zh) * | 2012-12-14 | 2017-08-04 | 腾讯科技(深圳)有限公司 | 一种基于键排序的数据存储方法和装置 |
-
2023
- 2023-06-25 CN CN202310749018.0A patent/CN116521090B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102662459A (zh) * | 2012-04-22 | 2012-09-12 | 复旦大学 | 利用固态硬盘与机械硬盘混合存储减少服务器能源消耗的方法 |
CN107092525A (zh) * | 2016-02-18 | 2017-08-25 | 深圳市深信服电子科技有限公司 | 数据缓存方法和装置 |
CN105786410A (zh) * | 2016-03-01 | 2016-07-20 | 深圳市瑞驰信息技术有限公司 | 一种提高数据存储系统处理速度的方法及数据存储系统 |
CN107145301A (zh) * | 2016-03-01 | 2017-09-08 | 深圳市深信服电子科技有限公司 | 基于混合磁盘的数据存取方法及装置 |
CN106873904A (zh) * | 2016-12-30 | 2017-06-20 | 北京联想核芯科技有限公司 | 数据写入方法及固态硬盘 |
CN108153495A (zh) * | 2018-01-15 | 2018-06-12 | 沈阳延云云计算技术有限公司 | 数据存储方法、装置及数据存储系统 |
CN109388346A (zh) * | 2018-10-15 | 2019-02-26 | 郑州云海信息技术有限公司 | 一种数据落盘方法和相关装置 |
CN114035748A (zh) * | 2021-11-10 | 2022-02-11 | 罗普特科技集团股份有限公司 | 一种数据文件的存取方法与系统 |
Also Published As
Publication number | Publication date |
---|---|
CN116521090A (zh) | 2023-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103970688B (zh) | 缩短数据存储系统中写入等待时间的方法和系统 | |
US8347060B2 (en) | Storage system, storage extent release method and storage apparatus | |
US8069191B2 (en) | Method, an apparatus and a system for managing a snapshot storage pool | |
US8392670B2 (en) | Performance management of access to flash memory in a storage device | |
US9703717B2 (en) | Computer system and control method | |
US11644994B2 (en) | Data migration method, host, and solid state disk | |
US7624230B2 (en) | Information processing apparatus, information processing method and storage system using cache to reduce dynamic switching of mapping between logical units and logical devices | |
JP2003015915A (ja) | 記憶装置の容量自動拡張方法 | |
US11093134B2 (en) | Storage device, management method, and program in tiered storage system | |
EP2981920A1 (en) | Detection of user behavior using time series modeling | |
US20180341423A1 (en) | Storage control device and information processing system | |
US11429431B2 (en) | Information processing system and management device | |
US20170329553A1 (en) | Storage control device, storage system, and computer-readable recording medium | |
US8285943B2 (en) | Storage control apparatus and method of controlling storage control apparatus | |
CN116521090B (zh) | 数据落盘方法、装置、电子设备及存储介质 | |
JP2019191886A (ja) | 情報処理装置,情報処理方法およびプログラム | |
US10168944B2 (en) | Information processing apparatus and method executed by an information processing apparatus | |
JP3812405B2 (ja) | ディスクアレイシステム | |
WO2014147786A1 (ja) | ストレージシステム及びデータ管理方法 | |
JP7011156B2 (ja) | ストレージ制御装置およびプログラム | |
US8370578B2 (en) | Storage controller and method of controlling storage controller | |
US8850087B2 (en) | Storage device and method for controlling the same | |
US10007437B2 (en) | Management apparatus, storage system, method, and computer readable medium | |
JP6497233B2 (ja) | ストレージ制御装置、ストレージ制御プログラム、及びストレージ制御方法 | |
CN117667756A (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 |