【发明授权】一种后端存储设备的管理方法、装置、设备以及存储介质_郑州云海信息技术有限公司_201811067406.6 

申请/专利权人:郑州云海信息技术有限公司

申请日:2018-09-13

公开(公告)日:2021-11-19

公开(公告)号:CN109299025B

主分类号:G06F13/16(20060101)

分类号:G06F13/16(20060101);G06F13/42(20060101)

优先权:

专利状态码:有效-授权

法律状态:2021.11.19#授权;2019.03.01#实质审查的生效;2019.02.01#公开

摘要:本发明公开了一种后端存储设备的管理方法,通过获取后端存储设备的设备类型;根据预设的设备类型与设备发现命令集之间的映射关系,确定与设备类型对应的设备发现命令集;循环执行设备发现命令集,获取后端存储设备的设备信息。本申请能够通过识别出后端存储设备的设备类型,根据不同设备类型采取对应的设备发现方法,保证存储对多种不同协议、类型和型号的后端设备的兼容性。此外,本申请还提供了一种具有上述技术优点的后端存储设备的管理装置、设备以及计算机可读存储介质。

主权项:1.一种后端存储设备的管理方法,其特征在于,包括:获取后端存储设备的设备类型;根据预设的设备类型与设备发现命令集之间的映射关系,确定与所述设备类型对应的设备发现命令集;所述设备发现命令集为命令列表的方式;循环执行所述设备发现命令集,获取所述后端存储设备的设备信息;其中:所述获取后端存储设备的设备类型包括:获取所述后端存储设备的供应商ID以及产品ID;根据所述供应商ID以及所述产品ID,得到所述后端存储设备的设备类型;所述获取所述后端存储设备的供应商ID以及产品ID包括:获取所述后端存储设备的协议类型;当所述后端存储设备的协议类型为SCSI协议时,发送Inquiry指令获取供应商ID以及产品ID;当所述后端存储设备的协议类型为NVMe协议时,发送Identify指令获取供应商ID以及产品ID。

全文数据:一种后端存储设备的管理方法、装置、设备以及存储介质技术领域本发明涉及存储技术领域,特别是涉及一种后端存储设备的管理方法、装置、设备以及计算机可读存储介质。背景技术存储系统一般分为前端Frontend和后端Backend,前端主要用来与主机进行交互,接收和处理主机发送的命令和相关IO请求;后端则用来管理后端设备BackendDevice,包括硬盘、机箱等。如果本机存储连接了外部存储,那么后端还需要对外部存储进行管理,具体来说,就是管理外部存储的控制器。一般来说,对于不同的后端设备在执行设备发现时,需要应用不同的策略。比如,对于硬盘而言,我们关注硬盘型号、硬盘唯一标识、硬盘容量、硬盘块大小等信息;对于机箱,我们仅关注其型号和唯一标识,而容量、块大小等信息毫无意义;对于外部存储控制器,我们仅关心其型号。更进一步,对于硬盘来说,不同厂商的硬盘,可能对某协议如SCSI协议的支持程度不同。例如,A产商的盘支持X命令,而B厂商的盘不支持X命令,那么对于A、B厂商的盘,我们也需要定义不同的设备发现命令。此外,存储设备若同时支持多种协议如NVMe协议和SCSI协议的硬盘,那么对于硬盘的发现则需要经过完全不同的协议栈进行。因此,急需一种合理的方法,对不同类型的后端设备以及同一类型的不同厂商的后端设备进行分类管理和分类发现。发明内容本发明的目的是提供一种后端存储设备的管理方法、装置、设备以及计算机可读存储介质,以对不同类型的后端存储设备进行分类管理和发现。为解决上述技术问题,本发明提供一种后端存储设备的管理方法,包括:获取后端存储设备的设备类型;根据预设的设备类型与设备发现命令集之间的映射关系,确定与所述设备类型对应的设备发现命令集;循环执行所述设备发现命令集,获取所述后端存储设备的设备信息。可选地,所述获取后端存储设备的设备类型包括:获取所述后端存储设备的供应商ID以及产品ID;根据所述供应商ID以及所述产品ID,得到所述后端存储设备的设备类型。可选地,所述获取所述后端存储设备的供应商ID以及产品ID包括:获取所述后端存储设备的协议类型;当所述后端存储设备的协议类型为SCSI协议时,发送Inquiry指令获取供应商ID以及产品ID;当所述后端存储设备的协议类型为NVMe协议时,发送Identify指令获取供应商ID以及产品ID。可选地,所述获取所述后端存储设备的协议类型包括:接收设备驱动上报的所述后端存储设备的协议类型。可选地,所述设备发现命令集为命令列表的方式。本发明还提供了一种后端存储设备的管理装置,包括:设备类型获取模块,用于获取后端存储设备的设备类型;设备发现命令集确定模块,用于根据预设的设备类型与设备发现命令集之间的映射关系,确定与所述设备类型对应的设备发现命令集;设备信息获取模块,用于循环执行所述设备发现命令集,获取所述后端存储设备的设备信息。可选地,所述设备类型获取模块包括:ID信息获取单元,用于获取所述后端存储设备的供应商ID以及产品ID;设备类型获取单元,用于根据所述供应商ID以及所述产品ID,得到所述后端存储设备的设备类型。可选地,所述ID信息获取单元包括:协议类型获取子单元,用于获取所述后端存储设备的协议类型;指令发送获取子单元,用于当所述后端存储设备的协议类型为SCSI协议时,发送Inquiry指令获取供应商ID以及产品ID;当所述后端存储设备的协议类型为NVMe协议时,发送Identify指令获取供应商ID以及产品ID。本发明还提供了一种后端存储设备的管理设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现上述任一种所述的后端存储设备的管理方法的步骤。本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种所述的后端存储设备的管理方法的步骤。本发明所提供的后端存储设备的管理方法,通过获取后端存储设备的设备类型;根据预设的设备类型与设备发现命令集之间的映射关系,确定与设备类型对应的设备发现命令集;循环执行设备发现命令集,获取后端存储设备的设备信息。本申请能够通过识别出后端存储设备的设备类型,根据不同设备类型采取对应的设备发现方法,保证存储对多种不同协议、类型和型号的后端设备的兼容性。此外,本申请还提供了一种具有上述技术优点的后端存储设备的管理装置、设备以及计算机可读存储介质。附图说明为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本申请所提供的后端存储设备的管理方法的一种具体实施方式的流程图;图2为本申请中获取后端存储设备的设备类型的具体流程图;图3为本申请所提供的后端存储设备的管理方法的另一种具体实施方式的流程图;图4为本发明实施例提供的后端存储设备的管理装置的结构框图。具体实施方式为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本申请所提供的后端存储设备的管理方法的一种具体实施方式的流程图如图1所示,该方法包括:步骤S101:获取后端存储设备的设备类型;具体地,对于不同设备类型的后端存储设置,可以设置唯一的标识进行区分。对于绝大多数的设备,可以通过供应商ID以及产品ID进行唯一标识。参照图2本申请中获取后端存储设备的设备类型的具体流程图所示,该过程具体包括:步骤S1011:获取所述后端存储设备的供应商ID以及产品ID;步骤S1012:根据所述供应商ID以及所述产品ID,得到所述后端存储设备的设备类型。通过对供应商ID以及产品ID,可以匹配到该后端存储设备的设备类型,以便进行后续的处理。步骤S102:根据预设的设备类型与设备发现命令集之间的映射关系,确定与所述设备类型对应的设备发现命令集;具体地,设备发现命令集为命令列表的方式。本申请实施例预先对设备类型与设备发现命令集之间建立了映射关系,通过查找该映射关系,即可得到当前设备类型对应的设备发现命令集。其中,不同的设备发明命令集对应不同的设备发现方法。这样,针对不同设备类型可以确定得到与之对应的设备发现方法。步骤S103:循环执行所述设备发现命令集,获取所述后端存储设备的设备信息。在得到设备发现命令集之后,循环执行该设备发现命令集,以获取得到后端存储设备的设备信息。本发明所提供的后端存储设备的管理方法,通过获取后端存储设备的设备类型;根据预设的设备类型与设备发现命令集之间的映射关系,确定与设备类型对应的设备发现命令集;循环执行设备发现命令集,获取后端存储设备的设备信息。本申请能够通过识别出后端存储设备的设备类型,根据不同设备类型采取对应的设备发现方法,保证存储对多种不同协议、类型和型号的后端设备的兼容性。一般情况下,后端存储设备的协议类型可以包括SCSI协议以及NVMe协议两种。对于不同的协议,在对后端存储设备进行发现时需要采用不同的命令。因此,在上述实施例的基础上,本申请进一步增加了对后端存储设备的协议类型进行判断的实施例,以分类进行设备发现。参照图3本申请所提供的后端存储设备的管理方法的另一种具体实施方式的流程图,该方法包括:步骤S201:接收设备驱动上报的后端存储设备的协议类型;其中,SCSISmallComputerSystemInterface,小型计算机系统接口,是一种用于计算机和智能设备之间硬盘、软驱、光驱、打印机、扫描仪等系统级接口的独立处理器标准。SCSI是一种智能的通用接口标准。NVMeNon-VolatileMemoryexpress,非易失性内存主机控制器接口规范是一个逻辑设备接口规范。其是与AHCI类似的、基于设备逻辑接口的总线传输协议规范相当于通讯协议中的应用层,用于访问通过PCI-ExpressPCIe总线附加的非易失性内存介质,虽然理论上不一定要求PCIe总线协议。本申请可以预先为支持不同协议类型的设备定义各自的标识,在本发明中,支持SCSI和NVMe两种存储协议。一般来说,协议类型通过端口类型即可进行判断,对于常用的SAS端口、FC端口和iSCSI端口来说,都是执行SCSI协议,而对于NVMe的端口来说,则执行NVMe协议。其中,对于获取VendorID和ProductID的命令,NVMe协议是Identify命令,而SCSI协议是Inquiry命令。步骤S202:当所述后端存储设备的协议类型为SCSI协议时,发送Inquiry指令获取供应商ID以及产品ID;当所述后端存储设备的协议类型为NVMe协议时,发送Identify指令获取供应商ID以及产品ID;步骤S203:根据获取的后端存储设备的供应商ID以及产品ID进行匹配;步骤S204:根据所述供应商ID以及所述产品ID,得到所述后端存储设备的设备类型。预先为不同的设备类型定义各自的标识,本发明主要支持三种类型的后端设备,即硬盘Local、机箱Enclosure及外部存储控制器Backend。步骤S205:根据预设的设备类型与设备发现命令集之间的映射关系,确定与所述设备类型对应的设备发现命令集;为不同的后端设备类型定义各自的初始化结构、设备发现命令序列等。初始化结构中主要定义如下的设备信息:供应商ID、产品ID、设备类型、端口类型以及设备发现命令集。通过初始化结构可以根据供应商ID、产品ID、设备类型、端口类型这些信息确定得到对应的设备发现命令集,即确定所要采取的设备发现方法,从而对后端存储设备的信息进行获取。步骤S206:循环执行所述设备发现命令集,获取所述后端存储设备的设备信息。本方法适用于对多种类型的存储后端设备进行分类识别和管理的方法,能够准确识别后端存储设备类型和型号,并针对不同类型和型号的的后端存储采取不同的设备发现即获取设备信息方法,保证存储对多种协议、类型和型号的后端设备的兼容性。下面对本发明实施例提供的后端存储设备的管理装置进行介绍,下文描述的后端存储设备的管理装置与上文描述的后端存储设备的管理方法可相互对应参照。图4为本发明实施例提供的后端存储设备的管理装置的结构框图,参照图4后端存储设备的管理装置可以包括:设备类型获取模块100,用于获取后端存储设备的设备类型;设备发现命令集确定模块200,用于根据预设的设备类型与设备发现命令集之间的映射关系,确定与所述设备类型对应的设备发现命令集;设备信息获取模块300,用于循环执行所述设备发现命令集,获取所述后端存储设备的设备信息。作为一种具体实施方式,本申请所提供的后端存储设备的管理装置,所述设备类型获取模块包括:ID信息获取单元,用于获取所述后端存储设备的供应商ID以及产品ID;设备类型获取单元,用于根据所述供应商ID以及所述产品ID,得到所述后端存储设备的设备类型。作为一种具体实施方式,本申请所提供的后端存储设备的管理装置,所述ID信息获取单元包括:协议类型获取子单元,用于获取所述后端存储设备的协议类型;指令发送获取子单元,用于当所述后端存储设备的协议类型为SCSI协议时,发送Inquiry指令获取供应商ID以及产品ID;当所述后端存储设备的协议类型为NVMe协议时,发送Identify指令获取供应商ID以及产品ID。本实施例的后端存储设备的管理装置用于实现前述的后端存储设备的管理方法,因此后端存储设备的管理装置中的具体实施方式可见前文中的后端存储设备的管理方法的实施例部分,例如,设备类型获取模块100,设备发现命令集确定模块200,设备信息获取模块300,分别用于实现上述后端存储设备的管理方法中步骤S101,S102,S103,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。本发明所提供的后端存储设备的管理装置,通过获取后端存储设备的设备类型;根据预设的设备类型与设备发现命令集之间的映射关系,确定与设备类型对应的设备发现命令集;循环执行设备发现命令集,获取后端存储设备的设备信息。本申请能够通过识别出后端存储设备的设备类型,根据不同设备类型采取对应的设备发现方法,保证存储对多种不同协议、类型和型号的后端设备的兼容性。此外,本申请还提供了一种后端存储设备的管理设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现上述任一种所述的后端存储设备的管理方法的步骤。本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种所述的后端存储设备的管理方法的步骤。本申请所提供的后端存储设备的管理设备以及计算机可读存储介质,与上述后端存储设备的管理方法相对应,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。本申请所提供的后端存储设备的管理方法、装置、设备以及计算机可读存储介质,通过不同类型的后端设备进行分类识别和管理,可以保证存储对后端设备的有效管理和划分,提高设备的可靠性。本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器RAM、内存、只读存储器ROM、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。以上对本发明所提供的后端存储设备的管理方法、装置、设备以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

权利要求:1.一种后端存储设备的管理方法,其特征在于,包括:获取后端存储设备的设备类型;根据预设的设备类型与设备发现命令集之间的映射关系,确定与所述设备类型对应的设备发现命令集;循环执行所述设备发现命令集,获取所述后端存储设备的设备信息。2.如权利要求1所述的后端存储设备的管理方法,其特征在于,所述获取后端存储设备的设备类型包括:获取所述后端存储设备的供应商ID以及产品ID;根据所述供应商ID以及所述产品ID,得到所述后端存储设备的设备类型。3.如权利要求2所述的后端存储设备的管理方法,其特征在于,所述获取所述后端存储设备的供应商ID以及产品ID包括:获取所述后端存储设备的协议类型;当所述后端存储设备的协议类型为SCSI协议时,发送Inquiry指令获取供应商ID以及产品ID;当所述后端存储设备的协议类型为NVMe协议时,发送Identify指令获取供应商ID以及产品ID。4.如权利要求3所述的后端存储设备的管理方法,其特征在于,所述获取所述后端存储设备的协议类型包括:接收设备驱动上报的所述后端存储设备的协议类型。5.如权利要求1至4任一项所述的后端存储设备的管理方法,其特征在于,所述设备发现命令集为命令列表的方式。6.一种后端存储设备的管理装置,其特征在于,包括:设备类型获取模块,用于获取后端存储设备的设备类型;设备发现命令集确定模块,用于根据预设的设备类型与设备发现命令集之间的映射关系,确定与所述设备类型对应的设备发现命令集;设备信息获取模块,用于循环执行所述设备发现命令集,获取所述后端存储设备的设备信息。7.如权利要求6所述的后端存储设备的管理装置,其特征在于,所述设备类型获取模块包括:ID信息获取单元,用于获取所述后端存储设备的供应商ID以及产品ID;设备类型获取单元,用于根据所述供应商ID以及所述产品ID,得到所述后端存储设备的设备类型。8.如权利要求7所述的后端存储设备的管理装置,其特征在于,所述ID信息获取单元包括:协议类型获取子单元,用于获取所述后端存储设备的协议类型;指令发送获取子单元,用于当所述后端存储设备的协议类型为SCSI协议时,发送Inquiry指令获取供应商ID以及产品ID;当所述后端存储设备的协议类型为NVMe协议时,发送Identify指令获取供应商ID以及产品ID。9.一种后端存储设备的管理设备,其特征在于,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如权利要求1至5任一项所述的后端存储设备的管理方法的步骤。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的后端存储设备的管理方法的步骤。

百度查询: 郑州云海信息技术有限公司 一种后端存储设备的管理方法、装置、设备以及存储介质