CN103714146B - 存储方法及装置 - Google Patents

存储方法及装置 Download PDF

Info

Publication number
CN103714146B
CN103714146B CN201310733355.7A CN201310733355A CN103714146B CN 103714146 B CN103714146 B CN 103714146B CN 201310733355 A CN201310733355 A CN 201310733355A CN 103714146 B CN103714146 B CN 103714146B
Authority
CN
China
Prior art keywords
code file
storage pool
high code
state
user data
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
CN201310733355.7A
Other languages
English (en)
Other versions
CN103714146A (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.)
Huawei Technologies Co Ltd
China Central TV Station
Original Assignee
Huawei Technologies Co Ltd
China Central TV Station
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 Huawei Technologies Co Ltd, China Central TV Station filed Critical Huawei Technologies Co Ltd
Priority to CN201310733355.7A priority Critical patent/CN103714146B/zh
Publication of CN103714146A publication Critical patent/CN103714146A/zh
Application granted granted Critical
Publication of CN103714146B publication Critical patent/CN103714146B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供一种存储方法及装置。该方法包括:当用户设备在代理层预览低码文件时,在用户数据层中定位与所述低码文件对应的高码文件所在的存储池;确定所述存储池所处的状态;如果确定所述存储池处于在线状态,则在所述用户设备已请求读取所述高码文件的情况下从所述存储池中回迁所述高码文件;如果确定所述存储池处于休眠状态,则唤醒所述存储池,在所述用户设备已请求读取所述高码文件的情况下从所述存储池中回迁所述高码文件。因此,无需采用离线存储,有效地提升回迁效率,在用户数据层大量的存储池中,可以将存储池设置成休眠状态,从而减少大量的存储设备带来大量的能耗,降低运维成本。

Description

存储方法及装置
技术领域
本发明实施例涉及通信技术领域,并且更具体地,涉及一种存储方法及装置。
背景技术
电视台的数据文件,如音视频素材和成片文件等,通常迁移到MAM(Media Asset Management,媒资管理系统)中采用在线存储和离线存储的方式进行存储。在线存储是指存储设备及所存储的数据时刻保持“在线”状态,满足应用系统的高效访问,电视台普遍采用硬盘作为在线存储的存储设备,在线存储的容量一般不超过500TB,存储近期(约两周内)的数据文件。离线存储容量需求大,电视台普遍采用磁带库作为离线存储的存储设备,存储非近期(如超过两周)的数据文件,还对所有在线存储的数据文件进行归档备份,以防范可能发生的数据灾难。
当电视台的制作或播出系统需要使用某些数据文件时,首先,将会在MAM系统的在线存储中定位所需的数据文件并进行回迁,如果在MAM系统的在线存储中未读取到所需数据文件,那么将在离线存储中回调。由于离线存储在物理上远离应用系统,并且从磁带库中读取数据文件所需时间较长(通常为分钟级别),导致回迁效率低下。另外,在线状态的存储设备还带来大量的能耗,增加运维成本。
发明内容
本发明实施例提供一种存储方法及装置,能够提升回迁效率,并减少能耗,降低运维成本。
第一方面,提供了一种存储方法,该方法包括:当用户设备在代理层预览低码文件时,在用户数据层中定位与所述低码文件对应的高码文件所在的存储池;确定所述存储池所处的状态;如果确定所述存储池处于在线状态,则在所述用户设备已请求读取所述高码文件的情况下从所述存储池中回迁所述高码文件;如果确定所述存储池处于休眠状态,则唤醒所述存储池,在所述用户设备已请求读取所述高码文件的情况下从所述存储池中回迁所述高码文件。
结合第一方面,在另一种可能的实现方式中,所述确定所述存储池所处的状态,包括:确定所述存储池所处的状态是否为所述在线状态;在确定所述存储池处于非在线状态的情况下,根据所述存储池的健康信息确定所述存储池是否处于所述休眠状态,所述健康信息包括所述存储池的可靠性指标。
结合第一方面及其上述实现方式中的任一种实现方式,在另一种实现方式中,所述在用户数据层中定位与所述低码文件对应的高码文件所在的存储池之前,所述方法还包括:从缓存层或者从代理层中读取所述高码文件的元数据信息;所述在用户数据层中定位所述高码文件所在的存储池,包括:根据所述高码文件的元数据信息在所述用户数据层中定位所述高码文件所在的存储池。
结合第一方面及其上述实现方式中的任一种实现方式,在另一种实现方式中,所述方法还包括:当所述高码文件被请求读取的次数大于或等于数目阈值时,在缓存层中存储所述高码文件。
结合第一方面及其上述实现方式中的任一种实现方式,在另一种实现方式中,所述缓存层的存储设备包括固态硬盘SSD或串行连接小型计算机系统接口SAS硬盘。
结合第一方面及其上述实现方式中的任一种实现方式,在另一种实现方式中,所述代理层的存储设备包括SAS硬盘,或者所述用户数据层的存储设备包括近线NL-SAS硬盘。
结合第一方面及其上述实现方式中的任一种实现方式,在另一种实现方式中,所述方法还包括:当所述高码文件被请求读取的次数大于或等于数目阈值时,设置所述存储池的状态为在线状态;或者当所述高码文件被请求读取的次数小于数目阈值时,设置所述存储池的状态为休眠状态。
结合第一方面及其上述实现方式中的任一种实现方式,在另一种实现方式中,所述方法还包括:当所述高码文件导入所述用户数据层的时间在预设时间段内时,设置所述存储池的状态为在线状态;或者当所述高码文件导入所述用户数据层的时间在预设时间段外时,设置所述存储池的状态为休眠状态。
第二方面,提供了一种存储装置,该装置包括:定位模块,用于当用户设备在代理层预览低码文件时,在用户数据层中定位与所述低码文件对应的高码文件所在的存储池;确定模块,用于确定所述定位模块定位的所述存储池所处的状态;回迁模块,用于如果所述确定模块确定所述存储池处于在线状态,则在所述用户设备已请求读取所述高码文件的情况下从所述存储池中回迁所述高码文件;所述回迁模块还用于如果所述确定模块确定所述存储池处于休眠状态,则唤醒所述存储池,在所述用户设备已请求读取所述高码文件的情况下从所述存储池中回迁所述高码文件。
结合第二方面,在另一种可能的实现方式中,所述确定模块具体用于:确定所述存储池所处的状态是否为所述在线状态;在确定所述存储池处于非在线状态的情况下,根据所述存储池的健康信息确定所述存储池是否处于所述休眠状态,所述健康信息包括所述存储池的可靠性指标。
结合第二方面及其上述实现方式中的任一种实现方式,在另一种实现方式中,所述回迁模块还用于:从缓存层或者从代理层中读取所述高码文件的元数据信息;所述定位模块具体用于:根据所述回迁模块读取的所述高码文件的元数据信息在所述用户数据层中定位所述高码文件所在的存储池。
结合第二方面及其上述实现方式中的任一种实现方式,在另一种实现方式中,所述回迁模块还用于:当所述高码文件被请求读取的次数大于或等于数目阈值时,在缓存层中存储所述高码文件。
结合第二方面及其上述实现方式中的任一种实现方式,在另一种实现方式中,所述缓存层的存储设备包括固态硬盘SSD或串行连接小型计算机系统接口SAS硬盘。
结合第二方面及其上述实现方式中的任一种实现方式,在另一种实现方式中,所述代理层的存储设备包括SAS硬盘,或者所述用户数据层的存储设备包括近线NL-SAS硬盘。
结合第二方面及其上述实现方式中的任一种实现方式,在另一种实现方式中,所述确定模块还用于:当所述高码文件被请求读取的次数大于或等于数目阈值时,设置所述存储池的状态为在线状态;或者所述确定模块还用于:当所述高码文件被请求读取的次数小于数目阈值时,设置所述存储池的状态为休眠状态。
结合第二方面及其上述实现方式中的任一种实现方式,在另一种实现方式中,所述确定模块还用于:当所述高码文件导入所述用户数据层的时间在预设时间段内时,设置所述存储池的状态为在线状态;或者所述确定模块还用于:当所述高码文件导入所述用户数据层的时间在预设时间段外时,设置所述存储池的状态为休眠状态。
本发明实施例当用户设备在代理层预览低码文件时,在用户数据层中定位与低码文件对应的高码文件所在的存储池,确定存储池所处的状态,如果确定存储池处于在线状态,则在用户设备已请求读取高码文件的情况下从存储池中回迁高码文件,如果确定存储池处于休眠状态,则唤醒该存储池,在用户设备已请求读取高码文件的情况下从存储池中回迁高码文件。因此,当用户设备在代理层预览低码文件时,就在用户数据层定位该低码文件对应的高码文件所在的存储池,并且高码文件存放在用户数据层,无需采用离线存储,有效地提升回迁效率,存放高码文件的存储池可以处于在线状态或休眠状态,能够减少能耗,降低运维成本。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例的存储方法的流程图。
图2是本发明一个实施例的用于电视台媒资管理系统的存储系统的示意图。
图3是本发明一个实施例的存储方法的过程的示意性流程图。
图4是本发明一个实施例的存储装置的结构框图。
图5是本发明另一个实施例的存储装置的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例中,用户设备可称之为终端(Terminal)、MS(MobileStation,移动台)、移动终端(Mobile Terminal)等,该用户设备可以经RAN(Radio Access Network,无线接入网)与一个或多个核心网进行通信,例如,用户设备可以是移动电话(或称为“蜂窝”电话)、具有移动终端的计算机等,例如,用户设备还可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语音和/或数据。用户设备还可以是电视台的制作或播出系统。应理解,本发明实施例对此并不限定。
图1是本发明一个实施例的的存储方法的流程图,该方法可用于电视台媒资管理系统。
101,当用户设备在代理层预览低码文件时,在用户数据层中定位与低码文件对应的高码文件所在的存储池。
其中,低码文件,也称为高码文件的索引文件,是高码文件经码率和格式转换后的低码率的文件。
102,确定存储池所处的状态。
在用户数据(User Data)层中存储有大量的高码文件,高码文件所在的存储池(Storage Pool)具有的状态包括在线状态和非在线状态的休眠状态,存储池当前可能处于在线状态,或者存储池当前处于休眠状态,休眠状态是可唤醒的。可选地,存储池为非在线状态时,可能出现故障,导致存储池不可唤醒。
需要说明的是,本发明在用户数据层存储的高码文件可以不包括高码文件的元数据部分,高码文件的元数据信息存储在代理层中。
103,如果确定存储池处于在线状态,则在用户设备已请求读取高码文件的情况下从存储池中回迁高码文件。
104,如果确定存储池处于休眠状态,则唤醒存储池,在用户设备已请求读取高码文件的情况下从存储池中回迁高码文件。
本发明实施例当用户设备在代理层预览低码文件时,在用户数据层中定位与低码文件对应的高码文件所在的存储池,确定存储池所处的状态,如果确定存储池处于在线状态,则在用户设备已请求读取高码文件的情况下从存储池中回迁高码文件,如果确定存储池处于休眠状态,则唤醒存储池,在用户设备已请求读取高码文件的情况下从存储池中回迁高码文件。因此,当用户设备在代理层预览低码文件时,就在用户数据层定位该低码文件对应的高码文件所在的存储池,并且高码文件存放在用户数据层,无需采用离线存储,有效地提升回迁效率。
另外,存放高码文件的存储池可以处于在线状态或休眠状态,在用户数据层大量的存储池中,可以将部分存储池设置成休眠状态,因此,减少大量的存储设备带来大量的能耗,降低运维成本。
可选地,作为一个实施例,在代理(Proxy)层中存储低码文件,以及与低码文件对应的高码文件的索引信息(如元数据信息),当用户设备在代理层预览低码文件时,可以通过代理层中的高码文件的元数据信息在用户数据层中定位高码文件所在的存储池。或者,在缓存(Cache)层,如SSD(Solid StateDisk,固态硬盘)Cache层,缓存了该高码文件的元数据信息,可以通过缓存层中的高码文件的元数据信息在用户数据层中定位高码文件所在的存储池。可选地,可以将代理层中的高码文件的元数据信息迁移到缓存层。
可选地,作为另一个实施例,在步骤102中,确定存储池所处的状态是否为在线状态;在确定存储池处于非在线状态的情况下,可以根据存储池的健康信息确定该存储池是否处于休眠状态。可选地,健康信息可以存储在代理层中,其中健康信息包括存储池的可靠性指标。具体地,健康信息可以是MAID(Massive Arrays Idle Disks,大规模非活动磁盘阵列)信息,可靠性指标包括但不限于坏道的数量或增量、GLIST(Grown Defect List,增长缺陷列表)的数量或增量、已恢复错误(recovered error)的数量或增量、CI(ChunkIsolation,区块隔离)的数量、以及是否为PFF(Predictive Failure and Failure,即将失效或失效)的存储设备。等等。例如,当坏道的数量或增量大于某个阈值时,表示用户数据层中对应的存储池不能快速地唤醒,可以对该存储池进行故障处理。
可选地,作为另一个实施例,当高码文件为热点文件,如被请求读取的次数大于或等于数目阈值时,可以在缓存层中存储高码文件。这样,当用户设备请求读取该高码文件时,可以立即从缓存层中回迁该高码文件,从而进一步地提升回迁效率。
可选地,作为另一个实施例,当高码文件为热点数据文件,即访问频繁的数文件,如被请求读取的次数大于或等于数目阈值时,可以设置该高码文件所在的存储池的状态为在线状态。反之,设置该高码文件所在的存储池的状态为休眠状态。或者,当高码文件为近期文件,如导入用户数据层的时间在预设时间段(如一周或两周)内时,设置该高码文件所在的存储池的状态为在线状态;反之,设置该高码文件所在的存储池的状态为休眠状态。
通过上述方案,在用户数据层大量的存储池中,可以将非热点的高码文件所在的存储池或者将非近期的高码文件所在的存储池设置成休眠状态,从而减少大量的存储设备带来大量的能耗,实现节能,降低运维成本。
可选地,作为另一个实施例,本发明实施例中,缓存层的存储设备可以包括SSD硬盘或SAS(Serial Attached SCSI(Small Computer System Interface,小型计算机系统接口),串行连接小型计算机系统接口)硬盘。或者,代理层的存储设备可以包括SAS硬盘。或者用户数据层的存储设备包括NL(NearLine,近线)-SAS硬盘。优选地,缓存层采用的存储设备的性能优于或等价于代理层采用的存储设备,代理层采用的存储设备的性能优于用户数据层采用的存储设备。例如,缓存层的存储设备采用SSD硬盘,也称为SSD Cache层,代理层的存储设备采用SAS硬盘,用户数据层的存储设备采用NL-SAS硬盘。应理解,本发明实施例对采用的存储设备的类型并不作限制。
下面结合具体的例子详细描述本发明实施例。
图2示出了本发明实施例用于电视台媒资管理系统的存储系统的示意图。在图2的存储系统中描绘了代理层和用户数据层,可选地,可以包括缓存。缓存层,代理层和用户数据层均属于同一个应用系统中。其中,代理层和用户数据层也可以统称为文件系统(File System,FS)。可选地,在物理上,缓存层可以放置SSD硬盘或SAS硬盘,代理层的存储设备可以选用SAS硬盘,用户数据层的存储设备可以采用NL-SAS硬盘。应理解,本发明实施例对此并不限定。可选地,该存储系统的存储容量可以设置在1-2PB。
代理层和用户数据层实现数据文件的静态分级,在代理层存储数据文件的元数据和低码文件,还可以存储用户数据层中的各个存储池的健康信息,并定期刷新存储池的健康信息。在用户数据层存储高码文件,在图2的用户数据层描绘了n(n为正整数)个存储池(pool)。可以将高码文件写入与存储池,可以依次写入或随机写入,优选地,可以将访问频繁的高码文件放在特定的存储池,或者将近期的高码文件放在特定的存储池。等等。应理解,本发明实施例对此并不限定。缓存层可以缓存高码文件或高码文件的元数据信息等,优先地,可以在缓存层缓存一些频繁访问的高码文件。这样,当用户设备(如电视台制作或播出系统)请求读取时,可以快速地从缓存层中回迁该高码文件。
图3是本发明一个实施例的存储方法的过程的示意流程图。图3的方法可以应用于图2的存储系统。
步骤301,用户设备请求预览低码文件。
步骤302,用户设备从代理层读取低码文件。
步骤303,在用户设备数据层定位高码文件所在的存储池。
应理解,本发明实施例步骤302和步骤303可以同时执行,即在用户设备预览低码文件的过程中,就定位高码文件所在的存储池。可选地,在代理层读取元数据信息,或者在缓存层读取元数据信息,根据元数据信息在用户数据层定位高码文件所在的存储池。
步骤305,判断存储池是否为在线状态。如果确定存储池处于在线状态,则在用户设备已请求读取高码文件(即已执行步骤304)的情况下从存储池中回迁高码文件(步骤308a)。如果存储池为非在线状态,则执行步骤306,判断存储池是否为休眠状态,即是否可唤醒,可选地,可以通过在代理层读取存储池的健康信息,可以是MAID信息中的可靠性指标来判断存储池是否可唤醒。具体例子可以参考上述,此处不再赘述。如果确定存储池处于休眠状态,则执行步骤307唤醒存储池,在用户设备已请求读取高码文件(即已执行步骤304)的情况下从存储池中回迁高码文件(步骤308a)。可选地,当用户设备还未请求读取高码文件时,可以将该高码文件所在的处于休眠状态的存储池写入一个标志位,让该存储池处于唤醒待命状态,如果在一定时间内(如30分钟内),用户设备没有请求读取该高码文件,则重置该标志位,即取消该存储池的唤醒待命状态。
应理解,本发明实施例,对于步骤304和确定存储池状态的执行顺序不作限制。
可选地,当高码文件为热点文件,如被请求读取的次数大于或等于数目阈值时,可以设置该高码文件所在的存储池的状态为在线状态或者在缓存层中存储高码文件。这样,当用户设备请求读取该高码文件时,可以立即从缓存层中回迁该高码文件,从而进一步地提升回迁效率。
可选地,在用户数据层大量的存储池中,可以将非热点的高码文件所在的存储池或者将非近期的高码文件所在的存储池设置成休眠状态,从而减少大量的存储设备带来大量的能耗,实现节能,降低运维成本。
本发明实施例当用户设备在代理层预览低码文件时,在用户数据层中定位与低码文件对应的高码文件所在的存储池,确定存储池所处的状态,如果确定存储池处于在线状态,则在用户设备已请求读取高码文件的情况下从存储池中回迁高码文件,如果确定存储池处于休眠状态,则唤醒存储池,在用户设备已请求读取高码文件的情况下从存储池中回迁高码文件。因此,当用户设备在代理层预览低码文件时,就在用户数据层定位该低码文件对应的高码文件所在的存储池,并且高码文件存放在用户数据层,无需采用离线存储或近线存储,有效地提升回迁效率。
图4是本发明一个实施例的存储装置的结构框图。图4的存储装置400包括定位模块401,确定模块402和回迁模块403。
定位模块401,用于当用户设备在代理层预览低码文件时,在用户数据层中定位与低码文件对应的高码文件所在的存储池。
确定模块402,用于确定定位模块401定位的存储池所处的状态。
回迁模块403,用于如果确定模块402确定存储池处于在线状态,则在用户设备已请求读取高码文件的情况下从存储池中回迁高码文件。
回迁模块403还用于如果确定模块402确定存储池处于休眠状态,则唤醒存储池,在用户设备已请求读取高码文件的情况下从存储池中回迁高码文件。
在用户数据层中存储有大量的高码文件,高码文件所在的存储池具有的状态包括在线状态和非在线状态的休眠状态,存储池当前可能处于在线状态,或者存储池当前处于休眠状态。可选地,存储池为非在线状态时,可能出现故障,导致存储池不可唤醒。
需要说明的是,本发明在用户数据层存储的高码文件可以不包括高码文件的元数据部分,高码文件的元数据信息存储在代理层中。
本发明实施例当用户设备在代理层预览低码文件时,在用户数据层中定位与低码文件对应的高码文件所在的存储池,确定存储池所处的状态,如果确定存储池处于在线状态,则在用户设备已请求读取高码文件的情况下从存储池中回迁高码文件,如果确定存储池处于休眠状态,则唤醒存储池,在用户设备已请求读取高码文件的情况下从存储池中回迁高码文件。因此,当用户设备在代理层预览低码文件时,就在用户数据层定位该低码文件对应的高码文件所在的存储池,并且高码文件存放在用户数据层,无需采用离线存储,有效地提升回迁效率。
另外,存放高码文件的存储池可以处于在线状态或休眠状态,在用户数据层大量的存储池中,可以将部分存储池设置成休眠状态,因此,减少大量的存储设备带来大量的能耗,降低运维成本。
存储装置400可实现图1至图3的实施例中涉及的操作,因此为避免重复,不再详细描述。
可选地,作为一个实施例,确定模块402可以具体用于:确定存储池所处的状态是否为在线状态;在确定存储池处于非在线状态的情况下,根据存储池的健康信息确定存储池是否处于休眠状态,健康信息包括存储池的可靠性指标。具体地,健康信息可以是MAID信息,可靠性指标包括但不限于坏道的数量或增量、GLIST的数量或增量、已恢复错误的数量或增量、CI的数量、以及是否为PFF的存储设备。等等。例如,当坏道的数量或增量大于某个阈值时,表示用户数据层中对应的存储池不能快速地唤醒,可以对该存储池进行故障处理。
可选地,作为另一个实施例,回迁模块403还用于从缓存层或者从代理层中读取高码文件的元数据信息;定位模块401可以具体用于根据回迁模块403读取的高码文件的元数据信息在用户数据层中定位高码文件所在的存储池。
可选地,作为另一个实施例,回迁模块403还可以用于:当高码文件被请求读取的次数大于或等于数目阈值时,在缓存层中存储高码文件。这样,当用户设备请求读取该高码文件时,可以立即从缓存层中回迁该高码文件,从而进一步地提升回迁效率。
可选地,作为另一个实施例,缓存层的存储设备可以包括SSD硬盘或SAS硬盘。或者,代理层的存储设备可以包括SAS硬盘。或者用户数据层的存储设备包括NL-SAS硬盘。优选地,缓存层采用的存储设备的性能优于或等价于代理层采用的存储设备,代理层采用的存储设备的性能优于用户数据层采用的存储设备。例如,缓存层的存储设备采用SSD硬盘,也称为SSDCache层,代理层的存储设备采用SAS硬盘,用户数据层的存储设备采用NL-SAS硬盘。应理解,本发明实施例对采用的存储设备的类型并不作限制。
可选地,作为另一个实施例,确定模块402还可以用于:当高码文件为热点数据文件,即访问频繁的数文件,如被请求读取的次数大于或等于数目阈值时,可以设置该高码文件所在的存储池的状态为在线状态。反之,设置该高码文件所在的存储池的状态为休眠状态。或者,确定模块402还可以用于:当高码文件为近期文件,如导入用户数据层的时间在预设时间段(如一周或两周)内时,设置该高码文件所在的存储池的状态为在线状态;反之,设置该高码文件所在的存储池的状态为休眠状态。
通过上述方案,在用户数据层大量的存储池中,可以将非热点的高码文件所在的存储池或者将非近期的高码文件所在的存储池设置成休眠状态,从而减少大量的存储设备带来大量的能耗,实现节能,降低运维成本。
图5是本发明一个实施例的存储装置的结构框图。在该实施例中,设备500包括处理器501和存储器502。处理器501控制存储系统的空间分配设备500的操作,处理器501还可以称为CPU。存储器502可以包括只读存储器和随机存取存储器,并向处理器501提供指令和数据。存储器502的一部分还可以包括非易失性随机存取存储器(NVRAM)。处理器501和存储器502通过总线系统510耦合在一起,其中总线系统510除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图中将各种总线都标为总线系统510。
上述本发明实施例揭示的方法可以应用上述的存储系统的空间分配设备500。其中,处理器501可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器501中的硬件的集成逻辑电路或者软件形式的指令完成。
在本发明实施例中,处理器501通过调用存储器502存储的操作指令(该操作指令可存储在操作系统中),执行如下操作:
当用户设备在代理层预览低码文件时,在用户数据层中定位与低码文件对应的高码文件所在的存储池;确定存储池所处的状态;如果确定存储池处于在线状态,则在用户设备已请求读取高码文件的情况下从存储池中回迁高码文件;如果确定存储池处于休眠状态,则唤醒存储池,在用户设备已请求读取高码文件的情况下从存储池中回迁高码文件。
在用户数据层中存储有大量的高码文件,高码文件所在的存储池具有的状态包括在线状态和非在线状态的休眠状态,存储池当前可能处于在线状态,或者存储池当前处于休眠状态。可选地,存储池为非在线状态时,可能出现故障,导致存储池不可唤醒。
需要说明的是,本发明在用户数据层存储的高码文件可以不包括高码文件的元数据部分,高码文件的元数据信息存储在代理层中。
本发明实施例当用户设备在代理层预览低码文件时,在用户数据层中定位与低码文件对应的高码文件所在的存储池,确定存储池所处的状态,如果确定存储池处于在线状态,则在用户设备已请求读取高码文件的情况下从存储池中回迁高码文件,如果确定存储池处于休眠状态,则唤醒存储池,在用户设备已请求读取高码文件的情况下从存储池中回迁高码文件。因此,当用户设备在代理层预览低码文件时,就在用户数据层定位该低码文件对应的高码文件所在的存储池,并且高码文件存放在用户数据层,无需采用离线存储,有效地提升回迁效率。
另外,存放高码文件的存储池可以处于在线状态或休眠状态,在用户数据层大量的存储池中,可以将部分存储池设置成休眠状态,因此,减少大量的存储设备带来大量的能耗,降低运维成本。
存储装置500可实现图1至图3的实施例中涉及的操作,因此为避免重复,不再详细描述。
可选地,作为一个实施例,处理器501可以具体用于:确定存储池所处的状态是否为在线状态;在确定存储池处于非在线状态的情况下,根据存储池的健康信息确定存储池是否处于休眠状态,健康信息包括存储池的可靠性指标。具体地,健康信息可以是MAID信息,可靠性指标包括但不限于坏道的数量或增量、GLIST的数量或增量、已恢复错误的数量或增量、CI的数量、以及是否为PFF的存储设备。等等。例如,当坏道的数量或增量大于某个阈值时,表示用户数据层中对应的存储池不能快速地唤醒,可以对该存储池进行故障处理。
可选地,作为另一个实施例,处理器501还可以用于从缓存层或者从代理层中读取高码文件的元数据信息;根据读取的高码文件的元数据信息在用户数据层中定位高码文件所在的存储池。
可选地,作为另一个实施例,处理器501还可以用于:当高码文件被请求读取的次数大于或等于数目阈值时,在缓存层中存储高码文件。这样,当用户设备请求读取该高码文件时,可以立即从缓存层中回迁该高码文件,从而进一步地提升回迁效率。
可选地,作为另一个实施例,缓存层的存储设备可以包括SSD硬盘或SAS硬盘。或者,代理层的存储设备可以包括SAS硬盘。或者用户数据层的存储设备包括NL-SAS硬盘。优选地,缓存层采用的存储设备的性能优于或等价于代理层采用的存储设备,代理层采用的存储设备的性能优于用户数据层采用的存储设备。例如,缓存层的存储设备采用SSD硬盘,也称为SSDCache层,代理层的存储设备采用SAS硬盘,用户数据层的存储设备采用NL-SAS硬盘。应理解,本发明实施例对采用的存储设备的类型并不作限制。
可选地,作为另一个实施例,处理器501还可以用于:当高码文件为热点数据文件,即访问频繁的数文件,如被请求读取的次数大于或等于数目阈值时,可以设置该高码文件所在的存储池的状态为在线状态。反之,设置该高码文件所在的存储池的状态为休眠状态。或者,处理器501还可以用于:当高码文件为近期文件,如导入用户数据层的时间在预设时间段(如一周或两周)内时,设置该高码文件所在的存储池的状态为在线状态;反之,设置该高码文件所在的存储池的状态为休眠状态。
通过上述方案,在用户数据层大量的存储池中,可以将非热点的高码文件所在的存储池或者将非近期的高码文件所在的存储池设置成休眠状态,从而减少大量的存储设备带来大量的能耗,实现节能,降低运维成本。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (16)

1.一种存储方法,其特征在于,包括:
当用户设备在代理层预览低码文件时,在用户数据层中定位与所述低码文件对应的高码文件所在的存储池;
确定所述存储池所处的状态;
如果确定所述存储池处于在线状态,则在所述用户设备已请求读取所述高码文件的情况下从所述存储池中回迁所述高码文件;
如果确定所述存储池处于休眠状态,则唤醒所述存储池,在所述用户设备已请求读取所述高码文件的情况下从所述存储池中回迁所述高码文件。
2.如权利要求1所述的方法,其特征在于,所述确定所述存储池所处的状态,包括:
确定所述存储池所处的状态是否为所述在线状态;
在确定所述存储池处于非在线状态的情况下,根据所述存储池的健康信息确定所述存储池是否处于所述休眠状态,所述健康信息包括所述存储池的可靠性指标。
3.如权利要求1所述的方法,其特征在于,所述在用户数据层中定位与所述低码文件对应的高码文件所在的存储池之前,所述方法还包括:
从缓存层或者从代理层中读取所述高码文件的元数据信息;
所述在用户数据层中定位所述高码文件所在的存储池,包括:
根据所述高码文件的元数据信息在所述用户数据层中定位所述高码文件所在的存储池。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
当所述高码文件被请求读取的次数大于或等于数目阈值时,在缓存层中存储所述高码文件。
5.如权利要求3或4所述的方法,其特征在于,所述缓存层的存储设备包括固态硬盘SSD或串行连接小型计算机系统接口SAS硬盘。
6.如权利要求1-4任一项所述的方法,其特征在于,所述代理层的存储设备包括SAS硬盘,或者所述用户数据层的存储设备包括近线NL-SAS硬盘。
7.如权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
当所述高码文件被请求读取的次数大于或等于数目阈值时,设置所述存储池的状态为在线状态;或者
当所述高码文件被请求读取的次数小于数目阈值时,设置所述存储池的状态为休眠状态。
8.如权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
当所述高码文件导入所述用户数据层的时间在预设时间段内时,设置所述存储池的状态为在线状态;或者
当所述高码文件导入所述用户数据层的时间在预设时间段外时,设置所述存储池的状态为休眠状态。
9.一种存储装置,其特征在于,该装置包括:
定位模块,用于当用户设备在代理层预览低码文件时,在用户数据层中定位与所述低码文件对应的高码文件所在的存储池;
确定模块,用于确定所述定位模块定位的所述存储池所处的状态;
回迁模块,用于如果所述确定模块确定所述存储池处于在线状态,则在所述用户设备已请求读取所述高码文件的情况下从所述存储池中回迁所述高码文件;
所述回迁模块还用于如果所述确定模块确定所述存储池处于休眠状态,则唤醒所述存储池,在所述用户设备已请求读取所述高码文件的情况下从所述存储池中回迁所述高码文件。
10.如权利要求9所述的装置,其特征在于,
所述确定模块具体用于:确定所述存储池所处的状态是否为所述在线状态;在确定所述存储池处于非在线状态的情况下,根据所述存储池的健康信息确定所述存储池是否处于所述休眠状态,所述健康信息包括所述存储池的可靠性指标。
11.如权利要求9所述的装置,其特征在于,
所述回迁模块还用于:从缓存层或者从代理层中读取所述高码文件的元数据信息;
所述定位模块具体用于:根据所述回迁模块读取的所述高码文件的元数据信息在所述用户数据层中定位所述高码文件所在的存储池。
12.如权利要求9所述的装置,其特征在于,
所述回迁模块还用于:当所述高码文件被请求读取的次数大于或等于数目阈值时,在缓存层中存储所述高码文件。
13.如权利要求11或12所述的装置,其特征在于,所述缓存层的存储设备包括固态硬盘SSD或串行连接小型计算机系统接口SAS硬盘。
14.如权利要求9-12任一项所述的装置,其特征在于,所述代理层的存储设备包括SAS硬盘,或者所述用户数据层的存储设备包括近线NL-SAS硬盘。
15.如权利要求9-12任一项所述的装置,其特征在于,
所述确定模块还用于:当所述高码文件被请求读取的次数大于或等于数目阈值时,设置所述存储池的状态为在线状态;或者
所述确定模块还用于:当所述高码文件被请求读取的次数小于数目阈值时,设置所述存储池的状态为休眠状态。
16.如权利要求9-12任一项所述的装置,其特征在于,
所述确定模块还用于:当所述高码文件导入所述用户数据层的时间在预设时间段内时,设置所述存储池的状态为在线状态;或者
所述确定模块还用于:当所述高码文件导入所述用户数据层的时间在预设时间段外时,设置所述存储池的状态为休眠状态。
CN201310733355.7A 2013-12-26 2013-12-26 存储方法及装置 Active CN103714146B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310733355.7A CN103714146B (zh) 2013-12-26 2013-12-26 存储方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310733355.7A CN103714146B (zh) 2013-12-26 2013-12-26 存储方法及装置

Publications (2)

Publication Number Publication Date
CN103714146A CN103714146A (zh) 2014-04-09
CN103714146B true CN103714146B (zh) 2017-01-04

Family

ID=50407121

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310733355.7A Active CN103714146B (zh) 2013-12-26 2013-12-26 存储方法及装置

Country Status (1)

Country Link
CN (1) CN103714146B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108090078B (zh) * 2016-11-22 2021-11-30 北京京东尚科信息技术有限公司 文档在线预览方法及装置、存储介质、电子设备
CN111459261A (zh) * 2020-04-03 2020-07-28 北京云宽志业网络技术有限公司 磁盘唤醒方法、装置、电子设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102999442A (zh) * 2012-11-16 2013-03-27 成都索贝数码科技股份有限公司 面向媒体应用的存储系统及方法
CN103069380A (zh) * 2012-04-27 2013-04-24 华为技术有限公司 存储控制设备、数据归档存储系统和数据存取方法
CN103106047A (zh) * 2013-01-29 2013-05-15 浪潮(北京)电子信息产业有限公司 一种基于对象的存储系统及其存储方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2004109517A1 (ja) * 2003-06-09 2006-07-20 富士通株式会社 ストレージ管理プログラムおよびファイル処理プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103069380A (zh) * 2012-04-27 2013-04-24 华为技术有限公司 存储控制设备、数据归档存储系统和数据存取方法
CN102999442A (zh) * 2012-11-16 2013-03-27 成都索贝数码科技股份有限公司 面向媒体应用的存储系统及方法
CN103106047A (zh) * 2013-01-29 2013-05-15 浪潮(北京)电子信息产业有限公司 一种基于对象的存储系统及其存储方法

Also Published As

Publication number Publication date
CN103714146A (zh) 2014-04-09

Similar Documents

Publication Publication Date Title
CN104572478B (zh) 数据存取方法和数据存取装置
CN102782683B (zh) 用于数据库服务器的缓冲池扩展
CN104516471B (zh) 一种管理存储器系统的电源的方法和装置
CN103577338B (zh) 一种回收垃圾数据的方法及存储设备
CN101552032B (zh) 用较大容量dram参与闪存介质管理构建高速固态存储盘的方法及装置
CN103577121B (zh) 一种基于Nand Flash的高可靠线性文件存取方法
CN101520805B (zh) 一种分布式文件系统及其文件处理方法
CN102955720B (zh) 一种提高ext文件系统稳定性的方法
CN103246478B (zh) 一种基于软raid支持无分组式全局热备盘的磁盘阵列系统
CN105653202A (zh) 一种用于逻辑存储管理的多级方案
CN102999442B (zh) 面向媒体应用的存储系统及方法
CN103455449B (zh) 非易失性存储介质访问方法、数据更新方法及设备
CN103942157A (zh) 用于计算存储环境中的数据处理的方法和系统
CN106528001A (zh) 一种基于非易失性存储器和软件raid的缓存系统
CN102681791B (zh) 一种集群存储系统的节能存储方法
CN103559145B (zh) 一种数据读取、写入方法和电子设备
CN109164975A (zh) 一种将数据写入固态硬盘的方法以及固态硬盘
CN103389948A (zh) 存储器管理装置和方法以及电子设备
CN104778018A (zh) 基于非对称混合型磁盘镜像的宽条带磁盘阵列及存储方法
CN107908571A (zh) 一种数据写入方法、闪存装置及存储设备
CN104714753A (zh) 一种数据访问存储方法及装置
CN102637147A (zh) 利用固态硬盘作为计算机写缓存的存储系统以及相应的管理调度方法
CN106294226A (zh) 基于嵌入式stt‑mram的ssd控制器芯片、固态硬盘
CN103049220A (zh) 存储控制方法、存储控制装置和固态存储系统
CN103548004B (zh) 在文件系统中实现多级存储的方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant