一种云存储数据的优化管理方法和系统的制作方法

文档序号:9547302阅读:361来源:国知局
一种云存储数据的优化管理方法和系统的制作方法
【技术领域】
[0001]本发明涉及云存储技术领域,特别是涉及一种云存储数据的优化管理方法和系统。
【背景技术】
[0002]随着云计算的普及,数据爆炸式的增长,云存储成为了热门产品,数据管理成为了人们关注的焦点。通常我们说的“云存储”是指的“云对象存储”,用来存储非结构化数据,各大云计算厂商都实现了这一云计算基础设施,以亚马逊的S3为代表。它将非结构化数据抽象成对象,即一个文件一个对象,基于HTTP协议提供增删改查接口,以实现对非结构化数据的存储和操作。云存储在互联网和移动互联网应用较广,提升了开发效率和降低了运维复杂度,推动了互联网和移动互联网的发展。
[0003]技术实现上,云存储实际上是键值存储,对于对象间的关系管理较弱;虽然提供了简单的对象层次结构的管理(基于对象key的字符串路径),但是效率却是十分低下;对象关系需要应用自行管理。

【发明内容】

[0004]鉴于以上所述现有技术的缺点,本发明的目的在于提供一种云存储数据的优化管理方法和系统,用于解决现有技术中云对象存储效率低、对象间的关系管理弱和需要应用自行管理的问题。
[0005]为实现上述目的及其他相关目的,本发明提供一种云存储数据的优化管理方法,首先,访问云存储数据,发起请求,访问内容至少包括上传文件、下载文件和获取文件列表信息;其次,判断访问权限,若无访问权限,则提示错误信息;若有访问权限,则将云存储真实数据的访问地址签名后发送;最后,根据得到的访问地址进行数据的读写,读写完毕后汇报操作结果。
[0006]于本发明一实施方式中,向云存储上传文件的步骤包括:查询对象是否存在,若不存在,则添加文件元数据信息;若存在,则查询对象etag是否存在,若对象etag不存在,则上传数据对象;若对象etag存在,则将云存储数据的地址更新。
[0007]于本发明一实施方式中,向云存储下载文件的步骤包括:获取文件的数据下载地址;查询文件元数据是否存在,若存在,返回下载地址;若不存在,则返回报错信息;最后通过下载地址下载数据。
[0008]于本发明一实施方式中,所述应用程序向云存储获取文件列表的步骤包括:获取文件列表;遍历元数据列表;返回文件列表信息。
[0009]本发明还提供一种云存储数据的优化管理系统,包括应用程序模块、元数据管理服务模块、数据库服务模块和云存储模块;所述数据库服务模块中存储有元数据,所述元数据管理服务模块中存储有对于云存储的访问控制数据;所述应用程序模块与所述元数据管理服务模块之间基于HTTP协议进行控制流的双向通信,所述应用程序模块与所述云存储模块之间基于HTTP协议进行数据流的双向通信,所述元数据管理服务模块基于HTTP协议向所述云存储模块发送控制流,所述元数据管理服务模块遍历所述数据库服务模块获取文件列表。
[0010]于本发明一实施方式中,所述应用程序模块还用于在访问所述云存储数据模块时,向所述元数据管理服务模块发起请求;所述元数据管理服务模块还用于在所述应用程序模块获得访问权限时,将所述云存储块内真实数据的访问地址签名后发送给所述应用程序模块;所述应用程序模块还用于根据得到的访问地址进行数据的读写,读写完毕后再向所述元数据管理服务汇报操作结果。
[0011 ] 于本发明一实施方式中,所述应用程序模块还用于在所述应用程序模块向所述云存储模块上传文件时,向所述元数据管理服务模块查询对象是否存在;所述应用程序模块还用于在对象不存在时,向所述元数据管理服务模块添加文件元数据信息;所述应用程序模块还用于在对象存在时,向所述元数据管理服务模块查询对象etag是否存在;所述应用程序模块还用于在对象etag不存在时,向所述云存储模块上传数据对象;所述应用程序模块还用于在对象etag存在时,将所述云存储模块的数据地址更新到所述元数据管理服务模块中。
[0012]于本发明一实施方式中,所述应用程序模块还用于在向所述云存储模块下载文件时,向所述元数据管理服务模块获取文件的数据下载地址,以及向所述元数据管理服务模块查询文件元数据是否存在;所述元数据管理服务模块还用于在所述文件元数据存在时,向所述应用程序模块返回下载地址,所述应用程序模块还用于通过所述下载地址向所述云存储模块下载数据;所述元数据管理服务模块还用于在所述文件元数据不存在时返回报错信息;
[0013]于本发明一实施方式中,所述应用程序模块还用于在向所述云存储模块获取文件列表时,向所述元数据管理服务模块获取文件列表;所述元数据管理服务模块还用于遍历所述数据库服务模块中的元数据列表以及返回文件列表信息给所述应用程序模块。
[0014]于本发明一实施方式中,所述应用程序模块包括备份管理单元和文件管理单元。
[0015]如上所述,本发明的一种云存储数据的优化管理方法和系统,具有以下有益效果:
[0016]1、通过实现元数据服务管理云对象存储数据的元数据,管理数据之间的关系,以加速云对象的列表获取;
[0017]2、通过将数据存储与元数据分离以加强对数据的控制能力和提高安全性;
[0018]3、通过etag来做对象级重删以提高存储效率。
【附图说明】
[0019]图1显示为本发明一种云存储数据的优化管理系统于一实施例中的总体架构示意图。
[0020]图2显示为本发明一种云存储数据的优化管理方法于一实施例中的流程图。
[0021]图3显示为本发明一种云存储数据的优化管理方法中上传文件于一实施例中的流程图。
[0022]图4显示为本发明一种云存储数据的优化管理方法中下载文件于一实施例中的流程图。
[0023]图5显示为本发明一种云存储数据的优化管理方法中获取文件列表于一实施例中的流程图。
[0024]元件标号说明
[0025]I应用程序模块
[0026]2元数据管理服务模块
[0027]3数据库服务模块
[0028]4云存储模块
[0029]SI ?S6步骤
[0030]Sll ?S15步骤
[0031]S11’ ?S15’步骤
[0032]S11,,?S13”步骤
【具体实施方式】
[0033]以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的【具体实施方式】加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
[0034]需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
[0035]本发明中需要部署数据库节点和计算节点,数据库节点中部署关系型数据库,计算节点中部署元数据管理服务。部署的物理位置,可以是企业内部的虚拟化平台或者物理机,也可以是公有云计算平台的弹性计算或者数据库服务。在实施过程中,还需要第三方云存储的账号,如AccessID,AccessKey,用于对第三方云存储的管理。
[0036]系统的部署包括具体以下步骤:部署一台物理机或虚拟机或云主机,安装元数据管理服务;部署一台物理机或虚拟机或云主机,安装关系型数据库;在元数据管理服务配置数据库访问地址;在元数据管理服务配置第三方云存储账号AccessID/AccessKey。
[0037]所指元数据包括:对象ID (全局唯一标识),对象名称,对象类型,云存储类型,云存储名称,云存储服务访问地址,云存储访问AccessID,云储存访问AccessKey,对象在云存储中的路径,对象大小,etag (对象的hash值:哈希值是通过哈希算法对内存地址值进行计算得到的一个整数值,可以理解为一个数字标识),对象的状态,对象创建时间,对象最后修改时间,父对象ID等。
[0038]请参阅图1,显示为本发明一种云存储数据的优化管理系统于一实施例中的总体架构示意图,包括应用程序模块1、元数据管理服务模块2、数据库服务模块3和云存储模块4 ;所述应用程序模块I包括备份管理单元和文件管理单元;所述数据库服务模块3中存储有元数据,所述元数据管理服务模块2中存储有对于云存储模块4的访问控制数据;所述应用程序模块I与所述元数据管理服务模块2之间基于HTTP协议进行控制流的双向通信,所述应用程序模块I与所述云存储模块4之间基于HTTP协议进行数据流的双向通信,所述元数据管理服务模块2基于HTTP协议向所述云存储模块4发送控制流,所述元数据管理服务模块2遍历所述数据库服务模块3获取文件列表。
[0039]于本发明一实施例中,所述数据库服务模块3为关系型数据库MySQL,所述云存储模块4可以包括阿里云OSS、AffS S3以及其他云对象存储。
[0040]于本发明一实施方式中,当所述应用程序模块I访问所述云存储模块4的数据时,所述应用程序模块I向所述元数据管理服务模块2发起请求;当获得访问权限时,所述元数据管理服务模块2将所述云存储模块4内真实数据的访问地址签名后发送给所述应用程序模块1,然后根据得到的访问地址进行数据的读写,读写完毕后再向所述元数据管理服务模块2汇报操作结果。
[0041]于本发明一实施方式中,当所述应用程序模块I向所述云存储模块4上传文件时,首先向所述元数据管理服务模块2查询对象是否存在;当对象不存在时,向所述元数据管理服务模块2添加文件元数据信息,当对象存在时,向所述元数据管理服务模块2查询对象etag是否存在;当对象etag不存在时,所述应用程序模块I向所述云存储模块4上传数据对象,当对象etag存在时,将所述云存储模块4的数据地址更新到所述元数据管理服务模块2中。
[0042]于本发明一实施方式中,所述应用程序模块I向所述云存储模块4下载文件时,首先向所述云存储模块4下载文件时,然后向所述元数据管理服务模块2获取文件的数据下载地址;所述应用程序模块I还用于向所述元数据管理服务模块2查
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1