掌桥专利:专业的专利平台
掌桥专利
首页

一种冷数据的存储方法和系统

文献发布时间:2023-06-19 11:29:13


一种冷数据的存储方法和系统

技术领域

本发明涉及大数据存储领域,并且更具体地,涉及一种冷数据的存储方法和系统。

背景技术

根据数据访问频率及规律,存储的数据可分为热数据、温数据和冷数据,其中冷数据是指访问频率极低,且数据量最大的一种数据,如日志数据、监控视频数据等,目前冷数据在所有数据中的占比例高达 80%,如何高效地存储冷数据为目前的一个热门研究方向。

冷数据存储系统是针对不常访问的数据进行低成本大规模存储而设计的一套分布式可扩展的对象存储系统。为了综合读取数据和存储容量,现有的冷数据存储系统通常采用磁盘或光盘作为存储介质,并力图提供近似在线的大容量的数据存储。然而如果操持磁盘一直在线,一方面磁盘的坏盘率会大大升高,极大的提高了购买磁盘的成本;另外一方面,如果磁盘一直保持在线,其耗电量也是巨大的;为了减少磁盘损耗和节约用电,目前的一种流行解决方案是在不需要数据访问时通常会使用磁盘进入休眠状态,然而当需要数据访问时,磁盘从休眠状态到激活状态,根据磁盘的性能需要数秒至几十秒的时间,这又会带来磁盘响应过慢,用户感受到明显的延迟的问题。

发明内容

为了解决磁盘损耗过大、用电量过大以及数据访问慢的问题,本申请提出一种冷数据存储方法及系统。

根据本发明的一个方面,提供一种冷数据存储方法,所述方法包括:

将冷数据按数据产生时间进行标记;

对所述标记后的冷数据按时间周期进行分块,得到分块数据;

对每一块冷数据按时间顺序分成N份,所述N大于等于2;

将第1份数据存储于第一存储设备,所述第一存储设备保持运行状态;

将第2至N份数据依次存储于第2至N存储设备,所述第2至N存储设备存储数据后切换为非运行状态;

对所有所述分块数据重复上述步骤;

检测所述第1份数据的读取状态,当所述第1份数据被读取时,将所述第2至N存储设备切换为运行状态,并读取所述第2至N存储设备中的第2至N份数据至所述第一存储设备。

根据本发明的一个方面,提供一种冷数据存储系统,所述方法包括:

标记模块,所述标记模块将冷数据按数据产生时间进行标记;

分块模块,所述分块模块对所述标记后的冷数据按时间周期进行分块,得到分块数据;

拆分模块,所述拆分模块对每一块冷数据按时间顺序分成N份,所述N大于等于2;

第一存储模块,所述第一存储模块将第1份数据存储于第一存储设备,所述第一存储设备保持运行状态;

第二存储模块,所述第二存储模块将第2至N份数据依次存储于第2至N存储设备,所述第2至N存储设备存储数据后切换为非运行状态;

重复操作模块,所述重复操作模块对所有所述分块数据重复拆分模块、第一存储模块以及第二存储模块的功能;

读取模块,所述读取模块检测所述第1份数据的读取状态,当所述第1份数据被读取时,将所述第2至N存储设备切换为运行状态,并读取所述第2至N存储设备中的第2至N份数据至所述第一存储设备。

本发明提供的技术方案中,通过只让第一存储设备在线,同时关闭其它存储设备可以大大减少电量的消耗,达到省电的目的;通过使第一存储设备保持在线,在第一存储设备的数据被访问的同时激活非运行的存储设备,并将相关数据预读至第一存储设备可以大大提高访问速度,减少用户的延迟感;通过轮换第一存储设备,让各设备依次充当需要长期在线的第一存储设备,可以大大减少硬盘损坏的概率,从而提高系统的整体寿命。

附图说明

通过参考下面的附图,可以更为完整地理解本发明的示例性实施方式:

图1示出了本发明的冷数据存储方法的流程图;

图2示出了本发明的冷数据存储系统的系统框图。

具体实施方式

现在参考附图介绍本发明的示例性实施方式,然而,本发明可以用许多不同的形式来实施,并且不局限于此处描述的实施例,提供这些实施例是为了详尽地且完全地公开本发明,并且向所属技术领域的技术人员充分传达本发明的范围。对于表示在附图中的示例性实施方式中的术语并不是对本发明的限定。在附图中,相同的单元/元件使用相同的附图标记。

除非另有说明,此处使用的术语(包括科技术语)对所属技术领域的技术人员具有通常的理解含义。另外,可以理解的是,以通常使用的词典限定的术语,应当被理解为与其相关领域的语境具有一致的含义,而不应该被理解为理想化的或过于正式的意义。

图1为根据本发明的冷数据存储方法的流程图。

从步骤S101处开始,在步骤101中将冷数据按数据产生时间进行标记。冷数据通常是时间序列数据,如日志数据,一般的日志数据每一条日志都有日志产生的时间,如监控视频数据,每一个监控视频都有其产道理的时间。为了方便处理,首先按数据产生的时间进行标记,如可以采用以产生时间对数据文件进行命名的方式,或者将数据产生的时间作为文件名的前缀或后缀等,也可以以文件属性进行标记的方式,如文件的产生时间、最后的修改时间等。另外,对于已有时间标记的数据,比如其它系统产生的文件,已经由时间命名或在文件属性中包含了时间属性的,可以认为其已经进行了将冷数据按数据产生时间进行标记的步骤,使用此类数据进行后续步骤应该被认为落入本发明的保护范围。以监控视频数据为例,如将2020年1月1日2点至3点产生的数据命名为2020010102.mp4。

在步骤S102中,对所述标记后的冷数据按时间周期进行分块。时间序列的冷数据通常包括了很长时间产生的数据,如一般要求监控视频至少要保存三个月的数据,为了方便存储,在本步骤中,对时间序列冷数据按时间周期T进行分块,还是以监控视频为例,如可以将一天产生的数据分为一块,具体的,如2020年1月1日产生的数据为一块,2020年1月2日产生的数据为一块。

在步骤S103中,对每一块冷数据按时间顺序分成N份,所述N大于等于2。进一步地,在对冷数据进行了分块以后,为了方便对其进行存储和读取还需要对其进一步地分成N分。还是以监控视频为例,如对于2020年1月1日产生的数据,将其按每小时一份进行等分,这样一天内就产生了24份数据,如2020010100.mp4、2020010100.mp4……。

在步骤S104中,将第1份数据存储于第一存储设备,所述第一存储设备保持运行状态。为了方便数据的读取,将每一块的第一份数据存储于第一存储设备,以前述的监控视频数据为例,如2020年1月1日产生的第一份数据为0时至1时产生的数据,2020010100.mp4,将2020010100.mp4存储于第一存储设备,由于第一存储设备保持运行状态,那么在需要读取数据时能第一时间响应。当然这里的第一份数据只是一个相对概念上的第一,并不是特指一段时间内产生的第一笔数据,也可以是一段时间内中间时段产生的数据,如我们可以将2020年1月1日8时产生的数据做为第一份数据,相应地2020年1月2日7时产生的数据为该一天周期的最后一份数据。

在步骤S105中,将第2至N份数据依次存储于第2至N存储设备,第述第2至N存储设备存储数据后为非运行状态。在存储完第一份数据后,还需要存储其它所有的数据,这里将剩下的所有数据分别存储于第2至N个存储设备中,为了节省电力,在存储完数据后将存储设备切换至非运行状态,所述非运行状态可以是关闭或休眠,总之所有为了省电而使得存储设备暂时不进行读写操作的状态都可视为非运行状态。具体地,以上述监控视频为例,将2020年1月1日产生的第一份数据2020010100.mp4存储于第一存储器后,将后续1-23时产生的23个数据分别存储于第2-24个存储器中。

在步骤S106,对所有被分块的冷数据重复步骤S103-S105。步骤S103-S105仅存储了一个数据块,为了存储完所有的数据,还需要对所有的数据块都重复步骤S103-S105。具体地,以上述监控视频为例,将2020年1月1日产生的数据存储后,还可以采用上述步骤继续存储2020年1月2日产生的数据,以此类推,直到所有数据都存储完成。

步骤S107,检测所述第1份数据的读取状态,当所述第1份数据被读取时,将所述第2至N存储设备切换为运行状态,并行读取所述第2至N存储设备中的第2至N份数据至所述第一存储设备。由于冷数据通常是时间序列数据,因此,在读取冷数据时通常是以时间为单位读取,在第一份数据被读取时,立即将后继的数据读取至第一存储设备,这样在第一份数据还没有处理完成时,后续的数据就都准备好了,减少了延迟。例如,在调取监控时,用户想查看2020年1月1日的监控数据,系统首先会将2020年1月1日的第一份数据2020010100.mp4读取至播放器,供用户查看,由于用户正在想看第一份数据,用户感觉不到延迟,与此同时,将其余23个存储设备激活,并立即将第2-24份数据读取至第1硬盘中。在用户查看第一份数据后,确认是其想要查看的那一天数据时,此时用户如果想要托动到后面,查看后面几小时的数据时通常已经过去了一段时间,这时后继的数据也都准备好了,用户查看后续的数据不会产生延迟感。在另一个示例中,以日志数据为例,当系统管理员需要处理日志数据时,通常也是按时间序列进行处理的,处理程序读取至第一份数据时,立即启动未运行的存储设备,将剩余数据都读取至第一存储设备,这样在第一份数据还未处理完成就将后续的数据准备好了,日志处理程序不需要进行等待即可继续处理。

基于本发明的冷数据存储方法,为了进一步提高数据的读取数据,在一种实施方式中,所述第一存储设备为高速存储设备,优选地,所述高速存储设备为固态硬盘,所述第2至N存储设备为低速存储设备,优先地,所述低速存储设备硬盘或光盘。

由于第一存储设备是直接对外输出数据的,为了设外设能够以最快的速度读取到数据,可将第一存储设备设置为高速存储设备,如固态硬盘,同时由于调整存储设备的写入速度也更大,在激活低速存储设备后,低速存储设备中的数据也能更快地写入至第一设备,从而提高了系统的整体速度。

基于本发明的冷数据存储方法,为了进一步减少储存设备的损耗,在一种实施方式中,所述存储设备均为同一种存储设备,优选地,所述存储设备均为硬盘,同时以固定周期将N存储设备轮换为第一存储设备。

由于第一存储设备需要24小时在线,因此其损坏的概率大大高于其它硬盘,为了增加系统的总体寿命,可将N个存储设备轮换设备为所述第一存储设备。示例性地,如以30天为周期,第一个30天中,将排列在第一个盘位的硬盘设置为所述第一存储设备,在第二个30天,将第二个盘位的硬盘的数据与第一个盘位的数据进行交换,然后将第二个盘位的硬盘设置为所述第一存储设备,此时第一个盘位的硬盘不需要再24小时工作,可以减少其损耗。以此类推,所有硬盘可转换作为所述第一存储设备,这样可以提高系统的总体寿命。

由于第一存储设备需要24小时在线,因此其损坏的概率大大高于其它硬盘,为了增加系统的总体寿命,本发明提出另一种轮换方式,周期性地读取第2至N存储设备的上电次数,对所述上电次数进行排序,将上电次数最小的存储设备更换为第一存储设备。由于硬盘的寿命与掉电、上电、启动、关闭的次数相关,对于启动次数小的硬盘,其预期寿命更长,因此将上电次数最少的更换为第一存储设备。

由于第一存储设备需要24小时在线,因此其损坏的概率大大高于其它硬盘,为了增加系统的总体寿命,本发明提出另一种轮换方式,周期性地读取第2至N存储设备的运行时间,对所述运行时间进行排序,将运行时间最小的存储设备更换为第一存储设备。由于硬盘的寿命与运行时间相关,对于运行时间小的硬盘,其预期寿命更长,因此将运行时间最少的更换为第一存储设备。

图2为根据本发明的冷数据存储系统的系统框图。

在标记模块中,将冷数据按数据产生时间进行标记。冷数据通常是时间序列数据,如日志数据,一般的日志数据每一条日志都有日志产生的时间,如监控视频数据,每一个监控视频都有其产道理的时间。为了方便处理,首先按数据产生的时间进行标记,如可以采用以产生时间对数据文件进行命名的方式,或者将数据产生的时间作为文件名的前缀或后缀等,也可以以文件属性进行标记的方式,如文件的产生时间、最后的修改时间等。另外,对于已有时间标记的数据,比如其它系统产生的文件,已经由时间命名或在文件属性中包含了时间属性的,可以认为其已经进行了将冷数据按数据产生时间进行标记的步骤,使用此类数据进行后续步骤应该被认为落入本发明的保护范围。以监控视频数据为例,如将2020年1月1日2点至3点产生的数据命名为2020010102.mp4。

在分块模块中,对所述标记后的冷数据按时间周期T进行分块。时间序列的冷数据通常包括了很长时间产生的数据,如一般要求监控视频至少要保存三个月的数据,为了方便存储,在本步骤中,对时间序列冷数据按时间周期T进行分块,还是以监控视频为例,如可以将一天产生的数据分为一块,具体的,如2020年1月1日产生的数据为一块,2020年1月2日产生的数据为一块。

在拆分模块中,对每一块冷数据按时间顺序分成N份,所述N大于等于2。进一步地,在对冷数据进行了分块以后,为了方便对其进行存储和读取还需要对其进一步地分成N分。还是以监控视频为例,如对于2020年1月1日产生的数据,将其按每小时一份进行等分,这样一天内就产生了24份数据,如2020010100.mp4、2020010100.mp4……。

在第一存储模块中,将第1份数据存储于第一存储设备,所述第一存储设备保持运行状态。为了方便数据的读取,将每一块的第一份数据存储于第一存储设备,以前述的监控视频数据为例,如2020年1月1日产生的第一份数据为0时至1时产生的数据,2020010100.mp4,将2020010100.mp4存储于第一存储设备,由于第一存储设备保持运行状态,那么在需要读取数据时能第一时间响应。当然这里的第一份数据只是一个相对概念上的第一,并不是特指一段时间内产生的第一笔数据,也可以是一段时间内中间时段产生的数据,如我们可以将2020年1月1日8时产生的数据做为第一份数据,相应地2020年1月2日7时产生的数据为该一天周期的最后一份数据。

在第二存储模块中,将第2至N份数据依次存储于第2至N存储设备,第述第2至N存储设备存储数据后为非运行状态。在存储完第一份数据后,还需要存储其它所有的数据,这里将剩下的所有数据分别存储于第2至N个存储设备中,为了节省电力,在存储完数据后将存储设备切换至非运行状态,所述非运行状态可以是关闭或休眠,总之所有为了省电而使得存储设备暂时不进行读写操作的状态都可视为非运行状态。具体地,以上述监控视频为例,将2020年1月1日产生的第一份数据2020010100.mp4存储于第一存储器后,将后续1-23时产生的23个数据分别存储于第2-24个存储器中。

在重复操作模块中,对所有被分块的冷数据重复步骤S103-S105。步骤S103-S105仅存储了一个数据块,为了存储完所有的数据,还需要对所有的数据块都重复步骤S103-S105。具体地,以上述监控视频为例,将2020年1月1日产生的数据存储后,还可以采用上述步骤继续存储2020年1月2日产生的数据,以此类推,直到所有数据都存储完成。

在读取模块中,检测所述第1份数据的读取状态,当所述第1份数据被读取时,将所述第2至N存储设备切换为运行状态,并行读取所述第2至N存储设备中的第2至N份数据至所述第一存储设备。由于冷数据通常是时间序列数据,因此,在读取冷数据时通常是以时间为单位读取,在第一份数据被读取时,立即将后继的数据读取至第一存储设备,这样在第一份数据还没有处理完成时,后续的数据就都准备好了,减少了延迟。例如,在调取监控时,用户想查看2020年1月1日的监控数据,系统首先会将2020年1月1日的第一份数据2020010100.mp4读取至播放器,供用户查看,由于用户正在想看第一份数据,用户感觉不到延迟,与此同时,将其余23个存储设备激活,并立即将第2-24份数据读取至第1硬盘中。在用户查看第一份数据后,确认是其想要查看的那一天数据时,此时用户如果想要托动到后面,查看后面几小时的数据时通常已经过去了一段时间,这时后继的数据也都准备好了,用户查看后续的数据不会产生延迟感。在另一个示例中,以日志数据为例,当系统管理员需要处理日志数据时,通常也是按时间序列进行处理的,处理程序读取至第一份数据时,立即启动未运行的存储设备,将剩余数据都读取至第一存储设备,这样在第一份数据还未处理完成就将后续的数据准备好了,日志处理程序不需要进行等待即可继续处理。

基于本发明的冷数据存储系统,为了进一步提高数据的读取数据,在一种实施方式中,所述第一存储设备为高速存储设备,优选地,所述高速存储设备为固态硬盘,所述第2至N存储设备为低速存储设备,优先地,所述低速存储设备硬盘或光盘。

由于第一存储设备是直接对外输出数据的,为了设外设能够以最快的速度读取到数据,可将第一存储设备设置为高速存储设备,如固态硬盘,同时由于调整存储设备的写入速度也更大,在激活低速存储设备后,低速存储设备中的数据也能更快地写入至第一设备,从而提高了系统的整体速度。

基于本发明的冷数据存储系统,为了进一步减少储存设备的损耗,在一种实施方式中,所述存储设备均为同一种存储设备,优选地,所述存储设备均为硬盘,同时以固定周期将N存储设备轮换为第一存储设备。

由于第一存储设备需要24小时在线,因此其损坏的概率大大高于其它硬盘,为了增加系统的总体寿命,可将N个存储设备轮换设备为所述第一存储设备。示例性地,如以30天为周期,第一个30天中,将排列在第一个盘位的硬盘设置为所述第一存储设备,在第二个30天,将第二个盘位的硬盘的数据与第一个盘位的数据进行交换,然后将第二个盘位的硬盘设置为所述第一存储设备,此时第一个盘位的硬盘不需要再24小时工作,可以减少其损耗。以此类推,所有硬盘可转换作为所述第一存储设备,这样可以提高系统的总体寿命。

由于第一存储设备需要24小时在线,因此其损坏的概率大大高于其它硬盘,为了增加系统的总体寿命,本发明提出另一种轮换方式,周期性地读取第2至N存储设备的上电次数,对所述上电次数进行排序,将上电次数最小的存储设备更换为第一存储设备。由于硬盘的寿命与掉电、上电、启动、关闭的次数相关,对于启动次数小的硬盘,其预期寿命更长,因此将上电次数最少的更换为第一存储设备。

由于第一存储设备需要24小时在线,因此其损坏的概率大大高于其它硬盘,为了增加系统的总体寿命,本发明提出另一种轮换方式,周期性地读取第2至N存储设备的运行时间,对所述运行时间进行排序,将运行时间最小的存储设备更换为第一存储设备。由于硬盘的寿命与运行时间相关,对于运行时间小的硬盘,其预期寿命更长,因此将运行时间最少的更换为第一存储设备。

在本申请中,术语“ 多个”则指两个或两个以上,除非另有明确的限定。术语“ 安装”、“ 相连”、“ 连接”、“ 固定”等术语均应做广义理解,例如,“ 连接”可以是固定连接,也可以是可拆卸连接,或一体地连接;“ 相连”可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。

在本说明书的描述中,术语“ 一个实施例”、“ 一些实施例”、“ 具体实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或实例。而且,描述的具体特征、结构、材料或特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

以上仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

相关技术
  • 一种冷数据的存储方法和系统
  • 冷数据存储系统及其存储方法
技术分类

06120112942466