云存储元数据处理系统的制作方法

文档序号:8457279阅读:487来源:国知局
云存储元数据处理系统的制作方法
【技术领域】
[0001]本发明涉及一种云存储元数据处理系统。
【背景技术】
[0002]在云存储服务体系中,数据的存储规模随业务规模的增长而不断的增长,相应的,元数据的规模也在日益提升,达到TB甚至更高的级别,这就对云存储服务的元数据系统的架构和实现提出了更高的要求。
[0003]元数据是指在云存储系统当中标识用户数据的具体存放位置的信息,从这个角度上讲,元数据系统就是一个KV (Key Value)系统,随着云存储服务的业务功能的不断丰富,在最基本的KV操作(即增、删、改、查等)的基础上,对元数据系统提出了更多的功能性要求,比如按区域查询(Range Get),跨地域快速访问,异地灾备,条件过滤(Fi I ter)等等,海量的数据规模使得支持这些功能非常困难。
[0004]目前存在如下的几种解决方案:
[0005]1.放弃元数据存储
[0006]考虑到元数据的存储带来的各种问题,有些方案选择放弃元数据的存储,直接对用户数据的进行某种映射,把映射的结果关联到内部的实际存储服务节点上,这种方案的好处是节约了元数据存储和访问带来的各个环节的性能和资源开销,著名的开源系统Apache Cassandra系统即采用了该方案,这种方案的不足是无法提供按区域查询(RangeGet)和条件过滤等支持。关于 Cassndra,参见 http://cassandra.apache, org。
[0007]2.用B+/Trie树的数据结构对元数据进行组织和索引
[0008]传统的数据库(比如MySQL和各种新兴的NoSQL数据库(比如MongoDB等)即采用这种方案,这种方案的缺点是,单机版本受单机内存容量的限制,扩展性和性能不好,分布式版本的实现非常复杂,一致性、可用性等要求较难实现,也无法提供跨地域查询支持。关于 MySQL,参见 http://dev.mysql.com ;关于 MongoDB,参见 http://www.mongodb.0rg。
[0009]3.采用日志结构合并树(Log Structure Merge Tree)的方式
[0010]Google的BigTable及其开源实现Apache HBase即采用这种方式,该方式提供很好的可扩展性,也可以提供条件过滤、按区域查询等操作,但其实现依赖于底层的GFS/Chubby、Apache Hadoop/Zookeeper等分布式基础设施,在实现时需要自下而上的完整生态系统的支持,而且方式本身是针对数据进行保存和分区的,在进行分区分裂和合并的时候,所有分区内的数据会参与其中,整个过程非常的笨重,该方式也无法提供跨地域查询支持。

【发明内容】

[0011]本发明的目的在于提供一种云存储元数据处理系统,能够在日益庞大的元数据量的情况下,稳定可靠的提供用户数据存储的具体位置信息,且为用户提供方便快捷的按区域查询、条件过滤、跨地域访问元数据、异地容灾等功能性支持。
[0012]为解决上述问题,本发明提供一种云存储元数据处理系统,包括:
[0013]接入模块,用于提供用户数据操作的访问接口,对用户访问数据的流程进行协调、控制和异常处理;
[0014]认证模块,用于提供云存储元数据处理系统的其它各个模块间操作调用的认证服务;
[0015]元数据库,用于存储划分好的预设大小的元数据单元,每个元数据单元包含若干个元数据;
[0016]分区配置模块,用于记录当前的所有元数据单元的分区配置的信息;
[0017]分区驱动模块,用于定时对所有元数据单元的分区配置进行管理和生成分区调整指令;
[0018]终端模块,用于在数据访问流程中,提供对所述元数据库的访问支持,并进行相应的控制和优化,及根据所述分区调整指令对元数据单元的分区配置进行调整;
[0019]数据库管理模块,用于对元数据库的存储引擎进行配置和管理;
[0020]审计模块,用于对元数据请求和各种异常情况进行监控和数据收集,作为计费和系统运营、维护、优化、升级的依据。
[0021]维护模块,用于对云存储元数据处理系统的其它各个模块进行部署、运维、调整工作。
[0022]进一步的,在上述系统中,所述认证模块根据各个模块间的调用接口性质的不同,采用不同强度的认证方式,包括:
[0023]对于外部接口调用,采用严格的AccessyKey+HMAC+SHAl的Hash认证方式;
[0024]对于内部的接口调用,采用简单的Basic Auth认证方式。
[0025]进一步的,在上述系统中,所述分区驱动模块生成的分区调整指令包括:
[0026]如果某个元数据单元包括的元数据量过多,对该元数据单元进行细化分裂的操作;
[0027]如果某些连续元数据单元的元数据数据量过少,对这些连续元数据单元进行合并操作。
[0028]进一步的,在上述系统中,所述元数据库中的每个元数据中除保存实际数据对象的具体存储位置外,也保存相应的条件检查字段和校验和。
[0029]进一步的,在上述系统中,所述元数据库为传统的数据库,所述传统的数据库本身具有高可用方案和复制方案。
[0030]进一步的,在上述系统中,所述传统的数据库为关系型数据库或NoSQL数据库。
[0031]进一步的,在上述系统中,所述元数据库中的每个元数据单元的划分同时满足如下条件:
[0032]第一,每一条元数据都单独的属于唯一的一个数据单元,所有的数据单元合到一起,形成一个完整的元数据空间;
[0033]第二,每个元数据单元内包括一个完整元数据区间;
[0034]第三,同一个用户的元数据都相互邻接的保存在连续的元数据单元中。
[0035]进一步的,在上述系统中,元数据库分为本地元数据库和异地元数据库,所述本地元数据库的数量为多个。
[0036]进一步的,在上述系统中,对于元数据的存储,若有N个本地元数据库,必须有W个写入操作和R个读取操作成功,所述接入模块才判断数据访问操作为成功。
[0037]进一步的,在上述系统中,所述元数据库包括静态和动态数据库,其中,静态数据库保存相对长期的数据,而动态数据库保存短期的数据操作日志。
[0038]进一步的,在上述系统中,所述终端模块还用于定期将所述动态数据库中的短期的数据操作日志整理成静态的数据记录并保存至所述静态数据库中。
[0039]进一步的,在上述系统中,所述数据库管理模块对元数据库的存储引擎进行配置和管理包括对元数据库进行主从配置、索引建立、异地部署、同步和容灾处理。
[0040]与现有技术相比,本发明通过接入模块,认证模块,元数据库,分区配置模块,分区驱动模块,终端模块,数据库管理模块,审计模块和维护模块,能够在日益庞大的元数据量的情况下,稳定可靠的提供用户数据存储的具体位置信息,且为用户提供方便快捷的按区域查询、条件过滤、跨地域访问元数据、异地容灾等功能性支持。
【附图说明】
[0041]图1是本发明一实施例的云存储元数据处理系统的应用访问示意图;
[0042]图2是本发明一实施例的云存储元数据处理系统的分区配置示意图;
[0043]图3是本发明一实施例的云存储元数据处理系统的数据流程图;
[0044]图4是本发明一实施例的云存储元数据处理系统的元数据单元调整示意图。
【具体实施方式】
[0045]为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和【具体实施方式】对本发明作进一步详细的说明。
[0046]本发明提供一种云存储元数据处理系统,包括:接入模块(AccessSystem),认证模块(AuthorizeSystem),元数据库,分区配置模块(Partit1nConfigSystem),分区驱动模块(Partit1nDriverSystem),终端模块(EndpointSystem),数据库管理模块(DatabaseManagementSystem),审计模块(AuditingSystem)和维护模块(MaintainanceSystem)0
[0047]接入模块(AccessSystem),用于提供用户数据操作的访问接口,对用户访问数据的流程进行协调、控制和异常处理;具体的,AccessSystem)负责提供整体的元数据服务,AccessSystem提供数据操作的访问接口,用户操作
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1