CN117590999A - 数据读写的控制方法、装置、nas设备以及nas设备控制系统 - Google Patents
数据读写的控制方法、装置、nas设备以及nas设备控制系统 Download PDFInfo
- Publication number
- CN117590999A CN117590999A CN202310440004.0A CN202310440004A CN117590999A CN 117590999 A CN117590999 A CN 117590999A CN 202310440004 A CN202310440004 A CN 202310440004A CN 117590999 A CN117590999 A CN 117590999A
- Authority
- CN
- China
- Prior art keywords
- target
- data
- module
- storage
- writing
- 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
- 238000005192 partition Methods 0.000 claims description 269
- 238000013507 mapping Methods 0.000 claims description 97
- 238000013500 data storage Methods 0.000 claims description 37
- 230000005540 biological transmission Effects 0.000 claims description 22
- 238000012512 characterization method Methods 0.000 claims description 15
- 238000004364 calculation method Methods 0.000 claims description 9
- 230000005611 electricity Effects 0.000 claims 1
- 230000001133 acceleration Effects 0.000 abstract description 6
- 230000008447 perception Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000002093 peripheral effect Effects 0.000 description 6
- 238000003491 array Methods 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000007774 longterm 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
- 238000003672 processing method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 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
- 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/0644—Management of space entities, e.g. partitions, extents, pools
-
- 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/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- 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)
- 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
本发明公开了一种数据读写的控制方法、装置NAS设备以及NAS设备控制系统,该方法包括:根据接收到的读取缓存指令,将目标存储模块中存储的目标读取数据传输至缓存模块,在接收到数据读取请求时,从缓存模块中读取目标读取数据,在接收到数据写入请求时,将目标写入数据写入至缓存模块,判断写入操作对应的操作参数是否满足预设参数条件,并在满足时将缓存模块中存储的目标写入数据写入至目标存储模块。可见,实施本发明能够通过使用数据读写速度更快的缓存模块作为目标存储模块在读写数据时的缓存空间,在保证写入到缓存模块的数据正常写入到目标存储模块的同时提高了数据读写的效率,实现用户无感知的数据加速写入,提升用户使用体验。
Description
技术领域
本发明涉及数据存储技术领域,尤其涉及一种数据读写的控制方法、装置、NAS设备以及NAS设备控制系统。
背景技术
随着基础网络设施的完善和个人网络终端的普及,公众对于数据存储技术的要求也相应提高,越来越多的用户开始追求更高的读写速度,以及更加顺畅的数据读写体验。
目前,由于机械硬盘价格低廉且存储量较大,使其成为许多用户存储数据的首选,但是,机械硬盘存在读写数据速度较慢的缺点,尤其是在用户连续读写多个数据文件时,影响用户的使用体验。因此,提出一种能够提高数据读写效率的技术方案显得尤为重要。
发明内容
本发明提供了一种数据读写的控制方法及装置,能够通过使用数据读写速度更快的缓存模块作为目标存储模块在读写数据时的缓存空间,以提高数据读写的效率,且能够保证写入到缓存模块的数据正常写入到目标存储模块,同时实现用户无感知的数据加速写入,提高用户使用体验。
为了解决上述技术问题,本发明第一方面公开了一种数据读写的控制方法,所述方法应用于数据存储系统中,所述数据存储系统包括缓存模块以及目标存储模块,所述缓存模块与所述目标存储模块电连接,所述方法包括:
根据接收到的读取缓存指令,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块,所述缓存模块的数据读写速度高于所述目标存储模块的数据读写速度;
当接收到针对所述目标读取数据的数据读取请求时,从所述缓存模块中读取所述目标读取数据;
当接收到针对目标写入数据的数据写入请求时,将所述目标写入数据写入至所述缓存模块,并判断写入操作对应的操作参数是否满足预设参数条件,所述写入操作为所述将所述目标写入数据写入至所述缓存模块的操作;
当所述写入操作对应的操作参数满足预设参数条件时,将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块。
作为一种可选的实施方式,在本发明第一方面中,所述方法还包括:
分别对所述目标存储模块和所述缓存模块进行存储分区,得到所述目标存储模块对应的多个第一存储分区和所述缓存模块对应的多个第二存储分区;
对所述目标存储模块的每个所述第一存储分区设置编号,并对每个所述第一存储分区的编号进行哈希计算,得到每个所述第一存储分区对应的哈希表征值;
对于任一所述第一存储分区,根据所述第一存储分区对应的哈希表征值,建立所述第一存储分区与所有所述第二存储分区中的其中一个第二存储分区之间的映射关系,所述映射关系用于表示所述第一存储分区与所述第二存储分区之间的一一对应关系,其中,每个第一存储分区对应不同的第二存储分区;
其中,所述根据接收到的读取缓存指令,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块,包括:
根据接收到的读取缓存指令及所述目标存储模块与所述缓存模块之间对应的映射关系,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块;
所述将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块,包括:
根据所述目标存储模块与所述缓存模块之间对应的映射关系,将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块。
作为一种可选的实施方式,在本发明第一方面中,所述根据接收到的读取缓存指令及所述目标存储模块与所述缓存模块之间对应的映射关系,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块,包括:
根据接收到的读取缓存指令,确定所述目标读取数据在所述目标存储模块中对应的第一存储分区;
根据所述目标读取数据对应的第一存储分区对应的映射关系,确定所述缓存模块中与所述目标读取数据对应的第一存储分区相匹配的第二存储分区;
将所述目标读取数据从所述第一存储分区传输至确定出的所述缓存模块中的第二存储分区;
所述根据所述目标存储模块与所述缓存模块之间对应的映射关系,将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块,包括:
确定所述目标写入数据在所述缓存模块中对应的第二存储分区;
根据所述目标写入数据对应的所述第二存储分区对应的映射关系,确定所述目标存储模块中与所述目标写入数据对应的所述第二存储分区相匹配的第一存储分区;
将所述目标写入数据从所述第二存储分区写入至所述目标存储模块中的第一存储分区。
作为一种可选的实施方式,在本发明第一方面中,所述预设参数条件包括所述目标写入数据写入到所述缓存模块中的数据量占所有需写入所述缓存模块的所述目标写入数据的总数据量的数据占比达到预设的第一占比阈值;和/或,所述目标写入数据写入到所述缓存模块中的数据量占所述缓存模块的数据存储容量的占比达到预设的第二占比阈值;和/或,所述目标写入数据写入所述缓存模块对应的数据写入用时大于预设的用时阈值。
作为一种可选的实施方式,在本发明第一方面中,当接收到针对目标写入数据的数据写入请求时,所述方法还包括:
判断所述目标写入数据的数据情况是否满足预设数据条件;
当所述目标写入数据的数据情况满足预设数据条件时,执行所述的将所述目标写入数据写入至所述缓存模块的操作;
当所述目标写入数据的数据情况不满足预设数据条件时,将所述目标写入数据写入至所述目标存储模块;
其中,所述目标写入数据的数据情况不满足预设数据条件包括所述目标写入数据的单文件数据量大于预设的数据量阈值,和/或针对所述目标写入数据的数据写入请求连续。
作为一种可选的实施方式,在本发明第一方面中,所述数据读取请求包括所述目标读取数据对应的哈希表征值;
在所述接收到针对所述目标读取数据的数据读取请求之后,所述方法还包括:
根据所述目标读取数据对应的哈希表征值,确定所述目标存储模块中用于存储所述目标读取数据的目标第一存储分区;
根据所述目标第一存储分区对应的映射关系,确定所述缓存模块中与所述目标第一存储分区对应的目标第二存储分区,并判断所述目标第二存储分区中是否存在所述目标读取数据;
当所述目标第二存储分区中存在所述目标读取数据时,执行所述的从所述缓存模块中读取所述目标读取数据的操作;
当所述目标第二存储分区中不存在所述目标读取数据时,从所述目标第一存储分区中读取所述目标读取数据,并将所述目标读取数据从所述目标第一存储分区传输至所述目标第二存储分区。
作为一种可选的实施方式,在本发明第一方面中,所述方法还包括:
在接收到针对所述缓存模块触发的映射关系移除请求时,根据所述移除请求,确定需要被移除的目标映射关系;
根据每个所述目标映射关系,将每个所述目标映射关系对应的第二存储分区中存储的数据传输至对应的第一存储分区;
删除每个所述目标映射关系,并回收所述缓存模块中针对所述目标映射关系对应的数据写入请求和数据读取请求的记录信息。
本发明第二方面公开了一种数据读写的控制装置,所述数据读写的控制装置应用于数据存储系统中,所述数据存储系统包括缓存模块以及目标存储模块,所述缓存模块与所述目标存储模块电连接,所述装置包括:
传输模块,用于根据接收到的读取缓存指令,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块,所述缓存模块的数据读写速度高于所述目标存储模块的数据读写速度;
读取模块,用于当接收到针对所述目标读取数据的数据读取请求时,从所述缓存模块中读取所述目标读取数据;
第一写入模块,用于当接收到针对目标写入数据的数据写入请求时,将所述目标写入数据写入至所述缓存模块;
判断模块,用于判断写入操作对应的操作参数是否满足预设参数条件,所述写入操作为所述将所述目标写入数据写入至所述缓存模块的操作;
所述第一写入模块,还用于当所述写入操作对应的操作参数满足预设参数条件时,将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块。
作为一种可选的实施方式,在本发明第二方面中,所述装置还包括:
分区模块,用于分别对所述目标存储模块和所述缓存模块进行存储分区,得到所述目标存储模块对应的多个第一存储分区和所述缓存模块对应的多个第二存储分区;
编号模块,用于对所述目标存储模块的每个所述第一存储分区设置编号,并对每个所述第一存储分区的编号进行哈希计算,得到每个所述第一存储分区对应的哈希表征值;
映射模块,用于对于任一所述第一存储分区,根据所述第一存储分区对应的哈希表征值,建立所述第一存储分区与所有所述第二存储分区中的其中一个第二存储分区之间的映射关系,所述映射关系用于表示所述第一存储分区与所述第二存储分区之间的一一对应关系,其中,每个第一存储分区对应不同的第二存储分区;
其中,所述传输模块根据接收到的读取缓存指令,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块的方式具体包括:
根据接收到的读取缓存指令及所述目标存储模块与所述缓存模块之间对应的映射关系,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块;
所述第一写入模块将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块的方式具体包括:
根据所述目标存储模块与所述缓存模块之间对应的映射关系,将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块。
作为一种可选的实施方式,在本发明第二方面中,所述传输模块根据接收到的读取缓存指令及所述目标存储模块与所述缓存模块之间对应的映射关系,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块的方式具体包括:
根据接收到的读取缓存指令,确定所述目标读取数据在所述目标存储模块中对应的第一存储分区;
根据所述目标读取数据对应的第一存储分区对应的映射关系,确定所述缓存模块中与所述目标读取数据对应的第一存储分区相匹配的第二存储分区;
将所述目标读取数据从所述第一存储分区传输至所述缓存模块中的第二存储分区;
所述第一写入模块根据所述目标存储模块与所述缓存模块之间对应的映射关系,将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块的方式具体包括:
确定所述目标写入数据在所述缓存模块中对应的第二存储分区;
根据所述目标写入数据对应的所述第二存储分区对应的映射关系,确定所述目标存储模块中与所述目标写入数据对应的所述第二存储分区相匹配的第一存储分区;
将所述目标写入数据从所述第二存储分区传输至所述目标存储模块中的第一存储分区。
作为一种可选的实施方式,在本发明第二方面中,所述预设参数条件包括所述目标写入数据写入到所述缓存模块中的数据量占所有需写入所述缓存模块的所述目标写入数据的总数据量的数据占比达到预设的第一占比阈值;和/或,所述目标写入数据写入到所述缓存模块中的数据量占所述缓存模块的数据存储容量的占比达到预设的第二占比阈值;和/或,所述目标写入数据写入所述缓存模块对应的数据写入用时大于预设的用时阈值。
作为一种可选的实施方式,在本发明第二方面中,所述装置还包括:
所述判断模块,还用于当接收到针对目标写入数据的数据写入请求时,判断所述目标写入数据的数据情况是否满足预设数据条件;当所述目标写入数据的数据情况满足预设数据条件时,触发执行所述的将所述目标写入数据写入至所述缓存模块的操作;
第二写入模块,用于当所述目标写入数据的数据情况不满足预设数据条件时,将所述目标写入数据写入至所述目标存储模块;
其中,所述目标写入数据的数据情况不满足预设数据条件包括所述目标写入数据的单文件数据量大于预设的数据量阈值,和/或针对所述目标写入数据的数据写入请求连续。
作为一种可选的实施方式,在本发明第二方面中,所述数据读取请求包括所述目标读取数据对应的哈希表征值;
所述装置还包括:
第一确定模块,用于在所述读取模块接收到针对所述目标读取数据的数据读取请求之后,根据所述目标读取数据对应的哈希表征值,确定所述目标存储模块中用于存储所述目标读取数据的目标第一存储分区;
所述第一确定模块,还用于根据所述目标第一存储分区对应的映射关系,确定所述缓存模块中与所述目标第一存储分区对应的目标第二存储分区,并判断所述目标第二存储分区中是否存在所述目标读取数据;当所述目标第二存储分区中存在所述目标读取数据时,触发所述读取模块执行所述的从所述缓存模块中读取所述目标读取数据的操作;
所述读取模块,还用于当所述目标第二存储分区中不存在所述目标读取数据时,从所述目标第一存储分区中读取所述目标读取数据,并将所述目标读取数据从所述目标第一存储分区传输至所述目标第二存储分区。
作为一种可选的实施方式,在本发明第二方面中,所述装置还包括:
第二确定模块,用于在接收到针对所述缓存模块触发的映射关系移除请求时,根据所述移除请求,确定需要被移除的目标映射关系;
所述传输模块,还用于根据每个所述目标映射关系,将每个所述目标映射关系对应的第二存储分区中存储的数据传输至对应的第一存储分区;
删除模块,用于删除每个所述目标映射关系,并回收所述缓存模块中针对所述目标映射关系对应的数据写入请求和数据读取请求的记录信息。
本发明第三方面公开了一种NAS设备,所述NAS设备包括数据存储系统,所述数据存储系统包括缓存模块以及目标存储模块,所述数据存储系统用于执行本发明第一方面公开的数据读写的控制方法。
本发明第四方面公开了一种NAS设备控制系统,所述NAS设备控制系统包括NAS设备和电子设备,所述NAS设备通信连接至所述电子设备,所述NAS设备用于执行本发明第一方面公开的数据读写的控制方法。
本发明第五方面公开了另一种数据读写的控制装置,所述装置包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明第一方面公开的数据读写的控制方法。
本发明第六方面公开了一种计算机存储介质,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行本发明第一方面公开的数据读写的控制方法。
与现有技术相比,本发明实施例具有以下有益效果:
通过实施本发明能够通过使用数据读写速度更快的缓存模块作为目标存储模块在读写数据时的缓存空间,在保证写入到缓存模块的数据正常写入到目标存储模块的同时提高了数据读写的效率,实现用户无感知的数据加速写入,提升用户使用体验。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种数据读写的控制方法的流程示意图;
图2是本发明实施例公开的一种数据读写的控制装置的结构示意图;
图3是本发明实施例公开的另一种数据读写的控制装置的结构示意图;
图4是本发明实施例公开的一种NAS设备控制系统的结构示意图;
图5是本发明实施例公开的又一种数据读写的控制装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或端没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或端固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本发明公开了一种数据读写的控制方法及装置,能够通过使用数据读写速度更快的缓存模块作为目标存储模块在读写数据时的缓存空间,以提高数据读写的效率,且能够保证写入到缓存模块的数据正常写入到目标存储模块,同时实现用户无感知的数据加速写入,提高用户使用体验。以下分别进行详细说明。
实施例一
请参阅图1,图1是本发明实施例公开的一种数据读写的控制方法的流程示意图。其中,图1所描述的数据读写的控制方法可以应用于数据存储系统中,也可以应用于其他数据存储终端、数据存储设备或数据存储服务器中,其中,数据存储系统可以包括缓存模块以及目标存储模块,缓存模块与目标存储模块之间电连接,本发明实施例不做限定。如图1所示,该数据读写的控制方法可以包括以下操作:
101、根据接收到的读取缓存指令,将目标存储模块中存储的目标读取数据传输至缓存模块,缓存模块的数据读写速度高于目标存储模块的数据读写速度。
本发明实施例中,可选的,读取缓存指令用于指示将目标存储模块中存储的目标读取数据传输至缓存模块,读取缓存指令可以由有线连接(电连接)至数据存储系统的控制器或终端发出,也可以由无线连接至数据存储系统的控制器或终端发出,目标读取数据为存储在目标存储模块中,且能够被外界读取的数据,本发明不做限定。
本发明实施例中,可选的,数据读写速度可以用于指代模块的平均数据读写速度,其用于表征对应的模块的类型所对应的一般数据读写性能,并不旨在限定其在特定环境下或异常情况下的数据读写性能。
本发明实施例中,可选的,缓存模块可以为SSD(Solid State Drive,固态驱动器)设备,其数据读写性能较高,但其成本也比较高,且储存空间较小,寿命也较短。可选的,目标存储模块可以为HDD(Hard Disk Drive,硬盘驱动器)设备,其数据读写性能较差,但其成本低廉,且储存空间大,寿命较长,是用于数据长期存储的较优选择。
本发明实施例中,可选的,可以通过与缓存模块和/或目标存储模块电连接的对外数据通信接口收取读取缓存指令,其中,对外数据通信接口可以为USB接口(如标准USB接口、Mini USB接口或Micro USB接口)、lightning接口、局域网接口等有线通信接口或其他无线通信接口,事实上,任何具备对外数据通信传输功能的接口都应被认为包括在本发明的保护范围之中,本发明在此不做进一步的列举。可选的,对外数据通信接口可以用于电连接或通信连接至外部的数据读取源或数据写入源,其中,数据读取源和数据写入源可以为不同的或相同的数据读写终端。
102、当接收到针对目标读取数据的数据读取请求时,从缓存模块中读取目标读取数据。
本发明实施例中,数据读取请求用于指示读取目标读取数据,且在接收到针对目标读取数据的数据读取请求时,从缓存模块中读取数据读取请求所指示的目标读取数据。
103、当接收到针对目标写入数据的数据写入请求时,将目标写入数据写入至缓存模块。
本发明实施例中,数据写入请求用于指示写入目标写入数据,且在接收到针对目标写入数据的数据写入请求时,将目标写入数据写入至缓存模块。
104、判断写入操作对应的操作参数是否满足预设参数条件,写入操作为将目标写入数据写入至缓存模块的操作。
本发明实施例中,可选的,在执行将目标写入数据写入至缓存模块这一写入操作时,判断写入操作对应的操作参数是否满足预设参数条件,其中,可选的,预设参数条件可以包括写入到缓存模块中的目标写入数据的数据量占所有需写入缓存模块的目标写入数据的总数据量的占比达到预设的第一占比阈值、写入到缓存模块中的目标写入数据的数据量占缓存模块的数据存储容量的占比达到预设的第二占比阈值和目标写入数据写入缓存模块对应的数据写入用时大于预设的用时阈值中的一种或多种,本发明不做限定。
105、当写入操作对应的操作参数满足预设参数条件时,将缓存模块中存储的目标写入数据写入至目标存储模块。
可见,实施图1所描述的数据读写的控制方法能够根据接收到的读取缓存指令,将目标存储模块中存储的目标读取数据传输至缓存模块,当接收到针对目标读取数据的数据读取请求时,从缓存模块中读取目标读取数据,当接收到针对目标写入数据的数据写入请求时,将目标写入数据写入至缓存模块,能够通过使用数据读写速度更快的缓存模块作为目标存储模块在读写数据时的缓存空间,以提高数据读写的效率,判断写入操作对应的操作参数是否满足预设参数条件,当写入操作对应的操作参数满足预设参数条件时,将缓存模块中存储的目标写入数据写入至目标存储模块,在保证写入到缓存模块的数据正常写入到目标存储模块的同时提高了数据读写的效率,实现用户无感知的数据加速写入,提升用户使用体验。
在一个可选的实施例中,该数据读写的控制方法还可以包括以下操作:
分别对目标存储模块和缓存模块进行存储分区,得到目标存储模块对应的多个第一存储分区和缓存模块对应的多个第二存储分区;
对目标存储模块的每个第一存储分区设置编号,并对每个第一存储分区的编号进行哈希计算,得到每个第一存储分区对应的哈希表征值;
对于任一第一存储分区,根据第一存储分区对应的哈希表征值,建立第一存储分区与所有第二存储分区中的其中一个第二存储分区之间的映射关系,映射关系用于表示第一存储分区与第二存储分区之间的一一对应关系,其中,每个第一存储分区对应不同的第二存储分区;
其中,所述根据接收到的读取缓存指令,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块,包括:
根据接收到的读取缓存指令及所述目标存储模块与所述缓存模块之间对应的映射关系,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块;
所述将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块,包括:
根据所述目标存储模块与所述缓存模块之间对应的映射关系,将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块。
该可选的实施例中,可选的,多个第一存储分区的存储空间大小可以是相同的,也可以是不同的。可选的,多个第二存储分区的存储空间大小可以是相同的,也可以是不同的。
该可选的实施例中,可选的,可以通过对存储分区的编号进行哈希计算以得到哈希表征值,也可以通过其他加密或非加密处理方式对存储分区的编号进行处理。
该可选的实施例中,可选的,通过每个第一存储分区都有与之唯一对应的第二存储分区,可以通过哈希表征值从第一存储分区找到对应的第二存储分区并传输数据,也可以通过哈希表征值从第二存储分区找到对应的第一存储分区并传输数据。
可见,实施该可选的实施例能够分别对目标存储模块和缓存模块进行存储分区,得到目标存储模块对应的多个第一存储分区和缓存模块对应的多个第二存储分区,通过对每个第一存储分区的编号进行哈希计算,得到每个第一存储分区的哈希表征值,进而得到每个第一存储分区与对应的第二存储分区之间的映射关系,能够提高第一存储分区与第二存储分区之间的数据传输的精确性和可靠性。
在另一个可选的实施例中,根据接收到的读取缓存指令及所述目标存储模块与所述缓存模块之间对应的映射关系,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块可以包括以下操作:
根据接收到的读取缓存指令,确定目标读取数据在目标存储模块中对应的第一存储分区;
根据目标读取数据对应的第一存储分区对应的映射关系,确定缓存模块中与目标读取数据对应的第一存储分区相匹配的第二存储分区;
将目标读取数据从第一存储分区传输至确定出的缓存模块中的第二存储分区;
根据所述目标存储模块与所述缓存模块之间对应的映射关系,将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块可以包括以下操作:
确定目标写入数据在缓存模块中对应的第二存储分区;
根据目标写入数据对应的第二存储分区对应的映射关系,确定目标存储模块中与目标写入数据对应的第二存储分区相匹配的第一存储分区;
将目标写入数据从第二存储分区传输至目标存储模块中的第一存储分区。
该可选的实施例中,可选的,读取缓存指令可以用于确定目标读取数据在目标存储模块中对应存储的第一存储分区,进一步的,可以根据第一存储分区对应的映射关系,确定缓存模块中与第一存储分区对应的第二存储分区,并将目标读取数据从第一存储分区传输至第二存储分区。
该可选的实施例中,可选的,目标写入数据在缓存模块中对应存储的第二存储分区可以通过目标写入请求确定,进一步的,根据第二存储分区对应的映射关系,确定目标存储模块中与第二存储分区对应的第一存储分区,并将目标写入数据从第二存储分区写入至第一存储分区。
可见,实施该可选的实施例能够通过映射关系将目标存储模块中存储的目标读取数据从第一存储分区传输至第二存储分区,且能够通过映射关系将缓存模块中存储的目标写入数据从第二存储分区写入至第一存储分区,能够提高第一存储分区与第二存储分区之间数据传输的效率和准确性。
在又一个可选的实施例中,预设参数条件包括目标写入数据写入到缓存模块中的数据量占所有需写入缓存模块的目标写入数据的总数据量的数据占比达到预设的第一占比阈值;和/或,目标写入数据写入到缓存模块中的数据量占缓存模块的数据存储容量的占比达到预设的第二占比阈值;和/或,目标写入数据写入缓存模块对应的数据写入用时大于预设的用时阈值。
该可选的实施例中,可选的,第一占比阈值和第二占比阈值可以相同,也可以不同,且第一占比阈值和第二占比阈值可以为20%,用时阈值可以为10分钟,进一步的,第一占比阈值、第二占比阈值以及用时阈值可以由用户通过外部终端进行设置。
可见,实施该可选的实施例能够根据预设的阈值判断是否需要将缓存模块中的数据传输至目标存储模块,能够保证用户无感的数据写入速度的提高,且最终仍然能够利用目标存储模块进行数据的存储。
在又一个可选的实施例中,当接收到针对目标写入数据的数据写入请求时,该数据读写的控制方法还可以包括以下操作:
判断目标写入数据的数据情况是否满足预设数据条件;
当目标写入数据的数据情况满足预设数据条件时,执行的将目标写入数据写入至缓存模块的操作;
当目标写入数据的数据情况不满足预设数据条件时,将目标写入数据写入至目标存储模块;
其中,目标写入数据的数据情况不满足预设数据条件包括目标写入数据的单文件数据量大于预设的数据量阈值,和/或针对目标写入数据的数据写入请求连续。
该可选的实施例中,可选的,目标写入数据的数据情况可以包括目标写入数据的单文件数据量。可选的,当目标写入数据的单文件数据量大于预设的数据量阈值,和/或,当针对目标写入数据的数据写入请求连续时,表示目标写入数据的数据情况不满足预设数据条件,即在单文件数据量较大(如大于30MB),或数据写入请求连续时(因请求不连续时该目标写入数据为碎片文件),将目标写入数据写入至目标存储模块。
可见,实施该可选的实施例能够判断目标写入数据的数据情况是否满足预设数据条件,进而确定将目标写入数据写入至目标存储模块或缓存模块,能够提高数据读写的智能化程度,并节省借助缓存模块进行缓存而产生的数据传输成本,提升用户使用体验。
在又一个可选的实施例中,数据读取请求包括目标读取数据对应的哈希表征值;
在接收到针对目标读取数据的数据读取请求之后,该数据读写的控制方法还可以包括以下操作:
根据目标读取数据对应的哈希表征值,确定目标存储模块中用于存储目标读取数据的目标第一存储分区;
根据目标第一存储分区对应的映射关系,确定缓存模块中与目标第一存储分区对应的目标第二存储分区,并判断目标第二存储分区中是否存在目标读取数据;
当目标第二存储分区中存在目标读取数据时,执行的从缓存模块中读取目标读取数据的操作;
当目标第二存储分区中不存在目标读取数据时,从目标第一存储分区中读取目标读取数据,并将目标读取数据从目标第一存储分区传输至目标第二存储分区。
该可选的实施例中,可选的,数据读取请求包括目标读取数据对应哈希表征值,通过哈希表征值,确定目标存储数据在目标存储模块中的存储位置,即相对应的第一存储分区,根据第一存储分区对应的映射关系,确定第一存储分区对应的第二存储分区,并判断第二存储分区中是否存储有目标读取数据。
该可选的实施例中,可选的,第二存储分区中不存在目标读取数据可以表现为第二存储分区为空或第二存储分区存储有其他数据。
可见,实施该可选的实施例能够在接收到数据读取请求后判断缓存模块中是否已预先缓存有目标读取数据,并在没有时直接在目标缓存模块中读取目标读取数据以保证数据传输服务的正常进行,并将目标读取数据传输至缓存模块进行备份,以保证在后续的数据读取操作中,能够直接从缓存模块进行数据读写,提高读写性能,也提升用户使用体验。
在又一个可选的实施例中,该数据读写的控制方法还可以包括以下操作:
在接收到针对缓存模块触发的映射关系移除请求时,根据移除请求,确定需要被移除的目标映射关系;
根据每个目标映射关系,将每个目标映射关系对应的第一存储分区中存储的数据传输至对应的第二存储分区;
删除每个目标映射关系,并回收缓存模块中针对目标映射关系对应的数据写入请求和数据读取请求的记录信息。
该可选的实施例中,可选的,映射关系移除请求中可以包括需要被移除的所有映射关系对应的哈希表征值,且一个映射关系移除请求可以对所有的映射关系进行移除,也可以对部门映射关系进行移除,本实施例不做限定。
该可选的实施例中,可选的,通过每个目标映射关系,将第二存储分区中存储的所有数据传输至对应的第一存储分区,且在传输完成后,删除每个目标映射关系,记录信息包括缓存模块中针对数据写入请求的记录信息以及针对数据读取请求的记录信息,进一步的,记录信息可以包括每次数据读写对应的时间戳、数据传输总量、文件数量中的一种或多种,本实施例不做限定。
可见,实施该可选的实施例能够根据接收到的映射关系移除请求,对缓存模块和目标存储模块之间的映射关系进行部分或全部移除,能够支持用户动态调整用于缓存的存储大小,进而提升数据读写的灵活性,提高用户使用体验。
实施例二
请参阅图2,图2是本发明实施例公开的一种数据读写的控制装置的结构示意图。其中,图2所描述的数据读写的控制装置可以应用于数据存储系统中,也可以应用于其他数据存储终端、数据存储设备或数据存储服务器中,其中,数据存储系统可以包括缓存模块以及目标存储模块,缓存模块与目标存储模块之间电连接,本发明实施例不做限定。如图2所示,该数据读写的控制装置可以包括:
传输模块201,用于根据接收到的读取缓存指令,将目标存储模块中存储的目标读取数据传输至缓存模块,缓存模块的数据读写速度高于目标存储模块的数据读写速度;
读取模块202,用于当接收到针对目标读取数据的数据读取请求时,从缓存模块中读取目标读取数据;
第一写入模块203,用于当接收到针对目标写入数据的数据写入请求时,将目标写入数据写入至缓存模块;
判断模块204,用于判断写入操作对应的操作参数是否满足预设参数条件,写入操作为将目标写入数据写入至缓存模块的操作;
第一写入模块203,还用于当写入操作对应的操作参数满足预设参数条件时,将缓存模块中存储的目标写入数据写入至目标存储模块。
本发明实施例中,可选的,判断模块可以为参数判断硬件电路,该参数判断硬件电路可以为预先编写有数据判断控制逻辑的FPGA(Field Programmable Gate Arrays,现场可编程门阵列)电路,也可以为预先编写有数据判断控制程序代码的单片机芯片及外围控制电路,该单片机芯片可以为ARM系列芯片或STM系列芯片,本发明不做限定。
本发明实施例中,可选的,判断模块可以为一判断电路,该判断电路包括有计数器电路和比较器电路,其中,该计数器电路电连接至缓存模块和该比较器电路,该计数器电路用于在接收到缓存模块执行接收该目标写入数据的写入操作的启动信号时开始计数以得到该操作参数对应的计数值,可选的,该计数器电路可以用于对数据传输量进行计数或传输时间进行计数,例如其可以为型号为74192TTL的计数器芯片及其外围电路。其中,该比较器电路与缓存模块电连接,用于将该操作参数对应的计数值转化为参数电压,并将该参数电压与基准电压进行比较,并在该参数电压大于该基准电压时发送触发信号至缓存模块,以将目标写入数据写入至目标存储模块,其中该基准电压为预先设定的该参数条件对应的电压值。可选的,该比较器电路可以包括有数值比较器芯片及其外围电路。可选的,该判断电路包括有设置有执行代码的芯片,具体的,该芯片为STM32系列芯片。
本发明实施例中,可选的,操作参数可以包括已写入数据量和/或数据写入用时,其中,已写入数据量为目标写入数据中已写入缓存模块的数据量,这一参数可以由判断模块与缓存模块通信获得。其中,数据写入用时为写入操作的用时长度,其可由判断模块通过执行写入操作开始时的电位信号作为开始计时信号,并通过计时器电路进行时间计算得到。
可见,实施图2所描述的数据读写的控制装置能够根据接收到的读取缓存指令,将目标存储模块中存储的目标读取数据传输至缓存模块,当接收到针对目标读取数据的数据读取请求时,从缓存模块中读取目标读取数据,当接收到针对目标写入数据的数据写入请求时,将目标写入数据写入至缓存模块,能够通过使用数据读写速度更快的缓存模块作为目标存储模块在读写数据时的缓存空间,以提高数据读写的效率,判断写入操作对应的操作参数是否满足预设参数条件,当写入操作对应的操作参数满足预设参数条件时,将缓存模块中存储的目标写入数据写入至目标存储模块,在保证写入到缓存模块的数据正常写入到目标存储模块的同时提高了数据读写的效率,实现用户无感知的数据加速写入,提升用户使用体验。
在一个可选的实施例中,如图3所示,该数据读写的控制装置还可以包括:
分区模块205,用于分别对目标存储模块和缓存模块进行存储分区,得到目标存储模块对应的多个第一存储分区和缓存模块对应的多个第二存储分区;
编号模块206,用于对目标存储模块的每个第一存储分区设置编号,并对每个第一存储分区的编号进行哈希计算,得到每个第一存储分区对应的哈希表征值;
映射模块207,用于对于任一第一存储分区,根据第一存储分区对应的哈希表征值,建立第一存储分区与所有第二存储分区中的其中一个第二存储分区之间的映射关系,映射关系用于表示第一存储分区与第二存储分区之间的一一对应关系,其中,每个第一存储分区对应不同的第二存储分区;
其中,所述传输模块201根据接收到的读取缓存指令,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块的具体方式包括:
根据接收到的读取缓存指令及所述目标存储模块与所述缓存模块之间对应的映射关系,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块;
所述第一写入模块203将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块的方式具体包括:
根据所述目标存储模块与所述缓存模块之间对应的映射关系,将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块。
该可选的实施例中,可选的,映射模块可以为参数判断硬件电路,该参数判断硬件电路可以为预先编写有数据计算逻辑的FPGA(Field Programmable Gate Arrays,现场可编程门阵列)电路,也可以为预先编写有数据计算程序代码的单片机芯片及外围控制电路,该单片机芯片可以为ARM系列芯片或STM系列芯片,本发明不做限定。
可见,实施图3所描述的数据读写的控制装置能够分别对目标存储模块和缓存模块进行存储分区,得到目标存储模块对应的多个第一存储分区和缓存模块对应的多个第二存储分区,通过对每个第一存储分区的编号进行哈希计算,得到每个第一存储分区的哈希表征值,进而得到每个第一存储分区与对应的第二存储分区之间的映射关系,能够提高第一存储分区与第二存储分区之间的数据传输的精确性和可靠性。
在另一个可选的实施例中,如图3所示,传输模块201根据接收到的读取缓存指令及所述目标存储模块与所述缓存模块之间对应的映射关系,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块的具体方式包括:
根据接收到的读取缓存指令,确定目标读取数据在目标存储模块中对应的第一存储分区;
根据目标读取数据对应的第一存储分区对应的映射关系,确定缓存模块中与目标读取数据对应的第一存储分区相匹配的第二存储分区;
将目标读取数据从第一存储分区传输至缓存模块中的第二存储分区;
第一写入模块203根据所述目标存储模块与所述缓存模块之间对应的映射关系,将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块的具体方式包括:
确定目标写入数据在缓存模块中对应的第二存储分区;
根据目标写入数据对应的第二存储分区对应的映射关系,确定目标存储模块中与目标写入数据对应的第二存储分区相匹配的第一存储分区;
将目标写入数据从第二存储分区传输至目标存储模块中的第一存储分区。
可见,实施图3所描述的数据读写的控制装置能够通过映射关系将目标存储模块中存储的目标读取数据从第一存储分区传输至第二存储分区,且能够通过映射关系将缓存模块中存储的目标写入数据从第二存储分区写入至第一存储分区,能够提高第一存储分区与第二存储分区之间数据传输的效率和准确性。
在又一个可选的实施例中,如图3所示,预设参数条件包括目标写入数据写入到缓存模块中的数据量占所有需写入缓存模块的目标写入数据的总数据量的数据占比达到预设的第一占比阈值;和/或,目标写入数据写入到缓存模块中的数据量占缓存模块的数据存储容量的占比达到预设的第二占比阈值;和/或,目标写入数据写入缓存模块对应的数据写入用时大于预设的用时阈值。
可见,实施图3所描述的数据读写的控制装置能够根据预设的阈值判断是否需要将缓存模块中的数据传输至目标存储模块,能够保证用户无感的数据写入速度的提高,且最终仍然能够利用目标存储模块进行数据的存储。
在又一个可选的实施例中,如图3所示,该数据读写的控制装置还可以包括:
判断模块204,还用于当接收到针对目标写入数据的数据写入请求时,判断目标写入数据的数据情况是否满足预设数据条件;当目标写入数据的数据情况满足预设数据条件时,触发执行上述的将目标写入数据写入至缓存模块的操作;
第二写入模块208,用于当目标写入数据的数据情况不满足预设数据条件时,将目标写入数据写入至目标存储模块;
其中,目标写入数据的数据情况不满足预设数据条件包括目标写入数据的单文件数据量大于预设的数据量阈值,和/或针对目标写入数据的数据写入请求连续。
该可选的实施例中,可选的,判断模块可以为参数判断硬件电路,该参数判断硬件电路可以为预先编写有数据判断控制逻辑的FPGA(Field Programmable Gate Arrays,现场可编程门阵列)电路,也可以为预先编写有数据判断控制程序代码的单片机芯片及外围控制电路,该单片机芯片可以为ARM系列芯片或STM系列芯片,本发明不做限定。
可见,实施图3所描述的数据读写的控制装置能够判断目标写入数据的数据情况是否满足预设数据条件,进而确定将目标写入数据写入至目标存储模块或缓存模块,能够提高数据读写的智能化程度,并节省借助缓存模块进行缓存而产生的数据传输成本,提升用户使用体验。
在又一个可选的实施例中,如图3所示,数据读取请求包括目标读取数据对应的哈希表征值;
该数据读写的控制装置还可以包括:
第一确定模块209,用于在读取模块202接收到针对目标读取数据的数据读取请求之后,根据目标读取数据对应的哈希表征值,确定目标存储模块中用于存储目标读取数据的目标第一存储分区;
第一确定模块209,还用于根据目标第一存储分区对应的映射关系,确定缓存模块中与目标第一存储分区对应的目标第二存储分区,并判断目标第二存储分区中是否存在目标读取数据;当目标第二存储分区中存在目标读取数据时,触发读取模块202执行从缓存模块中读取目标读取数据的操作;
读取模块202,还用于当目标第二存储分区中不存在目标读取数据时,从目标第一存储分区中读取目标读取数据,并将目标读取数据从目标第一存储分区传输至目标第二存储分区。
该可选的实施例中,可选的,第一确定模块可以为参数判断硬件电路,该参数判断硬件电路可以为预先编写有数据判断控制逻辑的FPGA(Field Programmable GateArrays,现场可编程门阵列)电路,也可以为预先编写有数据判断控制程序代码的单片机芯片及外围控制电路,该单片机芯片可以为ARM系列芯片或STM系列芯片,本发明不做限定。
可见,实施图3所描述的数据读写的控制装置能够在接收到数据读取请求后判断缓存模块中是否已预先缓存有目标读取数据,并在没有时直接在目标缓存模块中读取目标读取数据以保证数据传输服务的正常进行,并将目标读取数据传输至缓存模块进行备份,以保证在后续的数据读取操作中,能够直接从缓存模块进行数据读写,提高读写性能,也提升用户使用体验。
在又一个可选的实施例中,如图3所示,该数据读写的控制装置还可以包括:
第二确定模块210,用于在接收到针对缓存模块触发的映射关系移除请求时,根据移除请求,确定需要被移除的目标映射关系;
传输模块201,还用于根据每个目标映射关系,将每个目标映射关系对应的第二存储分区中存储的数据传输至对应的第一存储分区;
删除模块211,用于删除每个目标映射关系,并回收缓存模块中针对目标映射关系对应的数据写入请求和数据读取请求的记录信息。
可见,实施图3所描述的数据读写的控制装置能够根据接收到的映射关系移除请求,对缓存模块和目标存储模块之间的映射关系进行部分或全部移除,能够支持用户动态调整用于缓存的存储大小,进而提升数据读写的灵活性,提高用户使用体验。
实施例三
本发明实施例公开了一种NAS(Network Attached Storage,网络附属存储)设备,该NAS设备包括数据存储系统,数据存储系统包括缓存模块以及目标存储模块,该数据存储系统可以由实施例二所描述的数据读写的控制装置所控制,以执行实施例一所描述的数据读写的控制方法。
可选的,该NAS设备还可以包括有内置有操作系统的数据读写的控制装置。优选的,该控制装置设置有服务器分配的私用IP地址,且可以通过有线网卡或无线通信连接至路由器,以实现用户的私有云存储方案。
实施例四
请参阅图4,图四是本发明实施例公开的一种NAS设备控制系统的结构示意图。如图4所示,该NAS设备控制系统包括NAS设备和电子设备,NAS设备通信连接至电子设备,NAS设备包括数据读写的控制装置以及数据存储系统。
可选的,电子设备可以为手机终端、电脑终端或服务器终端,其可以通过有线连接或无线连接与NAS设备进行通信连接,本发明不做限定。
实施例五
请参阅图5,图5是本发明实施例公开的又一种数据读写的控制装置的结构示意图。如图5所示,该数据读写的控制装置可以包括:
存储有可执行程序代码的存储器301;
与存储器301耦合的处理器302;
处理器302调用存储器301中存储的可执行程序代码,执行本发明实施例一所描述的数据读写的控制方法中的步骤。
实施例六
本发明实施例公开了一种计算机存储介质,该计算机存储介质存储有计算机指令,该计算机指令被调用时,用于执行本发明实施例一所描述的数据读写的控制方法中的步骤。
实施例七
本发明实施例公开了一种计算机程序产品,该计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,且该计算机程序可操作来使计算机执行实施例一中所描述的数据读写的控制方法中的步骤。
以上所描述的装置实施例仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施例的具体描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(ErasableProgrammable Read Only Memory,EPROM)、一次可编程只读存储器(One-timeProgrammable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
最后应说明的是:本发明实施例公开的一种数据读写的控制方法及装置所揭露的仅为本发明较佳实施例而已,仅用于说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各项实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或替换,并不使相应的技术方案的本质脱离本发明各项实施例技术方案的精神和范围。
Claims (11)
1.一种数据读写的控制方法,其特征在于,所述方法应用于数据存储系统中,所述数据存储系统包括缓存模块以及目标存储模块,所述缓存模块与所述目标存储模块电连接,所述方法包括:
根据接收到的读取缓存指令,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块,所述缓存模块的数据读写速度高于所述目标存储模块的数据读写速度;
当接收到针对所述目标读取数据的数据读取请求时,从所述缓存模块中读取所述目标读取数据;
当接收到针对目标写入数据的数据写入请求时,将所述目标写入数据写入至所述缓存模块,并判断写入操作对应的操作参数是否满足预设参数条件,所述写入操作为所述将所述目标写入数据写入至所述缓存模块的操作;
当所述写入操作对应的操作参数满足预设参数条件时,将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块。
2.根据权利要求1所述的数据读写的控制方法,其特征在于,所述方法还包括:
分别对所述目标存储模块和所述缓存模块进行存储分区,得到所述目标存储模块对应的多个第一存储分区和所述缓存模块对应的多个第二存储分区;
对所述目标存储模块的每个所述第一存储分区设置编号,并对每个所述第一存储分区的编号进行哈希计算,得到每个所述第一存储分区对应的哈希表征值;
对于任一所述第一存储分区,根据所述第一存储分区对应的哈希表征值,建立所述第一存储分区与所有所述第二存储分区中的其中一个第二存储分区之间的映射关系,所述映射关系用于表示所述第一存储分区与所述第二存储分区之间的一一对应关系,其中,每个第一存储分区对应不同的第二存储分区;
其中,所述根据接收到的读取缓存指令,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块,包括:
根据接收到的读取缓存指令及所述目标存储模块与所述缓存模块之间对应的映射关系,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块;
所述将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块,包括:
根据所述目标存储模块与所述缓存模块之间对应的映射关系,将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块。
3.根据权利要求2所述的数据读写的控制方法,其特征在于,所述根据接收到的读取缓存指令及所述目标存储模块与所述缓存模块之间对应的映射关系,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块,包括:
根据接收到的读取缓存指令,确定所述目标读取数据在所述目标存储模块中对应的第一存储分区;
根据所述目标读取数据对应的第一存储分区对应的映射关系,确定所述缓存模块中与所述目标读取数据对应的第一存储分区相匹配的第二存储分区;
将所述目标读取数据从所述第一存储分区传输至确定出的所述缓存模块中的第二存储分区;
所述根据所述目标存储模块与所述缓存模块之间对应的映射关系,将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块,包括:
确定所述目标写入数据在所述缓存模块中对应的第二存储分区;
根据所述目标写入数据对应的所述第二存储分区对应的映射关系,确定所述目标存储模块中与所述目标写入数据对应的所述第二存储分区相匹配的第一存储分区;
将所述目标写入数据从所述第二存储分区写入至所述目标存储模块中的第一存储分区。
4.根据权利要求1-3任一项所述的数据读写的控制方法,其特征在于,所述预设参数条件包括所述目标写入数据写入到所述缓存模块中的数据量占所有需写入所述缓存模块的所述目标写入数据的总数据量的数据占比达到预设的第一占比阈值;
和/或,所述目标写入数据写入到所述缓存模块中的数据量占所述缓存模块的数据存储容量的占比达到预设的第二占比阈值;
和/或,所述目标写入数据写入所述缓存模块对应的数据写入用时大于预设的用时阈值。
5.根据权利要求1-3任一项所述的数据读写的控制方法,其特征在于,当接收到针对目标写入数据的数据写入请求时,所述方法还包括:
判断所述目标写入数据的数据情况是否满足预设数据条件;
当所述目标写入数据的数据情况不满足预设数据条件时,将所述目标写入数据写入至所述目标存储模块;
其中,所述目标写入数据的数据情况不满足预设数据条件包括所述目标写入数据的单文件数据量大于预设的数据量阈值,和/或针对所述目标写入数据的数据写入请求连续。
6.根据权利要求2或3所述的数据读写的控制方法,其特征在于,所述数据读取请求包括所述目标读取数据对应的哈希表征值;
在所述接收到针对所述目标读取数据的数据读取请求之后,所述方法还包括:
根据所述目标读取数据对应的哈希表征值,确定所述目标存储模块中用于存储所述目标读取数据的目标第一存储分区;
根据所述目标第一存储分区对应的映射关系,确定所述缓存模块中与所述目标第一存储分区对应的目标第二存储分区,并判断所述目标第二存储分区中是否存在所述目标读取数据;
当所述目标第二存储分区中存在所述目标读取数据时,执行所述的从所述缓存模块中读取所述目标读取数据的操作;
当所述目标第二存储分区中不存在所述目标读取数据时,从所述目标第一存储分区中读取所述目标读取数据,并将所述目标读取数据从所述目标第一存储分区传输至所述目标第二存储分区。
7.一种数据读写的控制装置,其特征在于,所述数据读写的控制装置应用于数据存储系统中,所述数据存储系统包括缓存模块以及目标存储模块,所述缓存模块与所述目标存储模块电连接,所述装置包括:
传输模块,用于根据接收到的读取缓存指令,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块,所述缓存模块的数据读写速度高于所述目标存储模块的数据读写速度;
读取模块,用于当接收到针对所述目标读取数据的数据读取请求时,从所述缓存模块中读取所述目标读取数据;
第一写入模块,用于当接收到针对目标写入数据的数据写入请求时,将所述目标写入数据写入至所述缓存模块;
判断模块,用于判断写入操作对应的操作参数是否满足预设参数条件,所述写入操作为所述将所述目标写入数据写入至所述缓存模块的操作;
所述第一写入模块,还用于当所述写入操作对应的操作参数满足预设参数条件时,将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块。
8.根据权利要求7所述的数据读写的控制装置,其特征在于,所述装置还包括:
分区模块,用于分别对所述目标存储模块和所述缓存模块进行存储分区,得到所述目标存储模块对应的多个第一存储分区和所述缓存模块对应的多个第二存储分区;
编号模块,用于对所述目标存储模块的每个所述第一存储分区设置编号,并对每个所述第一存储分区的编号进行哈希计算,得到每个所述第一存储分区对应的哈希表征值;
映射模块,用于对于任一所述第一存储分区,根据所述第一存储分区对应的哈希表征值,建立所述第一存储分区与所有所述第二存储分区中的其中一个第二存储分区之间的映射关系,所述映射关系用于表示所述第一存储分区与所述第二存储分区之间的一一对应关系,其中,每个第一存储分区对应不同的第二存储分区;
其中,所述传输模块根据接收到的读取缓存指令,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块的方式具体包括:
根据接收到的读取缓存指令及所述目标存储模块与所述缓存模块之间对应的映射关系,将所述目标存储模块中存储的目标读取数据传输至所述缓存模块;
所述第一写入模块将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块的方式具体包括:
根据所述目标存储模块与所述缓存模块之间对应的映射关系,将所述缓存模块中存储的所述目标写入数据写入至所述目标存储模块。
9.一种NAS设备,其特征在于,所述NAS设备包括数据存储系统,所述数据存储系统包括缓存模块以及目标存储模块,所述数据存储系统用于执行如权利要求1-6任一项所述的数据读写的控制方法。
10.一种NAS设备控制系统,其特征在于,所述NAS设备控制系统包括NAS设备和电子设备,所述NAS设备通信连接至所述电子设备,所述NAS设备用于执行如权利要求1-6任一项所述的数据读写的控制方法。
11.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行如权利要求1-6任一项所述的数据读写的控制方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202222156511 | 2022-08-16 | ||
CN2022221565115 | 2022-08-16 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117590999A true CN117590999A (zh) | 2024-02-23 |
Family
ID=89917129
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310440004.0A Pending CN117590999A (zh) | 2022-08-16 | 2023-04-14 | 数据读写的控制方法、装置、nas设备以及nas设备控制系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117590999A (zh) |
-
2023
- 2023-04-14 CN CN202310440004.0A patent/CN117590999A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11061620B2 (en) | Bandwidth limiting in solid state drives | |
US10714141B2 (en) | Method for accessing shingled magnetic recording SMR disk, and server | |
CN109791522B (zh) | 数据迁移的方法、系统及智能网卡 | |
CN111107050B (zh) | 一种配电网动模系统的分布式录波方法及装置 | |
EP3951582A1 (en) | Offloading device management responsibilities from a storage device in an array of storage devices | |
CN112954244A (zh) | 监控录像的存储实现方法、装置、设备及存储介质 | |
CN111352899A (zh) | 路径聚合方法、访问方法及通信设备、存储介质 | |
CN117472285A (zh) | 固态硬盘用智能运行加速方法、计算机设备及存储介质 | |
CN113377278A (zh) | 固态硬盘、垃圾回收及控制方法、设备、系统及存储介质 | |
CN117590999A (zh) | 数据读写的控制方法、装置、nas设备以及nas设备控制系统 | |
CN218631411U (zh) | 一种校验写入状态的固态存储器 | |
CN114428764B (zh) | 文件写入方法、系统、电子设备及可读存储介质 | |
CN115599299A (zh) | 一种存储桶管理方法、装置及电子设备和存储介质 | |
CN111581127B (zh) | 映射关系处理方法及装置 | |
CN115904888A (zh) | 一种告警方法、计算设备及存储介质 | |
US11256635B2 (en) | Optical module link negotiation information obtaining method, device, and system | |
US8487777B2 (en) | Semiconductor storage apparatus and early-warning systems and methods for the same | |
CN108762679B (zh) | 一种在线ddp与离线ddp相结合的方法及其相关装置 | |
CN113986134B (zh) | 存储数据的方法、读取数据的方法和装置 | |
CN112965669B (zh) | 一种数据存储系统及方法 | |
US11372714B2 (en) | System and method for performing erasure coding in a distributed storage system | |
CN113330411B (zh) | 一种存储控制器和数据搬迁监测方法 | |
CN113568939B (zh) | 能耗监控方法、装置、服务器及计算机可读存储介质 | |
CN118210451A (zh) | 采集终端的日志存储方法、装置、系统和存储介质 | |
CN115525228A (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 |