CN109491616B - 数据的存储方法和设备 - Google Patents
数据的存储方法和设备 Download PDFInfo
- Publication number
- CN109491616B CN109491616B CN201811354988.6A CN201811354988A CN109491616B CN 109491616 B CN109491616 B CN 109491616B CN 201811354988 A CN201811354988 A CN 201811354988A CN 109491616 B CN109491616 B CN 109491616B
- Authority
- CN
- China
- Prior art keywords
- read
- time period
- logic block
- data information
- next time
- 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
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/409—Read-write [R-W] circuits
-
- 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
- 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- 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
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- 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/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- 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
-
- 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/0653—Monitoring storage devices or 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- 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/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- 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
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)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种数据的存储方法和设备,该存储方法包括:获取存储设备的各个逻辑区块在当前时刻之前的预定数量的历史时段的读写数据信息,根据各个逻辑区块在当前时刻之前的预定数量的历史时段的读写数据信息以及数据预测模型预测各个逻辑区块在下一时段的读写数据信息;根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域;在所述下一时段,当接收到写入请求时,将写入请求对应的数据写入到写入请求对应的逻辑区块在所述下一时段的物理存储区域。根据本发明,能够延长存储设备的使用寿命,提升读写性能,从而降低整体的TCO。
Description
技术领域
本发明涉及数据存储领域,更具体地讲,涉及一种数据的存储方法和设备。
背景技术
目前针对SSD(Solid State Drives,固态硬盘)的存储技术主要包括两种:分层存储技术(Storage Tiering)和多流(Multi-Stream)存储技术。
分层存储技术提供了一种HDD(Hard Disk Drive,机械硬盘)和SSD混合使用的解决方案,其根据对读写数据进行简单的冷热分类来实现数据在不同性能存储介质的存放。分层存储技术针对数据冷热做的分类比较简单,是一种静态通用方法。
多流存储技术通过为数据请求指定流地址(Stream ID)的方式来控制数据在SSD内部的写入位置。多流存储技术在文件级别进行流地址的分配,通过修改应用源码直接为文件分配流地址,或通过定制策略为不同的文件分配流地址,分配策略需要根据负载特性来手工定制,不能到达自适应目的。
因此,现有的针对SSD的存储技术存储成本较高,影响SSD的使用寿命。
发明内容
本发明的目的在于提供一种数据的存储方法和设备,以解决现有的SSD的存储技术存储成本较高,影响SSD的使用寿命的技术问题。
本发明的一方面提供一种数据的存储方法,该存储方法包括:获取存储设备的各个逻辑区块在当前时刻之前的预定数量的历史时段的读写数据信息;根据各个逻辑区块在当前时刻之前的预定数量的历史时段的读写数据信息以及数据预测模型预测各个逻辑区块在下一时段的读写数据信息,其中,所述数据预测模型指示各个逻辑区块在下一时段的读写数据信息与各个逻辑区块在当前时刻之前的预定数量的历史时段的读写数据信息之间的对应关系;根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域;在所述下一时段,当接收到写入请求时,将写入请求对应的数据写入到写入请求对应的逻辑区块在所述下一时段的物理存储区域。
可选地,该存储方法还包括:获取存储设备的各个逻辑区块在各个历史时段的读写数据信息;根据各个逻辑区块在各个历史时段的读写数据信息训练数据预测模型,其中,在训练过程中,将各个逻辑区块在第N个历史时段之前的预定数量的历史时段的读写数据信息作为数据预测模型的输入,将各个逻辑区块在第N个历史时段的读写数据信息作为数据预测模型的输出的目标值,N∈[预定数量与1的和,历史时段的总个数]。
可选地,每个逻辑区块在各个历史时段的读写数据信息包括:每个逻辑区块在各个历史时段的读写次数、每个逻辑区块在各个历史时段的每次读写的数据的大小以及以下项中的至少零个:每个逻辑区域在各个历史时段的读写比例、每个逻辑区域在各个历史时段的顺序读写请求的扇区数、存储设备在各个历史时段的带宽、存储设备在各个历史时段的读写偏度。
可选地,该存储方法还包括:对各个逻辑区块在各个历史时段的读写数据信息进行聚类,得到各个类的聚类中心,其中,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域的步骤包括:根据预测的各个逻辑区块在所述下一时段的读写数据信息以及各个类的聚类中心,确定各个逻辑区块在所述下一时段的物理存储区域。
可选地,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域的步骤包括:根据预测的各个逻辑区块在所述下一时段的读写数据信息以及各个类的聚类中心确定预测的各个逻辑区块在所述下一时段的读写数据信息所属的类;根据预测的各个逻辑区块在所述下一时段的读写数据信息所属的类确定各个逻辑区块在所述下一时段的物理存储区域。
可选地,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息所属的类确定各个逻辑区块在所述下一时段的物理存储区域的步骤包括:根据所述各个类与物理存储区域之间的对应关系以及预测的各个逻辑区块在所述下一时段的读写数据信息所属的类,确定各个逻辑区块在所述下一时段的物理存储区域。
可选地,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域的步骤包括:根据各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的冷热值;根据各个逻辑区块在所述下一时段的冷热值以及预先存储的物理存储区域与冷热值的对应关系,确定各个逻辑区块在所述下一时段的物理存储区域。
可选地,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域的步骤包括:对各个逻辑区块在所述下一时段的读写数据信息进行聚类,得到多个簇;对所述多个簇中的各个簇进行排序,得到各个簇的序号;根据各个簇的序号以及预先定义的各个物理存储区域的序号确定各个逻辑区块在所述下一时段的物理存储区域,其中,针对任意一个逻辑区块,通过以下方式确定所述任意一个逻辑区块在所述下一时段的物理存储区域:确定所述任意一个逻辑区块在所述下一时段的读写数据信息所属的簇的第一序号,将序号与所述第一序号相同的物理存储区域确定为任意一个逻辑区块在所述下一时段的物理存储区域。
可选地,所述物理存储区域指示以下项中的任意一个:同一固态硬盘中的多个存储区域中的一个存储区域、同一服务器中的多个固态硬盘中的一个固态硬盘以及同一集群中的多个服务器中的一个服务器。
可选地,所述存储方法还包括:在所述下一时段结束时,根据各个逻辑区块在所述下一时段的实际的读写数据信息更新所述数据预测模型。
可选地,所述存储方法还包括:在所述下一时段结束时,根据各个逻辑区块在所述下一时段的实际的读写数据信息更新所述聚类中心。
本发明的另一方面提供一种数据的存储设备,该存储设备包括处理器,其中,所述处理器被配置为:获取存储设备的各个逻辑区块在当前时刻之前的预定数量的历史时段的读写数据信息;根据各个逻辑区块在当前时刻之前的预定数量的历史时段的读写数据信息以及数据预测模型预测各个逻辑区块在下一时段的读写数据信息,其中,所述数据预测模型指示各个逻辑区块在下一时段的读写数据信息与各个逻辑区块在当前时刻之前的预定数量的历史时段的读写数据信息之间的对应关系;根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域;在所述下一时段,当接收到写入请求时,将写入请求对应的数据写入到写入请求对应的逻辑区块在所述下一时段的物理存储区域。
可选地,所述处理器还被配置为:获取存储设备的各个逻辑区块在各个历史时段的读写数据信息;根据各个逻辑区块在各个历史时段的读写数据信息训练数据预测模型,其中,在训练过程中,将各个逻辑区块在第N个历史时段之前的预定数量的历史时段的读写数据信息作为数据预测模型的输入,将各个逻辑区块在第N个历史时段的读写数据信息作为数据预测模型的输出的目标值,N∈[预定数量与1的和,历史时段的总个数]。
可选地,每个逻辑区块在各个历史时段的读写数据信息包括:每个逻辑区块在各个历史时段的读写次数、每个逻辑区块在各个历史时段的每次读写的数据的大小以及以下项中的至少零个:每个逻辑区域在各个历史时段的读写比例、每个逻辑区域在各个历史时段的顺序读写请求的扇区数、存储设备在各个历史时段的带宽、存储设备在各个历史时段的读写偏度。
可选地,所述处理器还被配置为:对各个逻辑区块在各个历史时段的读写数据信息进行聚类,得到各个类的聚类中心,其中,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域的处理包括:根据预测的各个逻辑区块在所述下一时段的读写数据信息以及各个类的聚类中心,确定各个逻辑区块在所述下一时段的物理存储区域。
可选地,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域的处理包括:根据预测的各个逻辑区块在所述下一时段的读写数据信息以及各个类的聚类中心确定预测的各个逻辑区块在所述下一时段的读写数据信息所属的类;根据预测的各个逻辑区块在所述下一时段的读写数据信息所属的类确定各个逻辑区块在所述下一时段的物理存储区域。
可选地,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息所属的类确定各个逻辑区块在所述下一时段的物理存储区域的处理包括:根据所述各个类与物理存储区域之间的对应关系以及预测的各个逻辑区块在所述下一时段的读写数据信息所属的类,确定各个逻辑区块在所述下一时段的物理存储区域。
可选地,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域的处理包括:根据各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的冷热值;根据各个逻辑区块在所述下一时段的冷热值以及预先存储的物理存储区域与冷热值的对应关系,确定各个逻辑区块在所述下一时段的物理存储区域。
可选地,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域的处理包括:对各个逻辑区块在所述下一时段的读写数据信息进行聚类,得到多个簇;对所述多个簇中的各个簇进行排序,得到各个簇的序号;根据各个簇的序号以及预先定义的各个物理存储区域的序号确定各个逻辑区块在所述下一时段的物理存储区域,其中,针对任意一个逻辑区块,通过以下方式确定所述任意一个逻辑区块在所述下一时段的物理存储区域:确定所述任意一个逻辑区块在所述下一时段的读写数据信息所属的簇的第一序号,将序号与所述第一序号相同的物理存储区域确定为任意一个逻辑区块在所述下一时段的物理存储区域。
可选地,所述物理存储区域指示以下项中的任意一个:同一固态硬盘中的多个存储区域中的一个存储区域、同一服务器中的多个固态硬盘中的一个固态硬盘以及同一集群中的多个服务器中的一个服务器。
可选地,所述处理器还被配置为:在所述下一时段结束时,根据各个逻辑区块在所述下一时段的实际的读写数据信息更新所述数据预测模型。
可选地,所述处理器还被配置为:在所述下一时段结束时,根据各个逻辑区块在所述下一时段的实际的读写数据信息更新所述聚类中心。
本发明的另一方面还提供一种计算机可读存储介质,该计算机可读存储介质存储有当被处理器执行时使得处理器执行如上所述的数据的存储方法的计算机程序。
在根据本发明的数据的存储方法和设备中,通过数据预测模型预测未来时段的工作负载(即读写数据信息),并根据未来时段的工作负载来确定未来时段的物理存储区域,可根据对工作负载变化的预测来动态调整存储策略,以便在达到较好的优化效果的同时,能够在程序最小变动的情况下自适应的适配上层业务的变化,能够延长存储设备(例如SSD)的使用寿命,提升读写性能,从而降低整体的TCO(Total cost of ownership,总拥有成本)。
此外,根据本发明的数据的存储方法和设备预测的读写数据信息能够反映工作负载的重要指标的变化情况,比如工作负载的冷热程度(读写次数)。
此外,在根据本发明的数据的存储方法和设备中,数据预测模型和读写数据信息的聚类中心均基于机器学习的方式在不断地更新,其预测效果和分类效果将不断地优化。
将在接下来的描述中部分阐述本发明另外的方面和/或优点,还有一部分通过描述将是清楚的,或者可以经过本发明的实施而得知。
附图说明
通过下面结合附图进行的详细描述,本发明的上述和其它目的、特点和优点将会变得更加清楚,其中:
图1是示出根据本发明的实施例的数据的存储方法的流程图。
具体实施方式
下面参照附图详细描述本发明的实施例。
图1是示出根据本发明的实施例的数据的存储方法的流程图。
在步骤S10,获取存储设备的各个逻辑区块在当前时刻之前的预定数量的历史时段的读写数据信息。
该存储设备可以是一个固态硬盘,也可以是包括多个固态硬盘的一个服务器,还可以是包括多个服务器的一个集群。
该逻辑区块(chunk)是指存储设备的可用存储空间中的一段连续逻辑地址所在的区域。
作为示例,每个逻辑区块在各个历史时段的读写数据信息包括:每个逻辑区块在各个历史时段的读写次数、每个逻辑区块在各个历史时段的每次读写的数据的大小以及以下项中的至少零个:每个逻辑区域在各个历史时段的读写比例、每个逻辑区域在各个历史时段的顺序读写请求的扇区数(sequenctially reading/writing sector count)、存储设备的带宽、存储设备的读写偏度。
作为示例,各个逻辑区块在各个历史时段的读写数据信息可构成时间序列的训练数据集。
作为示例,根据本发明的实施例的数据的存储方法还可包括(图中未示出):获取存储设备的各个逻辑区块在各个历史时段的读写数据信息;根据训练数据集(即各个逻辑区块在各个历史时段的读写数据信息)训练数据预测模型。数据预测模型指示各个逻辑区块在下一时段的读写数据信息与各个逻辑区块在当前时刻之前的预定数量的历史时段的读写数据信息之间的对应关系。
该数据预测模型用于根据当前时刻之前的预定数量的历史时段的读写数据信息,预测未来下一时段的读写数据信息。
在训练过程中,将各个逻辑区块在第N个历史时段之前的M个历史时段的读写数据信息作为数据预测模型的输入,将各个逻辑区块在第N个历史时段的读写数据信息作为数据预测模型的输出的目标值。M为预定数量,N∈[M+1,历史时段的总个数],也就是说,N的取值范围为从预定数量与1的和至历史时段的总个数。
例如,在M为4的情况下,将各个逻辑区块在第N-1个历史时段的读写数据信息、第N-2个历史时段的读写数据信息、第N-3个历史时段的读写数据信息以及第N-4个历史时段的读写数据作为数据预测模型的输入,将各个逻辑区块在第N个历史时段的读写数据信息作为数据预测模型的输出的目标值。
作为示例,在训练前,可选择相应的预测算法和数据预测模型的参数。
在步骤S20,根据各个逻辑区块在当前时刻之前的M个历史时段的读写数据信息以及数据预测模型预测各个逻辑区块在下一时段的读写数据信息。
作为示例,将各个逻辑区块在当前时刻之前的M个历史时段的读写数据信息作为数据预测模型的输入,数据预测模型将输出未来下一时段的读写数据信息。
在步骤S30,根据预测的各个逻辑区块在下一时段的读写数据信息确定各个逻辑区块在下一时段的物理存储区域。
在存储设备是一个固态硬盘的情况下,该物理存储区域可以是同一固态硬盘中的多个存储区域中的一个存储区域;在存储设备是一个服务器的情况下,该物理存储区域可以是同一服务器中的多个固态硬盘中的一个固态硬盘;以及在存储设备是一个集群的情况下,该物理存储区域可以是同一集群中的多个服务器中的一个服务器。
作为示例,可将确定的各个逻辑区块在下一时段的物理存储区域记录在存储区域分配表中。可以理解,在每个时段,该存储区域分配表都将被更新。
在步骤S30,根据预测的各个逻辑区块在下一时段的读写数据信息的特性,例如读写的次数(数据的冷热)、读写的数据的大小,来确定各个逻辑区块在下一时段的物理存储区域。
这里,可采用各种方式来根据预测的各个逻辑区块在下一时段的读写数据信息确定各个逻辑区块在下一时段的物理存储区域。以下将描述三种根据预测的各个逻辑区块在下一时段的读写数据信息确定各个逻辑区块在下一时段的物理存储区域的方式,可以理解,下述三种方式仅作为示例,其他可根据预测的各个逻辑区块在下一时段的读写数据信息确定各个逻辑区块在下一时段的物理存储区域的方式均可应用与本发明。
第一种示例方式,根据本发明的实施例的数据的存储方法还包括以下步骤(图中未示出):使用聚类算法对各个逻辑区块在各个历史时段的读写数据信息进行聚类,得到各个类的聚类中心。在步骤S40,根据预测的各个逻辑区块在下一时段的读写数据信息以及各个类的聚类中心,确定各个逻辑区块在下一时段的物理存储区域。
这里,可使用各种聚类算法来对所有逻辑区块在所有历史时段的读写数据信息进行聚类,例如,K均值聚类法、均值漂移聚类法和基于密度的聚类方法等。
在步骤S30,先根据各个逻辑区块在下一时段的读写数据信息以及各个类的聚类中心确定各个逻辑区块在下一时段的读写数据信息所属的类;再根据各个逻辑区块在下一时段的读写数据信息所属的类确定各个逻辑区块在下一时段的物理存储区域。
作为示例,对于某个逻辑区块,可先确定该逻辑区块在下一时段的读写数据信息与各个类的聚类中心之间的距离(例如欧氏距离),将与该逻辑区块在下一时段的读写数据信息之间的距离最近的聚类中心对应的类,确定为该逻辑区块在下一时段的读写数据信息所属的类。
作为示例,可预先存储类与物理存储区域之间的对应关系。在步骤S30,根据该对应关系,以及各个逻辑区块在下一时段的读写数据信息所属的类确定各个逻辑区块在下一时段的物理存储区域。
第二种示例方式,根据各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的冷热值;根据各个逻辑区块在所述下一时段的冷热值以及预先存储的物理存储区域与冷热值的对应关系,确定各个逻辑区块在所述下一时段的物理存储区域。
作为示例,可预先设定根据读写数据信息来确定冷热值的具体方式。例如,可先将读写数据信息中的各个数据进行归一化处理,再将归一化处理后的各个数据按照各自的权重进行加权得到冷热值。
第三种示例方式,对各个逻辑区块在所述下一时段的读写数据信息进行聚类,得到多个簇;对所述多个簇中的各个簇进行排序,得到各个簇的序号;根据各个簇的序号以及预先定义的各个物理存储区域的序号确定各个逻辑区块在所述下一时段的物理存储区域。
作为示例,可将各个簇按照预先设定的排序规则进行排序。
针对任意一个逻辑区块,通过以下方式确定所述任意一个逻辑区块在所述下一时段的物理存储区域:确定所述任意一个逻辑区块在所述下一时段的读写数据信息所属的簇的序号(为了与物理存储区域的序号进行区分,下文称为第一序号),将序号与所述第一序号相同的物理存储区域确定为任意一个逻辑区块在所述下一时段的物理存储区域。
在步骤S40,在下一时段,当接收到写入请求时,将写入请求对应的数据写入到确定的写入请求对应的逻辑区块在下一时段的物理存储区域。
写入请求对应的数据是指该写入请求的请求写入的数据。写入请求对应的逻辑区块是指该写入请求的逻辑地址所在的逻辑区块。作为示例,可从上述的存储区域分配表中查找该写入请求的逻辑地址所在的逻辑区块的物理存储区域。
作为示例,在上述的下一时段结束时,获取各个逻辑区块在上述的下一时段的实际的读写数据信息,根据各个逻辑区块在上述的下一时段的实际的读写数据信息更新数据预测模型。
更新数据预测模型所采用的方式可与上述的训练预测模型的方式类似。由于数据预测模型根据不断出现的新的数据不断地进行机器学习更新,从而其预测效果将逐渐地优化。在之后进行读写数据信息的预测时,使用更新的数据预测模型进行预测。
作为示例,在上述的下一时段结束时,获取各个逻辑区块在上述的下一时段的实际的读写数据信息,根据各个逻辑区块在上述的下一时段的实际的读写数据信息更新所述聚类中心。
更新聚类中心所采用的方式可与上述的确定聚类中心的方式类似。由于聚类中心根据不断出现的新的数据不断地进行机器学习更新,从而其分类效果将逐渐地优化。在之后确定读写数据信息所属的类时,使用更新的聚类中心来进行确定读写数据信息所属的类。
根据本发明的实施例还提供一种的数据的存储设备,该存储设备包括处理器。
处理器被配置为获取存储设备的各个逻辑区块在在当前时刻之前的预定数量的历史时段的读写数据信息。
该存储设备可以是一个固态硬盘,也可以是包括多个固态硬盘的一个服务器,还可以是包括多个服务器的一个集群。
该逻辑区块是指存储设备的可用存储空间中的一段连续逻辑地址所在的区域。
作为示例,每个逻辑区块在各个历史时段的读写数据信息包括:每个逻辑区块在各个历史时段的读写次数、每个逻辑区块在各个历史时段的每次读写的数据的大小以及以下项中的至少零个:每个逻辑区域在各个历史时段的读写比例、每个逻辑区域在各个历史时段的顺序读写请求的扇区数、存储设备的带宽、存储设备的读写偏度。
作为示例,各个逻辑区块在各个历史时段的读写数据信息可构成时间序列的训练数据集。
处理器还被配置为获取存储设备的各个逻辑区块在各个历史时段的读写数据信息,根据训练数据集(即各个逻辑区块在各个历史时段的读写数据信息)训练数据预测模型。数据预测模型指示各个逻辑区块在下一时段的读写数据信息与各个逻辑区块在当前时刻之前的预定数量的历史时段的读写数据信息之间的对应关系。
该数据预测模型用于根据当前时刻之前的预定数量的历史时段的读写数据信息,预测未来下一时段的读写数据信息。
在训练过程中,将各个逻辑区块在第N个历史时段之前的M个历史时段的读写数据信息作为数据预测模型的输入,将各个逻辑区块在第N个历史时段的读写数据信息作为数据预测模型的输出的目标值。M为预定数量,N∈[M+1,历史时段的总个数],也就是说,N的取值范围为从预定数量与1的和至历史时段的总个数。
例如,在M为4的情况下,将各个逻辑区块在第N-1个历史时段的读写数据信息、第N-2个历史时段的读写数据信息、第N-3个历史时段的读写数据信息以及第N-4个历史时段的读写数据作为数据预测模型的输入,将各个逻辑区块在第N个历史时段的读写数据信息作为数据预测模型的输出的目标值。
作为示例,在训练前,可选择相应的预测算法和数据预测模型的参数。
处理器还被配置为根据各个逻辑区块在当前时刻之前的M个历史时段的读写数据信息以及数据预测模型预测各个逻辑区块在下一时段的读写数据信息。
作为示例,将各个逻辑区块在当前时刻之前的M个历史时段的读写数据信息作为数据预测模型的输入,数据预测模型将输出未来下一时段的读写数据信息。
处理器还被配置为根据预测的各个逻辑区块在下一时段的读写数据信息确定各个逻辑区块在下一时段的物理存储区域。
在存储设备是一个固态硬盘的情况下,该物理存储区域可以是同一固态硬盘中的多个存储区域中的一个存储区域;在存储设备是一个服务器的情况下,该物理存储区域可以是同一服务器中的多个固态硬盘中的一个固态硬盘;以及在存储设备是一个集群的情况下,该物理存储区域可以是同一集群中的多个服务器中的一个服务器。
作为示例,可将确定的各个逻辑区块在下一时段的物理存储区域记录在存储区域分配表中。可以理解,在每个时段,该存储区域分配表都将被更新。
处理器还被配置为根据预测的各个逻辑区块在下一时段的读写数据信息的特性,例如读写的次数(数据的冷热)、读写的数据的大小,来确定各个逻辑区块在下一时段的物理存储区域。
这里,处理器可采用各种方式来根据预测的各个逻辑区块在下一时段的读写数据信息确定各个逻辑区块在下一时段的物理存储区域。以下将描述三种根据预测的各个逻辑区块在下一时段的读写数据信息确定各个逻辑区块在下一时段的物理存储区域的方式,可以理解,下述三种方式仅作为示例,其他可根据预测的各个逻辑区块在下一时段的读写数据信息确定各个逻辑区块在下一时段的物理存储区域的方式均可应用与本发明。
第一种示例方式,处理器还被配置为使用聚类算法对各个逻辑区块在各个历史时段的读写数据信息进行聚类,得到各个类的聚类中心。从而处理器可根据预测的各个逻辑区块在所述下一时段的读写数据信息以及各个类的聚类中心,来确定各个逻辑区块在所述下一时段的物理存储区域。
这里,可使用各种聚类算法来对所有逻辑区块在所有历史时段的读写数据信息进行聚类,例如,K均值聚类法、均值漂移聚类法和基于密度的聚类方法等。
处理器还被配置为先根据各个逻辑区块在下一时段的读写数据信息以及各个类的聚类中心确定各个逻辑区块在下一时段的读写数据信息所属的类;再根据各个逻辑区块在下一时段的读写数据信息所属的类确定各个逻辑区块在下一时段的物理存储区域。
作为示例,对于某个逻辑区块,可先确定该逻辑区块在下一时段的读写数据信息与各个类的聚类中心之间的距离(例如欧氏距离),将与该逻辑区块在下一时段的读写数据信息之间的距离最近的聚类中心对应的类,确定为该逻辑区块在下一时段的读写数据信息所属的类。
作为示例,可预先存储类与物理存储区域之间的对应关系。处理器根据该对应关系,以及各个逻辑区块在下一时段的读写数据信息所属的类确定各个逻辑区块在下一时段的物理存储区域。
第二种示例方式,处理器根据各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的冷热值;根据各个逻辑区块在所述下一时段的冷热值以及预先存储的物理存储区域与冷热值的对应关系,确定各个逻辑区块在所述下一时段的物理存储区域。
作为示例,可预先设定根据读写数据信息来确定冷热值的具体方式。例如,可先将读写数据信息中的各个数据进行归一化处理,再将归一化处理后的各个数据按照各自的权重进行加权得到冷热值。
第三种示例方式,处理器对各个逻辑区块在所述下一时段的读写数据信息进行聚类,得到多个簇;对所述多个簇中的各个簇进行排序,得到各个簇的序号;根据各个簇的序号以及预先定义的各个物理存储区域的序号确定各个逻辑区块在所述下一时段的物理存储区域。
作为示例,可将各个簇按照预先设定的排序规则进行排序。
针对任意一个逻辑区块,处理器通过以下方式确定所述任意一个逻辑区块在所述下一时段的物理存储区域:确定所述任意一个逻辑区块在所述下一时段的读写数据信息所属的簇的序号(为了与物理存储区域的序号进行区分,下文称为第一序号),将序号与所述第一序号相同的物理存储区域确定为任意一个逻辑区块在所述下一时段的物理存储区域。
处理器还被配置为在下一时段,当接收到写入请求时,将写入请求对应的数据写入到确定的写入请求对应的逻辑区块在下一时段的物理存储区域。
写入请求对应的数据是指该写入请求的请求写入的数据。写入请求对应的逻辑区块是指该写入请求的逻辑地址所在的逻辑区块。作为示例,可从上述的存储区域分配表中查找该写入请求的逻辑地址所在的逻辑区块的物理存储区域。
作为示例,在上述的下一时段结束时,处理器获取各个逻辑区块在上述的下一时段的实际的读写数据信息,根据各个逻辑区块在上述的下一时段的实际的读写数据信息更新数据预测模型。
更新数据预测模型所采用的方式可与上述的训练预测模型的方式类似。由于数据预测模型根据不断出现的新的数据不断地进行机器学习更新,从而其预测效果将逐渐地优化。处理器在之后进行读写数据信息的预测时,使用更新的数据预测模型进行预测。
作为示例,在上述的下一时段结束时,处理器获取各个逻辑区块在上述的下一时段的实际的读写数据信息,根据各个逻辑区块在上述的下一时段的实际的读写数据信息更新所述聚类中心。
更新聚类中心所采用的方式可与上述的确定聚类中心的方式类似。由于聚类中心根据不断出现的新的数据不断地进行机器学习更新,从而其分类效果将逐渐地优化。处理器在之后确定读写数据信息所属的类时,使用更新的聚类中心来进行确定读写数据信息所属的类。
在根据本发明的数据的存储方法和设备中,通过数据预测模型预测未来时段的工作负载(即读写数据信息),并根据未来时段的工作负载来确定未来时段的物理存储区域,其可根据对工作负载变化的预测来动态调整存储策略,以便在达到较好的优化效果的同时,能够在程序最小变动的情况下自适应的适配上层业务的变化,能够延长存储设备(例如SSD)的使用寿命,提升读写性能,从而降低整体的TCO。
此外,根据本发明的数据的存储方法和设备预测的读写数据信息能够反映工作负载的重要指标的变化情况,比如工作负载的冷热程度(读写次数)。
此外,在根据本发明的数据的存储方法和设备中,数据预测模型和读写数据信息的聚类中心均基于机器学习的方式在不断地更新,其预测效果和分类效果将不断地优化。
根据本发明的一个实施例,本发明还提供一种其中存储有计算机程序的计算机可读存储介质,当所述计算机程序被执行时实现如上所述的方法。
此外,根据本发明示例性实施例的方法可以被实现为计算机可读记录介质中的计算机程序。本领域技术人员可以根据对上述方法的描述来实现所述计算机程序。当所述计算机程序在计算机中被执行时实现本发明的上述方法。
尽管已经参照其示例性实施例具体显示和描述了本发明,但是本领域的技术人员应该理解,在不脱离权利要求所限定的本发明的精神和范围的情况下,可以对其进行形式和细节上的各种改变。
Claims (23)
1.一种数据的存储方法,其特征在于,包括:
获取存储设备的各个逻辑区块在当前时刻之前的预定数量的历史时段的读写数据信息;
根据各个逻辑区块在当前时刻之前的预定数量的历史时段的读写数据信息以及数据预测模型预测各个逻辑区块在下一时段的读写数据信息,其中,所述数据预测模型指示各个逻辑区块在下一时段的读写数据信息与各个逻辑区块在当前时刻之前的预定数量的历史时段的读写数据信息之间的对应关系;
根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域;
在所述下一时段,当接收到写入请求时,将写入请求对应的数据写入到写入请求对应的逻辑区块在所述下一时段的物理存储区域。
2.根据权利要求1所述的数据的存储方法,其特征在于,还包括:
获取存储设备的各个逻辑区块在各个历史时段的读写数据信息;
根据各个逻辑区块在各个历史时段的读写数据信息训练数据预测模型,其中,在训练过程中,将各个逻辑区块在第N个历史时段之前的预定数量的历史时段的读写数据信息作为数据预测模型的输入,将各个逻辑区块在第N个历史时段的读写数据信息作为数据预测模型的输出的目标值,N∈[预定数量与1的和,历史时段的总个数]。
3.根据权利要求2所述的数据的存储方法,其特征在于,每个逻辑区块在各个历史时段的读写数据信息包括:每个逻辑区块在各个历史时段的读写次数、每个逻辑区块在各个历史时段的每次读写的数据的大小以及以下项中的至少零个:每个逻辑区域在各个历史时段的读写比例、每个逻辑区域在各个历史时段的顺序读写请求的扇区数、存储设备在各个历史时段的带宽、存储设备在各个历史时段的读写偏度。
4.根据权利要求1所述的数据的存储方法,其特征在于,还包括:
对各个逻辑区块在各个历史时段的读写数据信息进行聚类,得到各个类的聚类中心,
其中,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域的步骤包括:根据预测的各个逻辑区块在所述下一时段的读写数据信息以及各个类的聚类中心,确定各个逻辑区块在所述下一时段的物理存储区域。
5.根据权利要求4所述的数据的存储方法,其特征在于,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域的步骤包括:
根据预测的各个逻辑区块在所述下一时段的读写数据信息以及各个类的聚类中心确定预测的各个逻辑区块在所述下一时段的读写数据信息所属的类;
根据预测的各个逻辑区块在所述下一时段的读写数据信息所属的类确定各个逻辑区块在所述下一时段的物理存储区域。
6.根据权利要求5所述的数据的存储方法,其特征在于,根据预测的各个逻辑区块在所述下一时段的读写数据信息所属的类确定各个逻辑区块在所述下一时段的物理存储区域的步骤包括:
根据所述各个类与物理存储区域之间的对应关系以及预测的各个逻辑区块在所述下一时段的读写数据信息所属的类,确定各个逻辑区块在所述下一时段的物理存储区域。
7.根据权利要求1所述的数据的存储方法,其特征在于,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域的步骤包括:
根据各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的冷热值;
根据各个逻辑区块在所述下一时段的冷热值以及预先存储的物理存储区域与冷热值的对应关系,确定各个逻辑区块在所述下一时段的物理存储区域。
8.根据权利要求1所述的数据的存储方法,其特征在于,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域的步骤包括:
对各个逻辑区块在所述下一时段的读写数据信息进行聚类,得到多个簇;
对所述多个簇中的各个簇进行排序,得到各个簇的序号;
根据各个簇的序号以及预先定义的各个物理存储区域的序号确定各个逻辑区块在所述下一时段的物理存储区域,
其中,针对任意一个逻辑区块,通过以下方式确定所述任意一个逻辑区块在所述下一时段的物理存储区域:
确定所述任意一个逻辑区块在所述下一时段的读写数据信息所属的簇的第一序号,将序号与所述第一序号相同的物理存储区域确定为任意一个逻辑区块在所述下一时段的物理存储区域。
9.根据权利要求1所述的数据的存储方法,其特征在于,所述物理存储区域指示以下项中的任意一个:同一固态硬盘中的多个存储区域中的一个存储区域、同一服务器中的多个固态硬盘中的一个固态硬盘以及同一集群中的多个服务器中的一个服务器。
10.根据权利要求1所述的数据的存储方法,其特征在于,还包括:
在所述下一时段结束时,根据各个逻辑区块在所述下一时段的实际的读写数据信息更新所述数据预测模型。
11.根据权利要求4所述的数据的存储方法,其特征在于,还包括:
在所述下一时段结束时,根据各个逻辑区块在所述下一时段的实际的读写数据信息更新所述聚类中心。
12.一种数据的存储设备,其特征在于,包括处理器,其中,所述处理器被配置为:
获取存储设备的各个逻辑区块在当前时刻之前的预定数量的历史时段的读写数据信息;
根据各个逻辑区块在当前时刻之前的预定数量的历史时段的读写数据信息以及数据预测模型预测各个逻辑区块在下一时段的读写数据信息,其中,所述数据预测模型指示各个逻辑区块在下一时段的读写数据信息与各个逻辑区块在当前时刻之前的预定数量的历史时段的读写数据信息之间的对应关系;
根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域;
在所述下一时段,当接收到写入请求时,将写入请求对应的数据写入到写入请求对应的逻辑区块在所述下一时段的物理存储区域。
13.根据权利要求12所述的数据的存储设备,其特征在于,所述处理器还被配置为:
获取存储设备的各个逻辑区块在各个历史时段的读写数据信息;
根据各个逻辑区块在各个历史时段的读写数据信息训练数据预测模型,其中,在训练过程中,将各个逻辑区块在第N个历史时段之前的预定数量的历史时段的读写数据信息作为数据预测模型的输入,将各个逻辑区块在第N个历史时段的读写数据信息作为数据预测模型的输出的目标值,N∈[预定数量与1的和,历史时段的总个数]。
14.根据权利要求13所述的数据的存储设备,其特征在于,每个逻辑区块在各个历史时段的读写数据信息包括:每个逻辑区块在各个历史时段的读写次数、每个逻辑区块在各个历史时段的每次读写的数据的大小以及以下项中的至少零个:每个逻辑区域在各个历史时段的读写比例、每个逻辑区域在各个历史时段的顺序读写请求的扇区数、存储设备在各个历史时段的带宽、存储设备在各个历史时段的读写偏度。
15.根据权利要求12所述的数据的存储设备,其特征在于,所述处理器还被配置为:
对各个逻辑区块在各个历史时段的读写数据信息进行聚类,得到各个类的聚类中心,
其中,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域的处理包括:根据预测的各个逻辑区块在所述下一时段的读写数据信息以及各个类的聚类中心,确定各个逻辑区块在所述下一时段的物理存储区域。
16.根据权利要求15所述的数据的存储设备,其特征在于,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域的处理包括:
根据预测的各个逻辑区块在所述下一时段的读写数据信息以及各个类的聚类中心确定预测的各个逻辑区块在所述下一时段的读写数据信息所属的类;
根据预测的各个逻辑区块在所述下一时段的读写数据信息所属的类确定各个逻辑区块在所述下一时段的物理存储区域。
17.根据权利要求16所述的数据的存储设备,其特征在于,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息所属的类确定各个逻辑区块在所述下一时段的物理存储区域的处理包括:
根据所述各个类与物理存储区域之间的对应关系以及预测的各个逻辑区块在所述下一时段的读写数据信息所属的类,确定各个逻辑区块在所述下一时段的物理存储区域。
18.根据权利要求12所述的数据的存储设备,其特征在于,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域的处理包括:
根据各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的冷热值;
根据各个逻辑区块在所述下一时段的冷热值以及预先存储的物理存储区域与冷热值的对应关系,确定各个逻辑区块在所述下一时段的物理存储区域。
19.根据权利要求12所述的数据的存储设备,其特征在于,所述根据预测的各个逻辑区块在所述下一时段的读写数据信息确定各个逻辑区块在所述下一时段的物理存储区域的处理包括:
对各个逻辑区块在所述下一时段的读写数据信息进行聚类,得到多个簇;
对所述多个簇中的各个簇进行排序,得到各个簇的序号;
根据各个簇的序号以及预先定义的各个物理存储区域的序号确定各个逻辑区块在所述下一时段的物理存储区域,
其中,针对任意一个逻辑区块,通过以下方式确定所述任意一个逻辑区块在所述下一时段的物理存储区域:
确定所述任意一个逻辑区块在所述下一时段的读写数据信息所属的簇的第一序号,将序号与所述第一序号相同的物理存储区域确定为任意一个逻辑区块在所述下一时段的物理存储区域。
20.根据权利要求12所述的数据的存储设备,其特征在于,所述物理存储区域指示以下项中的任意一个:同一固态硬盘中的多个存储区域中的一个存储区域、同一服务器中的多个固态硬盘中的一个固态硬盘以及同一集群中的多个服务器中的一个服务器。
21.根据权利要求12所述的数据的存储设备,其特征在于,所述处理器还被配置为:
在所述下一时段结束时,根据各个逻辑区块在所述下一时段的实际的读写数据信息更新所述数据预测模型。
22.根据权利要求15所述的数据的存储设备,其特征在于,所述处理器还被配置为:
在所述下一时段结束时,根据各个逻辑区块在所述下一时段的实际的读写数据信息更新所述聚类中心。
23.一种计算机可读存储介质,存储有当被处理器执行时使得处理器执行如权利要求1至11中任意一项所述的数据的存储方法的计算机程序。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811354988.6A CN109491616B (zh) | 2018-11-14 | 2018-11-14 | 数据的存储方法和设备 |
US16/544,241 US11087826B2 (en) | 2018-11-14 | 2019-08-19 | Storing method and apparatus of data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811354988.6A CN109491616B (zh) | 2018-11-14 | 2018-11-14 | 数据的存储方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109491616A CN109491616A (zh) | 2019-03-19 |
CN109491616B true CN109491616B (zh) | 2022-05-24 |
Family
ID=65695900
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811354988.6A Active CN109491616B (zh) | 2018-11-14 | 2018-11-14 | 数据的存储方法和设备 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11087826B2 (zh) |
CN (1) | CN109491616B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109992210B (zh) * | 2019-03-29 | 2020-10-23 | 重庆紫光华山智安科技有限公司 | 数据存储方法、装置及电子设备 |
CN112905404B (zh) * | 2019-11-19 | 2024-01-30 | 中国电信股份有限公司 | 固态硬盘的状态监控方法和装置 |
CN111176565B (zh) * | 2019-12-25 | 2024-04-19 | 三星(中国)半导体有限公司 | 确定应用的存储负载的方法和设备 |
CN111177022B (zh) * | 2019-12-26 | 2022-08-12 | 广东浪潮大数据研究有限公司 | 一种特征提取方法、装置、设备及存储介质 |
CN112433679B (zh) * | 2020-12-01 | 2023-06-16 | 广州城市职业学院 | 一种数据存储方法、装置、电子设备及存储介质 |
CN114003178A (zh) * | 2021-11-09 | 2022-02-01 | 中国工商银行股份有限公司 | 日志存储分区的动态分配方法及装置 |
CN114518849B (zh) * | 2022-02-18 | 2023-01-10 | 深圳大学 | 一种数据存储方法、装置及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101448160A (zh) * | 2007-11-28 | 2009-06-03 | 中国科学院微电子研究所 | 带重建数据反馈的像素重建方法及解码器 |
CN103377129A (zh) * | 2012-04-11 | 2013-10-30 | 群联电子股份有限公司 | 数据写入方法、存储器控制器与存储器储存装置 |
CN106802772A (zh) * | 2016-12-30 | 2017-06-06 | 北京联想核芯科技有限公司 | 数据回收的方法、装置及固态硬盘 |
EP3343128A1 (en) * | 2016-12-27 | 2018-07-04 | Vito NV | Profiling of hot water use from electrical thermal storage vessels |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020091722A1 (en) | 2000-03-03 | 2002-07-11 | Surgient Networks, Inc. | Systems and methods for resource management in information storage environments |
US20080154827A1 (en) * | 2006-12-20 | 2008-06-26 | Connors Laurence A | Method of comparing actual and user predicted changes in data |
KR101702392B1 (ko) | 2010-08-20 | 2017-02-06 | 삼성전자주식회사 | 반도체 저장 장치 및 상기 반도체 저장 장치의 성능 조절 방법 |
US9467505B2 (en) | 2010-08-27 | 2016-10-11 | Vmware, Inc. | Saturation detection and admission control for storage devices |
US8842384B2 (en) * | 2011-09-30 | 2014-09-23 | Oracle International Corporation | Data adapters for storage tape analytics system |
US9092159B1 (en) | 2013-04-30 | 2015-07-28 | Emc Corporation | Object classification and identification from raw data |
US20160048342A1 (en) * | 2014-08-12 | 2016-02-18 | Facebook, Inc. | Reducing read/write overhead in a storage array |
US20160062832A1 (en) * | 2014-09-02 | 2016-03-03 | Netapp. Inc. | Wide spreading data storage architecture |
US9916087B2 (en) * | 2014-10-27 | 2018-03-13 | Sandisk Technologies Llc | Method and system for throttling bandwidth based on temperature |
CN105988720B (zh) * | 2015-02-09 | 2019-07-02 | 中国移动通信集团浙江有限公司 | 数据存储装置和方法 |
US9575664B2 (en) | 2015-04-08 | 2017-02-21 | Prophetstor Data Services, Inc. | Workload-aware I/O scheduler in software-defined hybrid storage system |
US9959046B2 (en) | 2015-12-30 | 2018-05-01 | Samsung Electronics Co., Ltd. | Multi-streaming mechanism to optimize journal based data storage systems on SSD |
US10013286B2 (en) | 2016-02-24 | 2018-07-03 | Prophetstor Data Services, Inc. | Method for deploying storage system resources with learning of workloads applied thereto |
US9830107B2 (en) | 2016-04-29 | 2017-11-28 | Netapp, Inc. | Drive wear-out prediction based on workload and risk tolerance |
US10467195B2 (en) | 2016-09-06 | 2019-11-05 | Samsung Electronics Co., Ltd. | Adaptive caching replacement manager with dynamic updating granulates and partitions for shared flash-based storage system |
US10359933B2 (en) | 2016-09-19 | 2019-07-23 | Micron Technology, Inc. | Memory devices and electronic systems having a hybrid cache including static and dynamic caches with single and multiple bits per cell, and related methods |
KR20180031289A (ko) | 2016-09-19 | 2018-03-28 | 삼성전자주식회사 | 스토리지 장치 및 상기 스토리지 장치의 동작 방법 |
JP6714037B2 (ja) * | 2018-04-26 | 2020-06-24 | 株式会社日立製作所 | 記憶システム、及び、クラスタ構成制御方法 |
JP6949801B2 (ja) * | 2018-10-17 | 2021-10-13 | 株式会社日立製作所 | ストレージシステム及びストレージシステムにおけるデータ配置方法 |
-
2018
- 2018-11-14 CN CN201811354988.6A patent/CN109491616B/zh active Active
-
2019
- 2019-08-19 US US16/544,241 patent/US11087826B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101448160A (zh) * | 2007-11-28 | 2009-06-03 | 中国科学院微电子研究所 | 带重建数据反馈的像素重建方法及解码器 |
CN103377129A (zh) * | 2012-04-11 | 2013-10-30 | 群联电子股份有限公司 | 数据写入方法、存储器控制器与存储器储存装置 |
EP3343128A1 (en) * | 2016-12-27 | 2018-07-04 | Vito NV | Profiling of hot water use from electrical thermal storage vessels |
CN106802772A (zh) * | 2016-12-30 | 2017-06-06 | 北京联想核芯科技有限公司 | 数据回收的方法、装置及固态硬盘 |
Non-Patent Citations (1)
Title |
---|
"分布式文件系统数据读写流程分析与优化";孙海峰;《中国优秀博硕士学位论文全文数据库(硕士) 信息科技辑》;20140615;全文 * |
Also Published As
Publication number | Publication date |
---|---|
US11087826B2 (en) | 2021-08-10 |
US20200152253A1 (en) | 2020-05-14 |
CN109491616A (zh) | 2019-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109491616B (zh) | 数据的存储方法和设备 | |
US11086523B2 (en) | Automatic tiering of storage using dynamic grouping | |
CN105653591B (zh) | 一种工业实时数据分级存储及迁移方法 | |
US10474397B2 (en) | Unified indirection in a multi-device hybrid storage unit | |
US10387038B1 (en) | Storage space allocation for logical disk creation | |
US9823875B2 (en) | Transparent hybrid data storage | |
CN109189693B (zh) | 一种对lba信息进行预测的方法及ssd | |
US20120215949A1 (en) | Storage application performance matching | |
US20170147237A1 (en) | Solid-state drive assignment based on solid-state drive write endurance | |
CN113687793B (zh) | 存储管理方法和系统 | |
JP2001067187A (ja) | ストレージサブシステム及びその制御方法 | |
US9612746B1 (en) | Allocation method for meeting system performance and application service level objective (SLO) | |
CN110532200B (zh) | 一种基于混合内存架构的内存系统 | |
CN110795363B (zh) | 一种存储介质的热页预测方法和页面调度方法 | |
US8683120B2 (en) | Method and apparatus to allocate area to virtual volume | |
CN109947353A (zh) | 存储管理方法、固态硬盘及可读存储介质 | |
CN105159602B (zh) | 数据处理方法及存储设备 | |
US8463990B2 (en) | Method and apparatus to perform automated page-based tier management of storing data in tiered storage using pool groups | |
US20090006501A1 (en) | Zone Control Weights | |
JP6152704B2 (ja) | ストレージシステム、情報処理装置の制御プログラム、およびストレージシステムの制御方法 | |
CN103765396B (zh) | 信息处理装置和方法以及记录介质 | |
TWI575445B (zh) | 自動分層儲存方法及其系統與電腦可讀取記錄媒體 | |
CN115934007B (zh) | 分布式存储系统的数据存储方法、系统、设备及存储介质 | |
CN118535092A (zh) | 数据块管理方法、装置、设备及介质 | |
US20160328184A1 (en) | Performance of storage controllers for applications with varying access patterns in information handling systems |
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 |