一种云备份服务的本地缓存设备的制作方法

文档序号:7760181阅读:120来源:国知局
专利名称:一种云备份服务的本地缓存设备的制作方法
技术领域
本发明涉及云计算存储服务领域,尤其涉及一种云在线备份服务管理的方法和系统,能有效的提高在线备份服务的用户体验。
背景技术
随着云服务的兴起,云在线备份服务得以逐渐普及,其是一种通过互联网提供给用户来备份和储存电脑档案的服务。通常情况下,在线备份系统总是包括客户端软件和在线备份服务,允许用户运行并配置客户端软件来定时(比如每天一次)搜集 、压缩、加密并传送变化的数据到互联网上的存储服务端。有了在线备份服务,用户可以不再担心电脑或移动设备中数据的丢失,并可以在不同电脑中恢复文件,解决了用户的后顾之忧。这也是当前SaaS面向服务的理念。但在线备份服务使用也不尽完美,由于数据在互联网上传输速率慢(相比于局域网内的网络存储),因此在线备份和还原文件也显得缓慢,需要用户在一个带宽富裕的时间段进行。特别是最初的备份可能需要一天或更长的时间,随后的增量备份会用少得多的时间,但也必须保证电脑始终在线;有些备份服务支持压缩,但对于像图像、视频和音频文件,由于这些文件的压缩比都已经很高,压缩也很难减少备份的时间;这些都极大的影响了用户体验。

发明内容
本发明所要解决的技术问题是提供一种具有本地缓存功能的设备来加速在线备份的速度,对于用户来说也并没有引入本地缓存设备而带来更复杂的操作,从而使用户体验得到提升,减少计算机备份时的开机时间,提供工作效率。如图I所示,本发明公开了一种存储设备100,它介于个人电脑和云在线备份服务之间,可作为云在线备份服务110的本地缓存设备,本发明涉及的本地缓存设备有以下特征·本地存储设备作为一个高速缓存,介于个人电脑/移动设备和在线云备份存储服务之间;个人电脑或移动设备上运行的备份客户端可以自动检测局域网中的本地存储设备,并以局域网的速度备份文件到本地缓存设备中;本地存储设备可自动去除重复文件,并将文件定时备份到云备份存储服务中;备份客户端可从本地缓存设备或云备份存储服务直接恢复文件到个人电脑或移动设备中。·本地缓存设备可以按预定设置,每天、每周、或在一天的任何指定的时间执行备份操作,将缓存中的文件备份到云存储服务中。·如果局域网中没有本地缓存设备,个人电脑或移动设备上的备份客户端可以直接备份到云备份存储服务中。·本地缓存设备可以保存快照及快照中文件的元数据信息,满足备份客户端读取快照信息及文件请求。
本地缓存设备根据备份快照增量备份文件到云存储服务中,减少网络带宽。·本地缓存设备中的文件在同步到云备份存储服务中后,会自动根据磁盘的容量来决定是否删除本地缓存中的文件。·备份客户端可以查看本地缓存设备中在不同时刻的快照。·本地缓存在备份客户端请求读取备份快照信息 时,如果发现没有客户端请求的指定时间的快照,则在云存储备份服务中查找快照,并将快照从云备份服务中拷贝到本地缓存设备中,更新本地快照信息。·本地缓存在备份客户端请求恢复备份快照中的文件时,如果发现没有客户端请求的快照对应的文件,则在云存储服务中查找文件,并将文件从云备份服务中拷贝到本地缓存设备中。下面结合附图进一步详细说明本发明的具体实施方式



图I是本地缓存设备在整个云在线备份系统中的位置2是本地缓存设备管理软件模块3是备份动作描述示意4是恢复动作描述示意图
具体实施例方式本发明主要是针对通过互联网在线备份慢而提出来的一种本地存储缓存设备,包括硬件、操作系统软件和在它们之上的设备管理软件。其中硬件和操作系统是可采用通用的x86兼容设备及Linux操作系统,而设备管理软件则是本发明的主要内容,也是整个缓存设备实现备份缓存逻辑的基础,如图2所示,主要包括以下几个主要模块连接管理模块200 :同时负责管理缓存设备和备份客户端及在线云备份服务的网络连接,当网络连接长时间无数据交互时,将自动断开网络。连接管理模块分别绑定不同的端口来实现对管理API210和存储API215的调用,支持SSL加密传输协议;管理API 210 :主要提供设备管理和控制用的API调用,比如读取设备状态、设置参数、管理备份快照、重启和关机等;存储API 215 :主要提供存储相关的API调用,如文件备份和恢复等;指令执行220 :解析通过管理API和存储API传递过来的参数,打包成执行指令,并转化成为内部子指令,调用其它子模块来完成业务功能,它是整个设备执行逻辑的调度和分发中心。快照管理230 :缓存设备对每一次备份操作都将保留一份快照的元数据信息,包括备份时间,备份涉及的文件等信息;在一个快照内,将为每个文件进行版本管理;在快照对应的文件在本地缓存中删除后,这些快照元数据信息也都将保留,供以后版本比对和恢复文件操作用;存储缓存管理240 :可管理多个磁盘上的文件及未用的磁盘空间列表,并利用缓存管理算法来决定哪些文件该保留在磁盘上,如MRU算法,指的是最近经常使用的文件会保留在磁盘上;
加密250 :利用加密算法(AES 256位)来保证数据备份的私密性;备份引擎260 :通过分发管理模块270和连接管理模块200将本地缓冲区中的未备份文件数据备份到在线备份到远端服务器,一旦文件备份成功,将标记其为可替换状态,并交给存储缓存管理模块来管理。备份的时机可以根据用户的设置定时周期性(每小时,每天、每周或任意指定时间)的备份或在存储缓冲区不够用的情况下自动促发执行;分发管理270 :主要起两个作用,一是将根据不同的数据包映射到不同的网络连接,并通过这些连接发送数据,网络连接可以是备份客户端或在线备份服务,二是将实现非阻塞的异步调用,其它模块在发送数据后将立即返回,分发管理模块负责接受从网络连接传过来的数据包,并调用响应的回调函数来处理数据包。通用模块280 :由一些通用的功能库组成,包括异步10(利用/dev/epoll接口来实现),异步调用管理器(包括线程池管理、消息队列管理和消息队列事件促发等),异步磁盘操作(对操作系统同步磁盘操作包装,实现异步功能),IO缓存管理(基于引用计数的·缓存管理,用于在不同的模块及不同的线程间传递数据),配置管理(对多个配置源统一管理,如环境变量、配置文件和命令行参数等,配置变更可在运行时生效,修改配置的方式包括网络API和直接修改配置文档两种方式),日志管理(可定义日志格式及文件溢出控制等)对于备份客户端发起的备份文挡请求,如图3描述,备份设备整个处理步骤如下步骤301,备份客户端发起SSL链接请求,建立和缓存设备间的通讯链路;步骤302,通过步骤301建立起来的通讯链路,调用管理API接口模块,并请求执行创建快照SNAPSHOT指令;步骤303,管理API模块解析SNAPSHOT指令,验证相关参数,并调用指令执行模块来执行指令;步骤304,执行指令模块分析SNAPSHOT指令,并调用快照管理模块来创建快照;步骤305,返回快照基本信息给备份客户端;步骤306,备份客户端根据创建的快照信息,启动备份会话,开始调用存储API接口模块;步骤307,存储API接口模块解析备份指令,验证相关参数,调用指令执行模块来执行备份BACKUP指令;步骤308,返回创建的备份会话信息给备份客户端;步骤309,备份客户端根据存储缓存设备返回的备份会话信息,开始执行备份会话,创建多个线程,生成多个链接请求将此次备份会话中涉及的备份快照中的所有文件上传到存储缓存设备;步骤310,对于每个线程,通过会话链接将包含文件、快照及会话等信息的PUT数据包传递到备份设备端,由存储API模块接口来解析数据包;步骤311,API接口模块调用指令执行模块来执行PUT指令来存储从备份客户端传过来的要备份的文件;步骤312,指令执行模块调用缓存管理模块来分配存储缓存空间来存储要备份的文件,其为每个文件都要生成MD5代码,用于自动去重处理,如有相同的MD5代码则认为两个文件相同;
步骤313,备份的同时,将文件加密保存;步骤314,存储缓冲设备发现如果文件存储空间不够,备份引擎就会启动云端备份进程来将本地缓存中的文件备份到云存储服务中,这里的缓存替换算法常用的如MRU算法(最近经常使用的会保留);步骤315,云端备份进程在备份单个文件时,将备份信息转换成多个备份请求数据包,并通过分发管理模块传到云端服务中;步骤316,指令执行模块在PUT指令执行结束后,将状态信息返回给备份客户端,完成单个文件备份请求;步骤317,在本次备份会话中涉及的快照的所有文件备份完毕后,结束备份会话。
对于备份客户端发起的恢复文件请求,如图4描述,备份设备整个处理步骤如下步骤401,备份客户端发起SSL链接请求,建立和缓存设备间的通讯链路;步骤402,创建读取快照SNAPSHOT指令数据包,通过步骤401建立起来的通讯链路传递到备份缓存设备端,并由管理API接口模块来解析数据包;步骤403,管理API模块解析读取快照指令,验证相关参数,并调用指令执行模块来读取快照信息指令;步骤404,执行指令模块调用快照管理模块来读取快照信息;步骤405,返回快照信息给备份客户端;步骤406,备份客户端分析快照信息,并根据用户需要恢复的文件信息形成恢复RESTORE指令数据包,传递给存储API模块来创建恢复文件会话;步骤407,存储API模块分析恢复指令,验证相关参数,并调用指令执行模块来执行恢复指令;步骤408,返回恢复会话信息给备份客户端;步骤409,备份客户端根据存储缓存设备返回的恢复会话信息,开始启动恢复会话,创建多个线程,生成多个链接请求下载此次恢复会话中涉及的所有文件;步骤410,对于每个线程,通过会话链接将包含要恢复文件及会话等信息的GET数据包传递到备份设备端,由存储API模块接口来解析数据包;步骤411,API接口模块调用指令执行模块来执行GET指令来读取要恢复的文件;步骤412,指令执行模块调用缓存管理模块来读取要恢复的文件;步骤413,如果此时要恢复的文件在缓冲区中没有被找到,将调用备份引擎来连接云端备份服务;步骤414,备份引擎将恢复信息转换成恢复请求数据包,并通过分发管理模块传到z 端服务中;步骤415,云端服务传回要恢复的文件,并更新设备中的存储缓存。步骤416,将数据解密。步骤417,返回给GET指令执行模块;步骤418,将要恢复的文件转换成数据包,作为GET指令的执行结果返回给备份客户端;步骤419,在本次恢复会话中涉及的所有文件恢复完毕后,结束恢复会话。本发明的效果分析
为了实现在线备份服务,在被保护的个人电脑或移动设备上都有备份客户端,一般来说,备份客户端在后台运行,需要耗费很多CPU处理时间和内存空间以适应不同网络带宽条件。尤其当网络带宽比较低的时候,备份的用户体验就大打折扣。本发明提供的这种实现方法,首先将文件备份到一个本地缓存设备上,备份操作将是以局域网的速度快速进行,备份很快结束,个人电脑或移动设备的使用将不受影响,本地缓存设备负责将文件最终同步到云端的数据备份服务中去,它简洁有效地解决了在线备份时间长,效率低的问题。上述实施例中的设备管理/功能模块/功能单元以软件功能模块的形式实现,可作为独立的产品销售或使用,也可以作为其它产品的一个完整的子功能模块,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本 发明的保护范围之内。因此,本发明的保护范围应以权利要求所述的保护范围为准。
权利要求
1.一种云备份服务本地缓存设备,其特征在于 本地存储设备作为一个高速缓存,介于个人电脑/移动设备和在线云备份存储服务之间; 个人电脑或移动设备上运行的备份客户端可以自动检测局域网中的本地存储设备,并以局域网的速度备份文件到本地缓存设备中; 本地存储设备可自动去除重复文件,并将文件定时备份到云备份存储服务中; 备份客户端可从本地缓存设备或云备份存储服务直接恢复文件到个人电脑或移动设备中。
2.根据权利要求I所述的方法,其特征在于,本地缓存设备可以按预定设置,每天、每周、或在一天的任何指定的时间执行备份操作,将缓存中的文件备份到云存储服务中。
3.根据权利要求I所述的方法,其特征在于,如果局域网中没有本地缓存设备,个人电脑或移动设备上的备份客户端可以直接备份到云备份存储服务中。
4.根据权利要求I所述的方法,其特征在于,本地缓存设备可以保存快照及快照中文件的元数据信息,满足备份客户端读取快照信息及文件请求。
5.根据权利要求I所述的方法,其特征在于,本地缓存设备根据备份快照增量备份文件到云存储服务中,减少网络带宽。
6.根据权利要求I所述的方法,其特征在于,本地缓存设备中的文件在同步到云备份存储服务中后,会自动根据磁盘的容量来决定是否删除本地缓存中的文件。
7.根据权利要求I所述的方法,其特征在于,备份客户端可以查看本地缓存设备中在不同时刻的快照。
8.根据权利要求I所述的方法,其特征在于,本地缓存在备份客户端请求读取备份快照信息时,如果发现没有客户端请求的指定时间的快照,则在云存储备份服务中查找快照,并将快照从云备份服务中拷贝到本地缓存设备中,更新本地快照信息。
9.根据权利要求I所述的方法,其特征在于,本地缓存在备份客户端请求恢复备份快照中的文件时,如果发现没有客户端请求的快照对应的文件,则在云存储服务中查找文件,并将文件从云备份服务中拷贝到本地缓存设备中。
全文摘要
本发明公开了一种为云备份服务提供的一个本地缓存设备,其特点在于,在小型办公室或家庭里,个人电脑和移动设备上运行的备份客户端程序通过局域网自动检测到本地缓存设备100后,将文件首先备份到本地缓存设备,而不是直接备份到云在线备份服务110中,本地缓存设备将自动删除重复文件,并跟踪更改的文件和执行增量备份将文件同步到云在线备份服务中,通过本地缓存设备提高用户的备份速度,用户体验得到极大的提升。
文档编号H04L12/24GK102957717SQ20111024242
公开日2013年3月6日 申请日期2011年8月23日 优先权日2011年8月23日
发明者崔春明 申请人:崔春明
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1