海量归档流数据存储方法技术

技术编号:3808439 阅读:292 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种海量归档流数据存储方法,目的是依据归档流数据的特性解决海量归档流数据的存储,提高归档流数据的管理规模、访问性能和可靠性。技术方案是先构建加载池和归档池,加载池实时存储高速产生的归档流数据,归档池存储从加载池转移出来的更大规模的归档数据;周期性生成只读数据库文件MiniRDB,并将MiniRDB存储到归档池;当归档池中多个归档数据库节点出现故障时,采用并行分布恢复方法进行恢复。与现有技术相比,采用本发明专利技术可存储管理的数据规模更大,数据存储和查询性能更高,数据的可靠性更高。

【技术实现步骤摘要】

本专利技术涉及计算机领域数据存储方法,尤其是一种建立在计算机集群系统之上的。
技术介绍
随着计算机网络和存储技术的发展,在网络安全管理、网络搜索、通信、金 融、科学实验等诸多领域出现了一类海量数据存储分析的新兴需求,这类需求需要存储 持续高速产生的海量结构化数据,并挖掘该类数据中隐藏的规律性知识。例如,在网络 安全应用中,对网络通信的报文头信息进行实时存储、查询和分析是常见的网络安全管 理手段,该类数据具有典型的写一次读多次的归档特性,且由于其持续产生,生成速度 快( 一个普通的Gbit的网络连接产生的报文数可达每秒10万,其数据生成速度达几十MB 每秒),所以形成的系统规模很大。类似的应用还有在网络搜索引擎,需要依据用户个 人信息如以往搜索的习惯和关注点等,为其提供更符合其喜好的搜索结果;在电信行业 中,日常电话通信过程会产生大量的通话详细信息,如通信双方的电话号码,通话开始 时间和结束时间,通话双方的地点等。这类信息被广泛用于用户个人事后查询,运营商 分析消费模式或发现盗打行为,以及公共安全部门侦查等用途。 数据库技术是当前存储管理海量数据的主流技术,但由于归档流数据庞大的数 据规模和极快的产生速度,现有数据库技术在存储管理海量归档流数据方面存在三个方 面的问题难以解决数据规模、访问性能、数据可靠性。 l)数据规模。现有的典型关系数据库的数据规模一般在10GB(GigaBytes, 1()9Bytes)或100GB级别,较少达到TB(TeraBytes, 1012Bytes)级别,规模有限。而归档 流数据存储系统规模动辄几十TB,甚至达到PB(PeraBytes, 1(^Bytes)级,在系统规模达 到一定程度后如此规模时,系统组件数目很大(可能是数千节点组成)导致故障率较高, 现有的基于日志的数据访问模式和故障恢复模式难以满足数据访问性能需求和故障恢复 性能需求,需要考虑采用新的存储方法来管理这类海量数据。 2)访问性能。现有的数据库技术主要用于处理关系型的数据,强调数据操作的 事物特性,为此引入了基于事务的提交、回滚、加锁、日志管理等开销较大的管理机制 (研究表明,该机制占整个请求处理近70%的时间开销);而归档流数据具有独特的写一 次不再更新的特性,无需复杂繁琐的事务管理机制,可以考虑采用新的存储手段来提高 数据访问性能。 3)数据可靠性。现有的数据库技术一般采用基于日志的方法,通过每个数据库 对应一组日志文件进行串行逻辑导出导入的方式来恢复数据。但归档流数据存储系统规 模庞大,存在故障率高、待恢复数据规模大的问题,传统的逻辑串行数据恢复方法难以 满足大规模系统的数据恢复需求,因此需要新的数据恢复方法。 因此,如何依据归档流数据的特性解决海量归档流数据的存储,提高归档流数 据的管理规模、访问性能和可靠性是本领域技术人员极为关注的技术问题。
技术实现思路
本专利技术要解决的技术问题是提供一种海量归档流数据的存储方法,将归档流 数据存储系统分割为实时存储和归档存储两部分,在两个部分分别縮短故障恢复时间来 提高存储系统可靠性,使得存储系统在规模较大(如达到PB(PB二 P10"Bytes)级别)时, 仍具有较高的可靠性。在实时存储部分(以下称加载池),通过减小在线存储规模来提高 非归档数据库的恢复速度;在归档存储部分(以下称归档池),通过采用随机分布归档数据库副本和分布并行恢复方法来縮短归档数据的恢复时间。本专利技术的技术方案是由加载池存储实时数据,从实时数据中周期性生成只读 的数据库MiniRDB,采用随机分布方法将MiniRDB的多副本分布存储到归档池中,最后 在归档池中采用分布式恢复方法对MiniRDB进行恢复。 本专利技术具体步骤如下 第一步,构建加载池和归档池,加载池实时存储高速产生的归档流数据,归档 池存储从加载池转移出来的更大规模的归档数据 l.l加载池设计方法是加载池由m个数据库集群串联组成,m必须是偶数,这 些数据库集群并发处理加载和查询请求,每个数据库集群存储部分数据,由于实时数据 加载的性能压力较大,每个数据库集群实时数据存储规模控制在a以下(a约为主流磁盘带 宽*60,以保证数据恢复可以在分钟级别完成,据当前磁盘带宽50MBps计算)。每个数 据库集群由一组互为备份的数据库节点和一个协调节点通过以太网连接组成。协调节点 是一个计算机,它将用户的加载请求按负载均衡的策略分发到所有数据库节点,将用户 的查询请求转发到某一个数据库节点。数据库节点是包含磁盘、内存、网卡等基本硬件 设备和数据库的计算机,它负责处理来自协调节点的加载和查询请求。 由于单个数据库规模小于a,即使采用普通的归档日志(指数据库在线日志的归 档文件)恢复方法的恢复时间亦在分钟级别,故当数据库节点出现故障时,可采用基于归 档日志的恢复方法对故障数据库节点进行恢复,方法是当某个数据库节点的磁盘存储 出现故障时,采用相关数据库的管理软件来实现数据恢复;当存储归档日志的设备出现 故障时,通过数据库的备份恢复管理软件从其它完好的数据库节点上将数据导出到故障 节点来恢复数据。 1.2归档池设计方法是归档池由一组归档数据库节点, 一个元数据服务节点, 一个查询服务分解节点组成。归档数据库节点是带较大存储容量磁盘的服务器,用于存 储 一 组MiniRDB ,并记录存储到本节点的MiniRDB的名称。MiniRDB是由加载池中 的周期性转移出的数据形成的只读数据库文件。元数据服务节点是拥有较大内存和较高 处理性能的服务器,负责记录MiniRDB的元信息即MiniRDB所在的节点、数据时间范 围;查询服务分解节点是拥有较大内存和较高处理性能的服务器,当接收到用户的查询 请求时,依据元数据服务节点的MiniRDB的元信息,将查询请求分发到查询所涉及的 MiniRDB所在的归档数据库节点。第二步,周期性生成MiniRDB,并将MiniRDB存储到归档池。在归档流数据持续存储到存储系统的过程中,归档数据规模会从小于a增长到大于a,此时,加载池中的数据需要周期性地导入到归档池,以保证加载池数据规模不大于m^a : 2.1确定周期C,将包含加载池和归档池的存储系统的运行过程按照周期C进行 划分。周期C的确定方法是 C =」■ ^- -、/(2-巧)(A^(卜^) i.l)+2_《 Ns是加载池和归档池中的节点数目总和,T是存储系统存储数据在线时间,& 是将数据从原始状态压縮成MiniRDB的压縮比。 2.2按周期C实时将数据加载到加载池中。在第一个周期T" k个数据库集群 N2、 ......, Nk提供数据实时加载和查询服务,k = m/2。当加载时长达到一个周期C后,进入第二个周期T2,新的k个数据库集群NkM、 Nk+2......., Nm投入加载,同时,L中加载的数据从Np N2、 ......, Nk导出后压縮成为MiniRDB"将MiniRDBi拷贝到归档池。在第三个周期L,将Np N2......., Nk中的数据删除,再次投入到加载业务,同时将l中Nw、 Nk+2、 ......, Nm存储的数据导出压縮后形成MiniRDB^并将MiniRDB2拷贝到归档池。类似的,在第s个周期T,中,将T^中投入的本文档来自技高网
...

【技术保护点】
一种海量归档流数据存储方法,其特征在于包括如下步骤:  第一步,构建加载池和归档池,加载池实时存储高速产生的归档流数据,归档池存储从加载池转移出来的更大规模的归档数据:  1.1加载池设计方法是:加载池由m个数据库集群串联组成,m是偶数,每个数据库集群由一组互为备份的数据库节点和一个协调节点通过以太网连接组成;协调节点是一个计算机,它将用户的加载请求按负载均衡的策略分发到所有数据库节点,将用户的查询请求转发到某一个数据库节点;数据库节点是包含磁盘、内存、网卡和数据库的计算机,期中的某一个周期的编号;  2.3将每个副本存储到对应的归档数据库节点;  2.4将MiniRDB↓[i]的p个副本的名称、所在归档数据库节点编号注册到元数据服务节点,同时将p个副本分别注册到所在的归档数据库节点,然后由数据库引擎以只读方式打开p个副本;当查询请求达到时,查询服务分解节点将查询请求转发到查询所涉及的副本所在的归档数据库节点;p是依据可靠性要求确定的文件副本数,i为正整数;  第三步,当归档池中多个归档数据库节点出现故障时,采用并行分布恢复方法进行恢复,即按只读数据块恢复方法并行恢复该故障节点上所有MiniRDB:  对出现故障的只读数据库MiniRDBi进行恢复的方法是:  3.1选择归档池中某个可用的归档数据库节点作为临时目标节点,将MiniRDB↓[i]副本拷贝到临时目标节点上,具体过程如下:  1)使用均匀随机函数确定该故障归档数据库节点上的MiniRDB↓[i]的临时目标节点,节点编号t为:t=random(),1≤t≤N,N是归档池中归档数据库节点的个数;  2)依据MiniRDB↓[i]的分布信息,和其它p-1个副本所在节点的带宽占用情况,选择带宽最为空闲的归档数据库节点作为源节点;  3)按照选取的源节点和临时目标节点,将文件MiniRDB↓[i]从源节点拷贝到临时目标节点;  3.2当故障节点修复或被替换成新节点后,将临时目标节点上的MiniRDB↓[i]拷贝到已修复的故障节点上,源节点仍然从包含待恢复副本的p个节点中选择带宽最大的节点;  3.3当所有副本恢复到已修复的故障节点上后,将临时目标节点上的MiniRDB↓[i]删除;  对于该故障节点上的其它文件,采用3.1~3.3中的方法为每个文件选择源节点和临时目标节点,按照相同的流程同时进行恢复,从而实现并发恢复。它负责处理来自协调节点的加载和查询请求;...

【技术特征摘要】

【专利技术属性】
技术研发人员:杜凯王怀民杨树强
申请(专利权)人:中国人民解放军国防科学技术大学
类型:发明
国别省市:43[]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1