一种硬盘质量检测系统及方法与流程

文档序号:17130440发布日期:2019-03-16 01:07阅读:335来源:国知局
一种硬盘质量检测系统及方法与流程

本申请涉及互联网技术领域,具体涉及一种硬盘质量检测系统及方法。



背景技术:

无论是存储设备还是服务器,硬盘作为其重要的组成部分,用于存储用户数据。硬盘作为承载信息的重要载体,其工作状态,直接影响主体设备服务质量。当硬盘出现故障时,导致所存储的数据丢失,进而造成用户无法读取数据。因此,需要对对硬盘的健康状态进行监测和评估,以便可以根据硬盘的健康状态进行及时更换。

现有技术中,主要利用自我监测、分析及报告技术(self-monitoringanalysisandreportingtechnology,smart)对硬盘的磁头、盘片、马达以及电路进行监测。然而,现有的监测方式仅在用户想要获取硬盘的当前状况时,根据用户的触发操作开始进行监测。同时,每次监测的数据未被充分利用来对硬盘的健康状况进行分析,以便及时了解硬盘状况的变化趋势,进而防患于未然,避免硬盘出现故障而导致服务器瘫痪,影响用户使用。



技术实现要素:

有鉴于此,本申请实施例提供一种硬盘质量检测系统及方法,以实现实时获取硬盘当前质量,以便及时更换硬盘,避免数据丢失。

为解决上述问题,本申请实施例提供的技术方案如下:

在本申请实施例第一方面,提供了一种硬盘质量检测系统,该系统可以包括:

部署模块,用于根据用户提交的检测任务,部署检测集群;所述检测集群包括至少一个硬盘;

检测模块,用于周期性地检测所述硬盘的运行情况,并获取硬盘信息;

数据库,用于存储所述硬盘信息;

信息处理模块,用于从所述数据库中提取所述硬盘信息,并分析所述硬盘信息以获得所述硬盘的质量变化趋势。

在一种可能的实现方式中,所述信息处理模块,还用于根据所述硬盘信息生成图表;所述图表用于反映所述硬盘的质量变化趋势;所述图表的格式为csv或excel。

在一种可能的实现方式中,所述系统还包括:

显示模块,用于调用所述信息处理模块生成的所述图表在显示界面内进行显示。

在一种可能的实现方式中,所述系统还包括:

预测模块,用于根据所述信息处理模块的分析结果以及预设阈值,预测所述硬盘将要发生故障的时刻。

在一种可能的实现方式中,所述系统还包括:

换盘模块,用于在所述硬盘即将出现故障时,将所述硬盘中的数据复制到其它硬盘中,以避免数据丢失。

在一种可能的实现方式中,当所述检测集群包括至少两个硬盘时,为所述硬盘分配id;

所述数据库,用于根据所述硬盘id存储所述硬盘信息。

在一种可能的实现方式中,所述至少两个所述硬盘属于不同存储节点;或,所述至少两个所述硬盘属于相同存储节点;所述存储节点包括至少一个所述硬盘。

本申请实施例第二方面,提供了一种硬盘质量检测方法,所述方法应用于第一方面所述检测系统,所述方法包括:

响应于用户的触发操作,部署检测集群;所述检测集群包括至少一个硬盘;

对所述检测集群中任意一个所述硬盘的运行情况进行周期性地检测,并将获取的硬盘信息发送给数据库;

接收所述硬盘信息并进行存储;

提取所述硬盘信息并进行分析,以获得所述硬盘的质量变化趋势。

在一种可能的实现方式中,所述方法还包括:

根据所述硬盘信息生成图表;所述图表用于反映所述硬盘质量变化趋势;所述图表的格式为csv或excel。

在一种可能的实现方式中,所述方法还包括:

调用所述图表在显示界面内进行显示。

在一种可能的实现方式中,所述方法还包括:

根据所述硬盘质量变化趋势以及预设阈值,预测所述硬盘将要发生故障的时刻。

在一种可能的实现方式中,所述方法还包括:

当所述硬盘即将出现故障时,将所述硬盘中的数据复制到其它硬盘中,以避免数据丢失。

在一种可能的实现方式中,当所述检测集群中包括至少两个所述硬盘时,所述方法还包括:

为所述硬盘分配id;并根据所述硬盘id存储所述硬盘信息。

在一种可能的实现方式中,所述至少两个所述硬盘属于不同存储节点;或,属于相同存储节点;所述存储节点包括至少一个所述硬盘。

由此可见,本申请实施例具有如下有益效果:

本申请实施例可以根据用户所提交的检测任务部署检测集群,该检测集群中至少包括一个硬盘;然后,对检测集群中的每个硬盘进行周期性检测以获取该硬盘的硬盘质量信息,并将每次获取的硬盘质量信息进行保存,然后在对多次获取的硬盘质量信息进行分析处理,以获得该硬盘质量变化趋势,从而使得用户可以准确获知该硬盘的运行情况,以便在硬盘即将出现故障之前,采取急救措施,避免硬盘中数据丢失,从而保证服务器正常运行。

附图说明

图1为本申请实施例提供的示例性应用场景的框架示意图;

图2为本申请实施例提供的一种硬盘检测系统结构图;

图3为本申请实施例提供的另一种硬盘检测系统结构图;

图4为本申请实施例提供的一种硬盘检测方法的流程图。

具体实施方式

为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请实施例作进一步详细的说明。

为便于理解本申请的技术方案,下面先对本申请的背景技术进行说明。

发明人在对传统的硬盘检测技术研究中发现,传统的检测技术仅能对当前的硬盘运行状况进行检测,无法在硬盘工作期间的健康变化趋势进行分析,使得用户无法对该硬盘的健康状况进行有效评估。

基于此,本申请实施例提供了一种硬盘质量检测系统和方法,由检测系统中的部署模块根据用户提交的检测任务,部署检测集群;然后,由检测模块对检测集群中的硬盘进行周期性地检测,以获得硬盘信息,并将每次获取的硬盘信息存储在数据库中;最后,由信息处理模块从数据库中提取硬盘信息,以分析获得该硬盘质量变化趋势,以便用户可以根据该硬盘的质量变化趋势及时更换硬盘,进而避免硬盘故障而造成数据丢失。

参见图1,该图为本申请实施例提供的示例性应用场景的框架示意图。其中,本申请实施例提供的硬盘质量检测系统可以部署于服务器20中。

实际应用中,检测系统可以同时对分布式存储系统10中存储节点1和存储节点2中的硬盘质量进行检测,具体实现时,将需要被检测的硬盘添加到检测集群中,由检测模块周期性地对每个硬盘的运行情况进行检测,然后由信息处理模块对获取的多次硬盘信息进行分析,以获得每个硬盘质量变化趋势。

本领域技术人员可以理解,图1所示的框架示意图仅是本申请的实施方式可以在其中得以实现的一个示例。本申请实施方式的适用范围不受到该框架任何方面的限制。

需要注意的是,分布式存储系统10可以至少包括一个存储节点,而每个存储节点至少包括一个硬盘。还需要注意的是,本申请实施例中服务器20可以是现有的、正在研发的或将来研发的、能够向用户提供信息推荐的应用服务的设备的一个示例,本申请的实施方式在此方面不受任何限制。

为便于理解本申请实施例提供的一种硬盘质量检测系统,下面将结合附图对该检测系统进行说明。

参见图2,该图为本申请实施例提供的一种硬盘质量检测系统结构图,如图2所示,该系统可以包括:部署模块201、检测模块202、数据库203以及信息处理模块204。

部署模块201,用于根据用户提交的检测任务,部署检测集群;所述检测集群包括至少一个硬盘。

本实施例,用户可以将该检测系统部署在服务器中,然后登录到web服务界面添加需要被检测的硬盘,然后由部署模块根据添加的硬盘形成检测集群。在具体实现时,用户可以通过(red-hatpackagemanager,rpm)软件包管理器部署检测系统,也可以通过源码编译bootstrap方式部署检测系统。另外,部署模块可以利用ansiable自动化运维工具对检测集群进行维护。

可以理解的是,当检测集群中包括至少两个硬盘时,为区分每个硬盘,检测系统可以为每个硬盘分配id,以便根据该硬盘id获取该硬盘的运行状况。另外,当检测集群中包括至少两个硬盘是,

检测模块202,用于周期性地检测所述硬盘的运行情况,并获取硬盘信息。

本实施例中,当部署完检测集群后,检测模块202可以根据预设周期对检测集群中的每个硬盘的运行情况进行周期性检测,以获取每个硬盘在每个检测周期内的硬盘信息。该硬盘信息用于表示该硬盘质量的信息,具体可以表示该硬盘的磁头、盘片、马达、电路的运行情况。在实际应用时,该硬盘信息可以包括底层数据读取错误率、磁盘校准重试次数、温度、磁盘通电次数等等。

在具体实现时,检测模块可以利用smart检测技术对检测集群中的每个硬盘进行检测,以获取每个硬盘的信息。需要说明的是,检测模块可以提供两种不同的检测方式,分别是长检测方式和短检测方式。在具体使用时,用户可以根据实际需求,选择不同的检测方式,本实施例在此不做限定。

数据库203,用于存储所述硬盘信息。

本实施例中,数据库存储检测模块在每个检测周期获取的硬盘信息。当检测集群中包括多个硬盘时,数据库可以根据每个硬盘id进行相应的存储,即按照每个硬盘id,将属于该硬盘的硬盘信息存储在该硬盘id下所分配的存储空间。

在实际应用中,为避免数据库所存储的信息过多而无法继续进行存储,可以定时清除数据库中的硬盘信息,以保证数据库可以正常工作。

信息处理模块204,用于从所述数据库203中提取所述硬盘信息,并分析所述硬盘信息以获得所述硬盘质量变化趋势。

本实施例中,信息处理模块从数据库中提取硬盘信息,并对该硬盘信息进行分析处理,以获得该硬盘质量变化趋势。

在一种可能的实现方式中,信息处理模块204,还可以用于根据硬盘信息生成图表,以利用该图表直观地反映该硬盘质量变化趋势,其中,该图表的格式可以为csv或excel

另外,该系统还可包括显示模块205,如图3所示,该显示模块可以调用信息处理模块所生成的图标,然后在显示界面进行显示,以便于用户可以实时查看。在具体实现时,当检测集群中包括多个硬盘是,可以在显示界面内显示硬盘列表,用户可以通过点击硬盘来查看该硬盘的详细信息。

在一种可能的实现方式中,该检测系统还可以包括:预测模块206,该预测模块可以根据信息处理的分析结果以及预设阈值,预测该硬盘将要发生故障的时刻。其中预设阈值为该硬盘可能会发生故障所对应的阈值。例如,当硬盘的长期工作温度到达预设温度时,表明该硬盘可能将要发生故障,本实施例中,信息处理模块根据长期检测获取的硬盘信息获得该硬盘的工作温度,然后由预测模块根据获得的工作温度以及预设温度值,预测硬盘将要发生故障的时刻。

可以理解的是,为避免硬盘故障导致数据丢失的风险,该检测系统还可以包括换盘模块207,该换盘模块用户在硬盘即将出现故障时,将该硬盘中的数据复制到其它硬盘中。

另外,还可以设置告警模块,当预测模块206预测硬盘将要发生故障时刻时,告警模块可以向用户发送告警信息。具体实现时,可以以发送邮件的方式通知用户硬盘即将出现故障。

通过上述描述可知,本申请实施例首先由检测系统中的部署模块根据用户提交的检测任务,部署检测集群;然后,由检测模块对检测集群中的硬盘进行周期性地检测,以获得硬盘信息,并将每次获取的硬盘信息存储在数据库中;最后,由信息处理模块从数据库中提取硬盘信息,以分析获得该硬盘质量变化趋势,以便用户可以根据该硬盘的质量变化趋势及时更换硬盘,进而避免硬盘故障而造成数据丢失。

基于上述系统实施例,本申请实施例还提供了一种硬盘质量检测方法,下面将结合附图对该方法进行说明。

参见图4,该图为本申请实施例提供的一种硬盘质量检测方法的流程图,如图4所示,该方法可以应用于图2或图3所示的检测系统中,该方法可以包括:

s401:响应于用户的触发操作,部署检测集群。

本实施例中,检测系统可以根据用户的添加操作,将分布式存储系统中存储节点中的硬盘进行部署形成检测集群,该检测集群至少包括一个硬盘。当检测集群中包括至少两个硬盘时,两个硬盘可以同时属于同一个存储节点,也可以属于不同的存储节点。

s402:对检测集群中任意一个硬盘的运行情况进行周期性地检测,并将获取的硬盘信息发送给数据库。

本实施例中,当检测集群部署完成后,可以根据预先设定的检测周期对检测集群中的任意一个硬盘进行周期性地检测,以便周期性地获取硬盘当前的硬盘信息,该硬盘信息用于表征该硬盘当前的运行情况,然后将硬盘信息发送给数据库进行存储。

s403:接收硬盘信息并进行存储。

本实施例中,当数据库接收到硬盘信息时,对该硬盘信息进行存储。在实际应用中,为便于数据库可以继续存储后续接收的硬盘信息,可以在设定的时间内删除部分硬盘信息。具体实现时,该检测系统可以包括计时器,由该计时器计算每个硬盘的信息存储的时长,当硬盘信息存储的时长到达预设时间时,则删除该硬盘信息。

s404:提取硬盘信息并进行分析,以获得硬盘的质量变化趋势。

本实施例中,可以定期提取数据库中硬盘信息,并对提取的硬盘信息进行分析,以获得该硬盘的质量变化趋势。

在一种可能的实现方式中,所述方法还包括:

根据所述硬盘信息生成图表;所述图表用于反映所述硬盘质量变化趋势;所述图表的格式为csv或excel。

在一种可能的实现方式中,所述方法还包括:

调用所述图表在显示界面内进行显示。

在一种可能的实现方式中,所述方法还包括:

根据所述硬盘质量变化趋势以及预设阈值,预测所述硬盘将要发生故障的时刻。

在一种可能的实现方式中,所述方法还包括:

当所述硬盘即将出现故障时,将所述硬盘中的数据复制到其它硬盘中,以避免数据丢失。

在一种可能的实现方式中,当所述检测集群中包括至少两个所述硬盘时,所述方法还包括:

为所述硬盘分配id;并根据所述硬盘id存储所述硬盘信息。

在一种可能的实现方式中,所述至少两个所述硬盘属于不同存储节点;或,属于相同存储节点;所述存储节点包括至少一个所述硬盘。

需要说明的是,本实施例中各步骤的实现可以参见图2和图3各个模块的具体实现,本实施例在此不再赘述。

通过上述描述,本申请实施例可以根据用户所提交的检测任务部署检测集群,该检测集群中至少包括一个硬盘;然后,对检测集群中的每个硬盘进行周期性检测以获取该硬盘的硬盘质量信息,并将每次获取的硬盘质量信息进行保存,然后在对多次获取的硬盘质量信息进行分析处理,以获得该硬盘质量变化趋势,从而使得用户可以准确获知该硬盘的运行情况,以便在硬盘即将出现故障之前,采取急救措施,避免硬盘中数据丢失,从而保证服务器正常运行。

需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统或装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:只存在a,只存在b以及同时存在a和b三种情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。

还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1