【技术实现步骤摘要】
一种基于超大图计算的服务器宕机重启数据恢复方法和装置
[0001]本专利技术涉及图计算
,特别是涉及一种基于超大图计算的服务器宕机重启数据恢复方法和装置。
技术介绍
[0002]分布式图计算是近年来比较流行的网络结构数据分析计算的一种方式,相较于传统的MapReduce计算方式具有更复杂的关系处理能力。当前最为流行的分布式图计算引擎包括Spark GraphX、Flink Gelly等,这些分布式图计算引擎都具有高性能的内存式计算能力。Spark提供了分布式RDD形式的数据集,Flink提供了分布式DataSet形式的数据集。
[0003]数据库在运行过程中最怕发生的就是服务器宕机,而一旦宕机相应的服务器在进行数据读取状态还原过程中会比较费时间;最为常规的手段就是按照运行日志去将历史状态数据进行读取,而这种情况发生在相应数据内容是分布式存储的情况下,效率的瓶颈问题会愈专利技术显。
[0004]鉴于此,克服该现有技术所存在的缺陷是本
亟待解决的问题。
技术实现思路
[00 ...
【技术保护点】
【技术特征摘要】
1.一种基于超大图计算的服务器宕机重启数据恢复方法,其特征在于,服务器中相应的日志中记录有当前内存加载数据的分页信息,相应的分页信息中包含有加载数据所在分布式计算节点的网络地址,分页信息中还包括所述分页对象之间的邻接关系;当服务器从宕机状态重启后,包括:服务器向网关节点发送集群状态信息请求request_cluster_infomation()方法,并获取返回的集群状态信息;其中,所述集群状态信息包括计算节点个数N
‑
COMPUTATION以及节点路由表TABLE<PARTITION,HOST>;服务器获取图存储引擎图顶点个数N
‑
VERTICES=get_vertex_count();用总顶点个取模计算节点个数,计算出每个计算节点需要加载的图顶点个数N
‑
LENGTH;加载所述邻接关系,遍历图顶点ID;多线程并发访问分页,每个线程执行一个分页中顶点ID的遍历,迭代出第i轮的值中间结果,这些中间结果被保存在TABLE<PARTITION,MAP<ID,VALUE>>,每第i论计算结束后统一向其他节点发送中间计算结果,通过TABLE<PARTITION_INDEX,HOST>获取到分页号对应的节点网络地址HOST,获取该HOST计算节点上的加载用数据MAP<ID,VALUE>,并按照所述邻接关系完成服务器内存数据加载;其中,i为自然数。2.根据权利要求1所述的基于超大图计算的服务器宕机重启数据恢复方法,其特征在于,遍历图顶点ID,加载所述邻接关系之前,方法还包括:分析N
‑
LENGTH个顶点是否需要内存多分页处理,用N
‑
LENGTH除以分页阈值,如果值大于1,服务器申请多页,最大的分页数为值+1;如果值小于1,服务器直接申请单页的内存空间。3.根据权利要求2所述的基于超大图计算的服务器宕机重启数据恢复方法,其特征在于,所述分页阈值大小取2GB,可用于容纳长度为268435456的Long类型数组。4.根据权利要求1所述的基于超大图计算的服务器宕机重启数...
【专利技术属性】
技术研发人员:周帆,李冬,谭江,丁先胜,张睿,王振宇,
申请(专利权)人:四川蜀天梦图数据科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。