CN113485653B - 一种ssd及其应用场景识别方法、装置和存储介质 - Google Patents

一种ssd及其应用场景识别方法、装置和存储介质 Download PDF

Info

Publication number
CN113485653B
CN113485653B CN202111046508.1A CN202111046508A CN113485653B CN 113485653 B CN113485653 B CN 113485653B CN 202111046508 A CN202111046508 A CN 202111046508A CN 113485653 B CN113485653 B CN 113485653B
Authority
CN
China
Prior art keywords
application scene
preset
feature
scene
category
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
Application number
CN202111046508.1A
Other languages
English (en)
Other versions
CN113485653A (zh
Inventor
张博
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202111046508.1A priority Critical patent/CN113485653B/zh
Publication of CN113485653A publication Critical patent/CN113485653A/zh
Application granted granted Critical
Publication of CN113485653B publication Critical patent/CN113485653B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3034Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a storage system, e.g. DASD based or network based
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

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)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明公开了一种SSD的应用场景识别方法、装置、SSD及计算机可读存储介质,该方法包括:根据获取的SSD的控制命令,采集得到用户数据集;其中,用户数据集包括控制命令中的IO命令对应的IO信息集和/或控制命令中的管理命令对应的管理信息集;提取用户数据集对应的存储特征;从预设应用场景中识别存储特征对应的目标应用场景;本发明通过从预设应用场景中识别存储特征对应的目标应用场景,利用从采集的用户数据集中提取的存储特征,对用户实际使用SSD的应用场景进行自动识别,从而能够作为后续针对性优化各应用场景的SSD的性能的基础,使固态硬盘的性能能够更加符合用户需求,提高用户体验。

Description

一种SSD及其应用场景识别方法、装置和存储介质
技术领域
本发明涉及存储技术领域,特别涉及一种SSD的应用场景识别方法、装置、SSD及计算机可读存储介质。
背景技术
固态硬盘(SSD)具有高性能,低功耗的优势,是一种用来存储用户数据的设备。固态硬盘由控制器和存储介质NAND等部件组成。控制器中运行Firmware(嵌入式软件)进行资源的控制、对用户数据存储调度和维护NAND等操作。
目前,不同用户的读取写入行为不同,同一用户运行不同应用软件的读写行为也不一样;不同时间,运行同一应用软件,带来的读写行为也不一样。比如有的用户买来SSD之后,主要用于连续地址的读取操作(如科学仿真的静态数据存储),有的用户买来SSD主要用于写入操作(如日志增量记录),有的用户主要用于随机查询(如数据库应用),有的用户用于随机写入(如作为缓存)。固态硬盘的firmware负责给用户提供读写响应的服务,一般来说固态硬盘的firmware是在发布时就确定好的,无法为客户的特殊应用场景进行定制优化。也就是说,用户买来使用的是一个通用的,无论各方面性能都中规中矩的固态硬盘。
因此,如何能够识别固态硬盘的应用场景,从而使固态硬盘的性能能够更加符合用户需求,提高用户体验,是现今急需解决的问题。
发明内容
本发明的目的是提供一种SSD的应用场景识别方法、装置、SSD及计算机可读存储介质,以实现固态硬盘的应用场景的自动识别,从而能够使固态硬盘的性能更加符合用户需求,提高用户体验。
为解决上述技术问题,本发明提供一种SSD的应用场景识别方法,包括:
根据获取的SSD的控制命令,采集得到用户数据集;其中,所述用户数据集包括所述控制命令中的IO 命令对应的IO信息集和/或所述控制命令中的管理命令对应的管理信息集;
提取所述用户数据集对应的存储特征;其中,所述存储特征包括读写比例特征、块大小特征、LBA分布特征、时间分散度特征和空闲延时特征中的至少一项;
从预设应用场景中识别所述存储特征对应的目标应用场景。
可选的,所述用户数据集包括所述IO信息集和所述管理信息集时,所述根据获取的SSD的控制命令,采集得到用户数据集,包括:
分别对获取的所述IO 命令和所述管理命令进行采样,得到预设时间段内的所述IO信息集和所述管理信息集;其中,所述IO信息集包括第一预设数量的所述IO 命令对应的IO信息,所述管理信息集包括第二预设数量的所述管理命令对应的管理信息。
可选的,所述存储特征包括所述块大小特征时,所述提取所述用户数据集对应的存储特征,包括:
对所述IO信息集中的目标IO长度按大小进行排序,将预设百分比的排序位置的目标IO长度作为所述块大小特征;其中,所述目标IO长度为IO读和/或IO写对应的IO长度。
可选的,所述从预设应用场景中识别所述存储特征对应的目标应用场景,包括:
确定所述存储特征对应的分类结果;其中,所述分类结果包括所述读写比例特征对应的读取优先类别或写入优先类别、所述块大小特征对应的连续访问类别或离散访问类别、所述LBA分布特征中的LBA分散度特征对应的均匀随机写类别或非均匀随机写类别、所述LBA分布特征中的LBA热度范围特征对应的热点区域类别或无热点区域类别和所述空闲延时特征对应的有恢复时间类别或无恢复时间类别中的至少一项;
从所述预设应用场景中识别所述分类结果对应的目标应用场景。
可选的,所述从所述预设应用场景中识别所述分类结果对应的目标应用场景,包括:
若所述分类结果包括所述连续访问类别、所述读取优先类别和所述无恢复时间类别,则将所述预设应用场景中的连续读取场景确定为所述目标应用场景;
若所述分类结果包括所述连续访问类别、所述读取优先类别和所述恢复时间类别,则将所述预设应用场景中的连续间歇读取场景确定为所述目标应用场景;
若所述分类结果包括所述离散访问类别、所述无恢复时间类别和所述读取优先类别,则将所述预设应用场景中的随机均匀密集读场景确定为所述目标应用场景;
若所述分类结果包括所述离散访问类别、所述有恢复时间类别和所述读取优先类别,则将所述预设应用场景中的随机均匀间歇读场景确定为所述目标应用场景;
若所述分类结果包括所述连续访问类别、所述写入优先类别和所述无恢复时间类别,则将所述预设应用场景中的连续写入场景确定为所述目标应用场景;
若所述分类结果包括所述连续访问类别、所述写入优先类别和所述有恢复时间类别,则将所述预设应用场景中的连续间歇写入场景确定为所述目标应用场景;
若所述分类结果包括所述离散访问类别、所述无恢复时间类别和所述写入优先类别,则将所述预设应用场景中的随机均匀密集写入场景确定为所述目标应用场景;
若所述分类结果包括所述离散访问类别、所述有恢复时间类别和所述写入优先类别,则将所述预设应用场景中的随机均匀间歇写入场景确定为所述目标应用场景;
若所述分类结果包括所述写入优先类别和所述热点区域类别,则将所述预设应用场景中的热点区域写入场景确定为所述目标应用场景。
可选的,所述从预设应用场景中识别所述存储特征对应的目标应用场景,包括:
确定所述存储特征与各所述预设应用场景各自的预设特征向量的距离;
根据所述距离,从所述预设应用场景中识别所述目标应用场景。
可选的,所述确定所述存储特征与各所述预设应用场景各自的预设特征向量的距离,包括:
计算所述存储特征与各所述预设应用场景各自的预设特征向量的马氏距离。
本发明还提供了一种SSD的应用场景识别装置,包括:
采样模块,用于根据获取的SSD的控制命令,采集得到用户数据集;其中,所述用户数据集包括所述控制命令中的IO 命令对应的IO信息集和/或所述控制命令中的管理命令对应的管理信息集;
提取模块,用于提取所述用户数据集对应的存储特征;其中,所述存储特征包括读写比例特征、块大小特征、LBA分布特征、时间分散度特征和空闲延时特征中的至少一项;
识别模块,用于从预设应用场景中识别所述存储特征对应的目标应用场景。
本发明还提供了一种SSD,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述所述的SSD的应用场景识别方法的步骤。
此外,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的SSD的应用场景识别方法的步骤。
本发明所提供的一种SSD的应用场景识别方法,包括:根据获取的SSD的控制命令,采集得到用户数据集;其中,用户数据集包括控制命令中的IO 命令对应的IO信息集和/或控制命令中的管理命令对应的管理信息集;提取用户数据集对应的存储特征;其中,存储特征包括读写比例特征、块大小特征、LBA分布特征、时间分散度特征和空闲延时特征中的至少一项;从预设应用场景中识别存储特征对应的目标应用场景;
可见,本发明通过从预设应用场景中识别存储特征对应的目标应用场景,利用从采集的用户数据集中提取的存储特征,对用户实际使用SSD的应用场景进行自动识别,从而能够作为后续针对性优化各应用场景的SSD的性能的基础,使固态硬盘的性能能够更加符合用户需求,提高用户体验。此外,本发明还提供了一种SSD的应用场景识别装置、SSD及计算机可读存储介质,同样具有上述有益效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例所提供的一种SSD的应用场景识别方法的流程图;
图2为本发明实施例所提供的一种SSD的应用场景识别装置的结构框图;
图3为本发明实施例所提供的一种SSD的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明实施例所提供的一种SSD的应用场景识别方法的流程图。该方法可以包括:
步骤101:根据获取的SSD的控制命令,采集得到用户数据集;其中,用户数据集包括控制命令中的IO 命令对应的IO信息集和/或控制命令中的管理命令对应的管理信息集。
可以理解的是,本步骤中SSD的控制命令可以为控制SSD的命令。SSD的控制命令可以包括IO 命令和管理命令;其中,IO 命令主要可以包括读取操作、写入操作和Trim(删除)操作等,每种操作可以包括IO地址和IO长度;管理命令主要可以包括格式化操作、上下电操作和日志查询操作等。本步骤中采集的SSD的控制命令对应的用户数据集可以包括IO信息的集合(即IO信息集)和/或格式化操作与上下电操作的管理信息的集合(即管理信息集),以利用用户数据集辨识SSD的应用场景。
具体的,本实施例所提供的方法可以应用于SSD的处理器(即控制器),也就是说,SSD的处理器可以运行Firmware,实现对该SSD的应用场景的识别。本实施例所提供的方法也可以应用于与SSD连接的终端(如计算机)的处理器,以使终端可以对其连接的SSD的应用场景进行识别。
需要说明的是,对于本步骤中处理器根据获取的SSD的控制命令,采集得到用户数据集的具体方式,可以由设计人员根据实用场景和用户需求自行设置,如处理器可以对获取的控制命令中的IO 命令进行采样,得到预设时间段内的IO信息集;其中,IO信息集包括第一预设数量的IO 命令对应的IO信息;也就是说,处理器可以利用预设时间段(如24)内采样得到的第一预设数量(如1百万)的IO 命令对应的IO信息的集合(即IO信息集),识别SSD的应用场景。处理器也可以对获取的控制命令中的管理命令进行采样,得到预设时间段内的管理信息集;其中,管理信息集包括第二预设数量的管理命令对应的管理信息;也就是说,处理器可以利用预设时间段(如24)内采样得到的第二预设数量(如1000)的管理命令对应的管理信息的集合(即管理信息集),识别SSD的应用场景。处理器还可以分别对获取的IO命令和管理命令进行采样,得到预设时间段内的IO信息集和管理信息集;也就是说,处理器可以利用IO信息集和管理信息集,识别SSD的应用场景。本实施例对此不做任何限制。
对应的,本实施例中可以利用IO信息表和管理信息表分别存储IO信息集和管理信息集;由于由于IO的访问非常频繁,因此需要限制IO信息表的大小,当超过IO信息表的容量之后,覆盖前面的数据。例如,可以将IO信息表的容量设置为第一预设数量(如1百万),当写满1百万条IO信息之后,从第一条开始覆盖写,使得这个表总是保存最近的1百万条信息。管理命令由于很稀疏,所以管理信息表的容量可以比IO信息表小很多,比如保存1000条,即第二预设数量可以为1000。
具体的,对于上述对控制命令中的IO 命令进行采样,得到预设时间段内的IO信息集的具体方式,可以由设计人员自行设置,如处理器可以将获取的每一条IO 命令保存到缓存中,由于一秒钟的IO 命令的总量不会太多,因此这个缓存可以设计为保存这一秒钟内的所有IO 命令;设置一个定时器,每秒钟触发一次,当触发时,从这一秒钟的数据内,按等间隔抽取12条IO 命令,记录在IO信息表中;同时,IO信息表中还可以记录每一秒钟收到了多少条IO 命令,即每一秒的数据总量也可以作为一个特征。处理器可以利用计算得到的采样率,对IO 命令进行采样,得到预设时间段内的IO信息集;例如上一秒钟共收到了10万条IO命令,那么采样率可以为1/1万,用一个简单的计数器,每1万条指令保存一条记录在IO信息表中;由于每个IO命令到来的时候采样一下时间,不需要定时器,更加简单;只需记录一个上次采样时间time_reference和上次的IO序号SN_reference;每到一个新的IO时,比较当前IO时间和time_reference的时间差,在大于或等于1秒时,记录下来现在的IO序号SN_current;SN_Current – SN_reference就是一秒钟内的数据量, 用这个数据量和每秒钟欲保存的信息数量(如12条)计算采样率,如每秒钟欲保存的信息数量与一秒钟内的数据量的商;在下一秒之前,用这个采样率采样IO命令保存到IO信息表。
对应的,对于上述对控制命令中的管理命令进行采样,得到预设时间段内的管理信息集的具体方式,可以由设计人员自行设置,由于管理命令数量较少,可以不考虑采样率,只要收到格式化操作与上下电操作的管理命令,便可保存到管理信息表中。
步骤102:提取用户数据集对应的存储特征;其中,存储特征包括读写比例特征、块大小特征、LBA分布特征、时间分散度特征和空闲延时特征中的至少一项。
可以理解的是,本步骤中的存储特征可以为利用用户数据集提取得到的SSD存储数据的特征。对于本步骤中的存储特征的具体内容,可以由设计人员根据实用场景和用户需求自行设置,如存储特征可以包括IO信息集对应的读写比例特征,以帮助后续决策应当对读进行优化还是写入优化,例如IO信息表中1百万条IO信息集的读取与写入的占比;存储特征也可以包括IO信息集对应的块大小(block size)特征,以帮助确定是连续写(或读)还是随机写(或读);存储特征还可以包括IO信息集对应的LBA(逻辑块地址)分布特征,以帮助确定用户的访问行为和/或确定冷热数据区域;存储特征还可以包括IO信息集对应的时间分散度特征,以帮助确定繁忙和空闲的时间比例,帮助后续决策进行功耗策略;存储特征还可以包括IO信息集对应的空闲延时特征,使得如果用户的IO访问在时间上是不均匀的或者不够密集的,那么可以在用户空闲的时候进行后台整理,提高SSD的性能;存储特征还可以包括管理信息集对应的特征,如格式化时间或频率特征和上下电时间或频率特征等。本实施例对此不做任何限制。
具体的,对于本步骤中处理器提取用户数据集对应的存储特征的具体方式,可以由设计人员根据实用场景和用户需求自行设置,如存储特征包括读写比例特征时,处理器可以将IO信息集中读取操作的IO命令与读取操作和写入操作的IO命令的商作为读写比例特征,或将IO信息集中读取操作的IO命令与IO信息集中全部IO命令的商作为读写比例特征。
存储特征包括块大小特征时,处理器可以对IO信息集中的目标IO长度按大小进行排序,将预设百分比的排序位置的目标IO长度作为块大小特征;其中,目标IO长度为IO读和/或IO写对应的IO长度;如对读(或者写)操作的IO命令中,IO长度字段进行大小排序和统计,能够以排序的5%、10%、30%、50%和70%等的排序位置的长度作为特征,例如将由小到大排序的IO长度的队列中的70%(即预设百分比)的排序位置的长度作为块大小特征,即将全部IO长度中大于70%的IO长度的最小的IO长度作为块大小特征,块大小特征的数值可以表示用户发下来的读(或者写)命令的长度,比如256K或者64K。
存储特征包括LBA分布特征时,处理器可以对IO信息集中的全部IO命令(如1百万条IO命令)的LBA做直方图,将LBA范围划分为100个相邻的等间距的区间(bins),计算落在每个bins上的数量;将各bins按LBA数量进行排序,从大到小累加,直到达到总容量的预设热度百分比(如80%),将累加的bins的数量作为LBA分布特征中的LBA热度范围特征;将利用各Bins上的LBA数量,计算得到的方差作为LBA分布特征中的LBA分散度特征;将直方图上LBA数量小于特定阈值(如100)的bins的数量除以总bins数量的商作为LBA分布特征中的未覆盖LBA范围特征。
存储特征包括时间分散度特征时,处理器可以将IO信息表中的IO命令,按照预设分散时间(如1分钟)进行直方图,使每个bins保存了预设分散时间内的访问次数;将各bins按访问次数按小到大排列,将队列中的预设分散百分比(如80%)的排序位置的bins的访问次数作为时间分散度特征中的高度特征,即将全部bins的访问次数中访问次数大于预设分散百分比的bins中访问次数最小的bins的访问次数作为高度特征;将直方图中访问次数小于次数阈值(如100次)的bins数量与全部bins数量的比值作为时间分散度特征中的空闲时间占比特征。
存储特征包括空闲延时特征时,处理器可以确定写入速度和/或读取速度超过阈值(如300K/s)的时间点;计算相邻两个时间点之间的时间间隔;按从大到小的顺序对全部时间间隔进行排序,从而能够以排序的0%、30%,50%、70%和90%等的排序位置的时间间隔作为特征;例如将队列中90%(即预设延时百分比)的排序位置的时间间隔作为空闲延时特征,如90%的排序位置的时间间隔为5秒,可以说明只有小于10%的场景下持续5秒都没有休息。
步骤103:从预设应用场景中识别存储特征对应的目标应用场景。
其中,本步骤中的预设应用场景可以为预先设置的能够识别的SSD的应用场景;本步骤中的目标应用场景可以为从预设应用场景中识别的存储特征对应的任意一个或多个应用场景。
具体的,对于本步骤中处理器从预设应用场景中识别存储特征对应的目标应用场景的具体方式,可以由设计人员根据实用场景和用户需求自行设置,如采用无监督模式的识别时,处理器可以确定存储特征对应的分类结果;从预设应用场景中识别分类结果对应的目标应用场景;其中,分类结果包括读写比例特征对应的读取优先类别或写入优先类别、块大小特征对应的连续访问类别或离散访问类别、LBA分布特征中的LBA分散度特征对应的均匀随机写类别或非均匀随机写类别、LBA分布特征中的LBA热度范围特征对应的热点区域类别或无热点区域类别和空闲延时特征对应的有恢复时间类别或无恢复时间类别中的至少一项;也就是说,在无监督模式下, 由于精确的应用场景分类较为复杂,可以进行多个二分类,以利用存储特征对应的二分类(即分类结果),从预设应用场景中识别目标应用场景。
对应的,上述确定存储特征对应的分类结果的过程中,处理器可以在读写比例特征大于第一阈值时,确定分类结果包括读取优先类别,以使后续可以在读取优先时将写入的处理资源更多的分配给读取过程;在读写比例特征小于第二阈值时,确定分类结果包括写入优先类别,以使后续可以在写入优先时将读取的处理资源更多的分配给写入过程;在LBA分散度特征大于第三阈值时,确定分类结果包括均匀随机写类别,反之则确定分类结果包括非均匀随机写类别;在空闲延时特征大于第四阈值时,确定分类结果包括有恢复时间类别,反之则确定分类结果包括无恢复时间类别,以使后续可以在恢复时间时将资源作为缓冲,忙时快速使用,闲时恢复缓冲资源;在块大小特征大于第五阈值时,确定分类结果包括连续访问类别,反之则确定分类结果包括离散访问类别,以使后续可以在连续访问保证较高吞吐量,在离散访问时保证较低的延迟;在LBA热度范围特征小于第六阈值时,确定分类结果包括热点区域类别,反之则确定分类结果包括无热点区域类别。
相应的,上述从预设应用场景中识别分类结果对应的目标应用场景的过程中,处理器可以在分类结果包括连续访问类别、读取优先类别和无恢复时间类别时,将预设应用场景中的连续读取场景确定为目标应用场景;在分类结果包括连续访问类别、读取优先类别和恢复时间类别时,将预设应用场景中的连续间歇读取场景确定为目标应用场景;在分类结果包括离散访问类别、无恢复时间类别和读取优先类别时,将预设应用场景中的随机均匀密集读场景确定为目标应用场景;在分类结果包括离散访问类别、有恢复时间类别和读取优先类别时,将预设应用场景中的随机均匀间歇读场景确定为目标应用场景;在分类结果包括连续访问类别、写入优先类别和无恢复时间类别时,将预设应用场景中的连续写入场景确定为目标应用场景;在分类结果包括连续访问类别、写入优先类别和有恢复时间类别时,将预设应用场景中的连续间歇写入场景确定为目标应用场景;在分类结果包括离散访问类别、无恢复时间类别和写入优先类别时,将预设应用场景中的随机均匀密集写入场景确定为目标应用场景;在分类结果包括离散访问类别、有恢复时间类别和写入优先类别时,将预设应用场景中的随机均匀间歇写入场景确定为目标应用场景;在分类结果包括写入优先类别和热点区域类别时,将预设应用场景中的热点区域写入场景确定为目标应用场景。其中,识别的分类结果对应的目标应用场景可以包括多个预设预设应用场景,如目标应用场景可以包括随机均匀密集读场景和热点区域写入场景;识别的分类结果对应的目标应用场景可以仅包括一个预设应用场景,按照预设顺序对各预设预设应用场景进行识别,将识别到的第一个预设应用场景作为目标应用场景。
可以理解的是,本步骤中从预设应用场景中识别存储特征对应的目标应用场景的识别过程采用监督模式时,处理器可以确定存储特征与各预设应用场景各自的预设特征向量的距离;根据距离,从预设应用场景中识别目标应用场景。
对应的,本实施例所提供的方法还可以包括各预设应用场景各自的预设特征向量的训练过程,例如,与SSD连接的终端可以运行读写测试向量,终端中设置评测此测试向量性能是否较优的性能指标;如测试数据库向量时,终端可设置一个每秒钟访问次数的评价指标,或者测试数据拷贝复制测试向量时, 终端可设置一个每秒钟拷贝数据量的评价指标。终端可以配置各存储特征对应的特征向量,如将每个存储特征的取值范围划分为n个范围,每个范围对应该存储特征的特征向量的一个特征向量值,例如读写比例特征可以从0到100%,分为20个范围,即0~5%、5~10%、…、95~100%;每个存储特征可以影响SSD中firmware的内部参数,如buffer大小,读写资源配比等,比如读写比例特征可以影响读缓存的大小,在读写比例特征为100%时,读缓存可以为1MBytes,而读写比例特征为0时,读缓存可以为64Kbytes,而如果某个存储特征与firmware的内部参数没有对应关系,说明这个存储特征不再重要;终端可以对各存储特征进行遍历,对各存储特征对应的范围进行组合,在各组合的条件下,测试终端的性能数据,查找各范围组合对应的最优性能数据的取值,记录下来作为各范围组合(即预设应用场景)对应的特征向量(即预设特征向量);终端还可以构建存储预设应用场景与特征向量的对应关系表,如SSD的控制器运行Firmware时,可以利用终端传输的对应关系表,对识别SSD的应用场景。
具体的,处理器可以通过计算确定存储特征与各预设应用场景各自的预设特征向量的距离,利用确定的距离,从预设应用场景中识别目标应用场景,即与存储特征距离最小的预设应用场景。例如由于不同样本的分布不一样,有的是0到1之间取值(如读写比例特征),有的是0到2百万之间取值(如一秒钟的访问次数),因此权重不一样;在计算距离时,可以采用马氏距离的方法,每个存储特征减去均值,除以方差进行正则化,用正则化的正则化特征,与存储的多种预设应用场景的预设特征向量进行比较确定距离,将距离最小的预设应用场景确定为目标应用场景。
相应的,上述根据距离,从预设应用场景中识别目标应用场景的过程中,处理器可以判断确定的距离中是否存在小于距离阈值的距离;若存在,则将最小的距离对应的预设应用场景确定为目标应用场景;若不存在,则当前采用的预设应用场景确定为目标应用场景,或确定应用场景识别失败,使SSD依旧采用默认参数,提供中规中矩的服务。
本实施例中,本发明实施例通过从预设应用场景中识别存储特征对应的目标应用场景,利用从采集的用户数据集中提取的存储特征,对用户实际使用SSD的应用场景进行自动识别,从而能够作为后续针对性优化各应用场景的SSD的性能的基础,使固态硬盘的性能能够更加符合用户需求,提高用户体验。
相应于上面的方法实施例,本发明实施例还提供了一种SSD的应用场景识别装置,下文描述的一种SSD的应用场景识别装置与上文描述的一种SSD的应用场景识别方法可相互对应参照。
请参考图2,图2为本发明实施例所提供的一种SSD的应用场景识别装置的结构框图。该装置可以包括:
采样模块10,用于根据获取的SSD的控制命令,采集得到用户数据集;其中,用户数据集包括控制命令中的IO 命令对应的IO信息集和/或控制命令中的管理命令对应的管理信息集;
提取模块20,用于提取用户数据集对应的存储特征;其中,存储特征包括读写比例特征、块大小特征、LBA分布特征、时间分散度特征和空闲延时特征中的至少一项;
识别模块30,用于从预设应用场景中识别存储特征对应的目标应用场景。
可选的,用户数据集包括IO信息集和管理信息集时,采样模块10可以具体用于分别对获取的IO 命令和管理命令进行采样,得到预设时间段内的IO信息集和管理信息集;其中,IO信息集包括第一预设数量的IO 命令对应的IO信息,管理信息集包括第二预设数量的管理命令对应的管理信息。
可选的,存储特征包括块大小特征时,提取模块20可以包括:
块大小提取子模块,用于对IO信息集中的目标IO长度按大小进行排序,将预设百分比的排序位置的目标IO长度作为块大小特征;其中,目标IO长度为IO读和/或IO写对应的IO长度。
可选的,识别模块30可以包括:
分类子模块,用于确定存储特征对应的分类结果;其中,分类结果包括读写比例特征对应的读取优先类别或写入优先类别、块大小特征对应的连续访问类别或离散访问类别、LBA分布特征中的LBA分散度特征对应的均匀随机写类别或非均匀随机写类别、LBA分布特征中的LBA热度范围特征对应的热点区域类别或无热点区域类别和空闲延时特征对应的有恢复时间类别或无恢复时间类别中的至少一项;
分类识别子模块,用于从预设应用场景中识别分类结果对应的目标应用场景。
可选的,分类识别子模块可以具体用于若分类结果包括连续访问类别、读取优先类别和无恢复时间类别,则将预设应用场景中的连续读取场景确定为目标应用场景;
若分类结果包括连续访问类别、读取优先类别和恢复时间类别,则将预设应用场景中的连续间歇读取场景确定为目标应用场景;
若分类结果包括离散访问类别、无恢复时间类别和读取优先类别,则将预设应用场景中的随机均匀密集读场景确定为目标应用场景;
若分类结果包括离散访问类别、有恢复时间类别和读取优先类别,则将预设应用场景中的随机均匀间歇读场景确定为目标应用场景;
若分类结果包括连续访问类别、写入优先类别和无恢复时间类别,则将预设应用场景中的连续写入场景确定为目标应用场景;
若分类结果包括连续访问类别、写入优先类别和有恢复时间类别,则将预设应用场景中的连续间歇写入场景确定为目标应用场景;
若分类结果包括离散访问类别、无恢复时间类别和写入优先类别,则将预设应用场景中的随机均匀密集写入场景确定为目标应用场景;
若分类结果包括离散访问类别、有恢复时间类别和写入优先类别,则将预设应用场景中的随机均匀间歇写入场景确定为目标应用场景;
若分类结果包括写入优先类别和热点区域类别,则将预设应用场景中的热点区域写入场景确定为目标应用场景。
可选的,识别模块30可以包括:
距离确定子模块,用于确定存储特征与各预设应用场景各自的预设特征向量的距离;
距离识别子模块,用于根据距离,从预设应用场景中识别目标应用场景。
可选的,距离确定子模块可以具体用于计算存储特征与各预设应用场景各自的预设特征向量的马氏距离。
本实施例中,本发明实施例通过识别模块30从预设应用场景中识别存储特征对应的目标应用场景,利用从采集的用户数据集中提取的存储特征,对用户实际使用SSD的应用场景进行自动识别,从而能够作为后续针对性优化各应用场景的SSD的性能的基础,使固态硬盘的性能能够更加符合用户需求,提高用户体验。
相应于上面的方法实施例,本发明实施例还提供了一种SSD,下文描述的一种SSD与上文描述的一种SSD的应用场景识别方法可相互对应参照。
请参考图3,图3为本发明实施例所提供的一种SSD的结构示意图。该SSD可以包括:
存储器D1,用于存储计算机程序;
处理器D2,用于执行计算机程序时实现上述方法实施例所提供的SSD的应用场景识别方法的步骤。
相应于上面的方法实施例,本发明实施例还提供了一种计算机可读存储介质,下文描述的一种计算机可读存储介质与上文描述的一种SSD的应用场景识别方法可相互对应参照。
一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例所提供的SSD的应用场景识别方法的步骤。
该计算机可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、SSD及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
以上对本发明所提供的一种SSD的应用场景识别方法、装置、SSD及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

Claims (8)

1.一种SSD的应用场景识别方法,其特征在于,包括:
根据获取的SSD的控制命令,采集得到用户数据集;其中,所述用户数据集包括所述控制命令中的IO 命令对应的IO信息集和/或所述控制命令中的管理命令对应的管理信息集;
提取所述用户数据集对应的存储特征;其中,所述存储特征包括读写比例特征、块大小特征、LBA分布特征、时间分散度特征和空闲延时特征中的至少一项;
从预设应用场景中识别所述存储特征对应的目标应用场景;
其中,所述从预设应用场景中识别所述存储特征对应的目标应用场景,包括:
确定所述存储特征对应的分类结果;其中,所述分类结果包括所述读写比例特征对应的读取优先类别或写入优先类别、所述块大小特征对应的连续访问类别或离散访问类别、所述LBA分布特征中的LBA分散度特征对应的均匀随机写类别或非均匀随机写类别、所述LBA分布特征中的LBA热度范围特征对应的热点区域类别或无热点区域类别和所述空闲延时特征对应的有恢复时间类别或无恢复时间类别中的至少一项;
从所述预设应用场景中识别所述分类结果对应的目标应用场景;
或者,所述从预设应用场景中识别所述存储特征对应的目标应用场景,包括:
确定所述存储特征与各所述预设应用场景各自的预设特征向量的距离;
根据所述距离,从所述预设应用场景中识别所述目标应用场景。
2.根据权利要求1所述的SSD的应用场景识别方法,其特征在于,所述用户数据集包括所述IO信息集和所述管理信息集时,所述根据获取的SSD的控制命令,采集得到用户数据集,包括:
分别对获取的所述IO 命令和所述管理命令进行采样,得到预设时间段内的所述IO信息集和所述管理信息集;其中,所述IO信息集包括第一预设数量的所述IO 命令对应的IO信息,所述管理信息集包括第二预设数量的所述管理命令对应的管理信息。
3.根据权利要求2所述的SSD的应用场景识别方法,其特征在于,所述存储特征包括所述块大小特征时,所述提取所述用户数据集对应的存储特征,包括:
对所述IO信息集中的目标IO长度按大小进行排序,将预设百分比的排序位置的目标IO长度作为所述块大小特征;其中,所述目标IO长度为IO读和/或IO写对应的IO长度。
4.根据权利要求1所述的SSD的应用场景识别方法,其特征在于,所述从所述预设应用场景中识别所述分类结果对应的目标应用场景,包括:
若所述分类结果包括所述连续访问类别、所述读取优先类别和所述无恢复时间类别,则将所述预设应用场景中的连续读取场景确定为所述目标应用场景;
若所述分类结果包括所述连续访问类别、所述读取优先类别和所述恢复时间类别,则将所述预设应用场景中的连续间歇读取场景确定为所述目标应用场景;
若所述分类结果包括所述离散访问类别、所述无恢复时间类别和所述读取优先类别,则将所述预设应用场景中的随机均匀密集读场景确定为所述目标应用场景;
若所述分类结果包括所述离散访问类别、所述有恢复时间类别和所述读取优先类别,则将所述预设应用场景中的随机均匀间歇读场景确定为所述目标应用场景;
若所述分类结果包括所述连续访问类别、所述写入优先类别和所述无恢复时间类别,则将所述预设应用场景中的连续写入场景确定为所述目标应用场景;
若所述分类结果包括所述连续访问类别、所述写入优先类别和所述有恢复时间类别,则将所述预设应用场景中的连续间歇写入场景确定为所述目标应用场景;
若所述分类结果包括所述离散访问类别、所述无恢复时间类别和所述写入优先类别,则将所述预设应用场景中的随机均匀密集写入场景确定为所述目标应用场景;
若所述分类结果包括所述离散访问类别、所述有恢复时间类别和所述写入优先类别,则将所述预设应用场景中的随机均匀间歇写入场景确定为所述目标应用场景;
若所述分类结果包括所述写入优先类别和所述热点区域类别,则将所述预设应用场景中的热点区域写入场景确定为所述目标应用场景。
5.根据权利要求1所述的SSD的应用场景识别方法,其特征在于,所述确定所述存储特征与各所述预设应用场景各自的预设特征向量的距离,包括:
计算所述存储特征与各所述预设应用场景各自的预设特征向量的马氏距离。
6.一种SSD的应用场景识别装置,其特征在于,包括:
采样模块,用于根据获取的SSD的控制命令,采集得到用户数据集;其中,所述用户数据集包括所述控制命令中的IO 命令对应的IO信息集和/或所述控制命令中的管理命令对应的管理信息集;
提取模块,用于提取所述用户数据集对应的存储特征;其中,所述存储特征包括读写比例特征、块大小特征、LBA分布特征、时间分散度特征和空闲延时特征中的至少一项;
识别模块,用于从预设应用场景中识别所述存储特征对应的目标应用场景;
其中,所述识别模块包括:
分类子模块,用于确定所述存储特征对应的分类结果;其中,所述分类结果包括所述读写比例特征对应的读取优先类别或写入优先类别、所述块大小特征对应的连续访问类别或离散访问类别、所述LBA分布特征中的LBA分散度特征对应的均匀随机写类别或非均匀随机写类别、所述LBA分布特征中的LBA热度范围特征对应的热点区域类别或无热点区域类别和所述空闲延时特征对应的有恢复时间类别或无恢复时间类别中的至少一项;
分类识别子模块,用于从所述预设应用场景中识别所述分类结果对应的目标应用场景;
或者所述识别模块包括:
距离确定子模块,用于确定所述存储特征与各所述预设应用场景各自的预设特征向量的距离;
距离识别子模块,用于根据所述距离,从所述预设应用场景中识别所述目标应用场景。
7.一种SSD,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至5任一项所述的SSD的应用场景识别方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的SSD的应用场景识别方法的步骤。
CN202111046508.1A 2021-09-08 2021-09-08 一种ssd及其应用场景识别方法、装置和存储介质 Active CN113485653B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111046508.1A CN113485653B (zh) 2021-09-08 2021-09-08 一种ssd及其应用场景识别方法、装置和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111046508.1A CN113485653B (zh) 2021-09-08 2021-09-08 一种ssd及其应用场景识别方法、装置和存储介质

Publications (2)

Publication Number Publication Date
CN113485653A CN113485653A (zh) 2021-10-08
CN113485653B true CN113485653B (zh) 2021-11-19

Family

ID=77947323

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111046508.1A Active CN113485653B (zh) 2021-09-08 2021-09-08 一种ssd及其应用场景识别方法、装置和存储介质

Country Status (1)

Country Link
CN (1) CN113485653B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114460226B (zh) * 2022-01-10 2024-02-06 上海工程技术大学 一种场景气体记忆和识别的方法及其应用

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102306193A (zh) * 2011-09-05 2012-01-04 浪潮电子信息产业股份有限公司 一种磁盘数据库性能测试方法
CN106557535A (zh) * 2016-06-23 2017-04-05 哈尔滨安天科技股份有限公司 一种大数据级Pcap文件的处理方法及系统
CN108132760A (zh) * 2018-01-19 2018-06-08 湖南国科微电子股份有限公司 一种提升ssd读性能的方法及系统
CN109558287A (zh) * 2018-12-13 2019-04-02 腾讯科技(深圳)有限公司 一种固态硬盘寿命预测方法、装置和系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102306193A (zh) * 2011-09-05 2012-01-04 浪潮电子信息产业股份有限公司 一种磁盘数据库性能测试方法
CN106557535A (zh) * 2016-06-23 2017-04-05 哈尔滨安天科技股份有限公司 一种大数据级Pcap文件的处理方法及系统
CN108132760A (zh) * 2018-01-19 2018-06-08 湖南国科微电子股份有限公司 一种提升ssd读性能的方法及系统
CN109558287A (zh) * 2018-12-13 2019-04-02 腾讯科技(深圳)有限公司 一种固态硬盘寿命预测方法、装置和系统

Also Published As

Publication number Publication date
CN113485653A (zh) 2021-10-08

Similar Documents

Publication Publication Date Title
EP3252609A1 (en) Cache data determination method and device
CN102135979B (zh) 数据清洗方法及装置
CN107122126B (zh) 数据的迁移方法、装置和系统
CN106486167B (zh) 改进闪速存储器清除的方法和系统
CA2442188A1 (en) Methods and mechanisms for proactive memory management
CN113485653B (zh) 一种ssd及其应用场景识别方法、装置和存储介质
CN111176565B (zh) 确定应用的存储负载的方法和设备
CN109918448A (zh) 一种基于用户行为的云存储数据分级方法
CN116402117B (zh) 图像分类卷积神经网络剪枝方法及芯粒器件数据分配方法
CN111125417B (zh) 一种数据搜索方法、装置、电子设备及存储介质
CN111125658A (zh) 识别欺诈用户的方法、装置、服务器和存储介质
CN112148690A (zh) 一种文件缓存方法、文件访问请求处理方法及装置
CN110175100B (zh) 一种存储盘故障预测方法及预测系统
CN111142794A (zh) 一种数据分类存储的方法、装置、设备及存储介质
CN111984602A (zh) 数据流的管理方法和装置
CN117113174A (zh) 一种模型训练的方法、装置、存储介质及电子设备
CN111225267B (zh) 内容缓存调度方法、装置和系统、内容分发网络节点
CN110955845A (zh) 用户兴趣识别方法及装置、搜索结果处理方法及装置
CN113127636B (zh) 一种文本聚类类簇中心点选取方法及装置
CN111860299A (zh) 目标对象的等级确定方法、装置、电子设备及存储介质
CN112446490A (zh) 一种网络训练的数据集缓存方法、装置、设备及存储介质
CN111177022B (zh) 一种特征提取方法、装置、设备及存储介质
CN106970924B (zh) 一种话题排序方法及装置
KR100585176B1 (ko) 입출력 서브시스템에서 입출력 명령의 부하 판단 방법 및장치
CN112380256A (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