大数据分布式存储的冗余研究

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:debug_core
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:随着分布式存储的广泛应用,分布式的冗余机制也越来越受关注。该文使用马尔可夫链模拟系统的集群状态,对典型的HDFS分布式存储的冗余做了详细的研究和分析,并由数学模型计算出系统的失效率。在保证系统数据安全的情况下,得出一个合理的数据备份数目。并且从理论和试验中证明了该设计可以达到预期的效果。
  关键词: 数据库;大数据;分布式存储;HDFS
  中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)19-0001-02
  近年来,在大数据的环境下,数据的存储出现了许多新的需求,关于数据的可靠性已经越来越被受到重视,所以数据的冗余已经成为研究的热点。现在的系统都是大规模并且需要时长时间稳定运行的,而信息的数量和可靠性正是现在大多是企业所要面临的问题和挑战,这就需要对系统的数据冗余程度的可靠性进行详细的分析和研究。而冗余的策略中备份数据的数目和系统的可靠性密切相关,如果设置太少,就会发生在突发情况下数据的丢失和不易恢复,如果备份设置太多,就会造成存储成本的提高和资源的利用不合理。将分布式存储系统建立模型,然后分析HDFS的冗余机制,在保证系统的可靠性的前提下,得出一个合理的备份数目。
  1 分布式存储系统冗余模型
  分布式存储的可靠性是通过数据的冗余和存储节点的协作来保证的。分布式存储系统中的冗余机制可以调高数据的可靠性和系统的高可用性。是把同一数据存储在多不同的节点实现数据的可用性,就算是个别节点的数据丢失,剩余其他的节点也可以重构原有数据,其原理如图1所示。
  复制是最简单的数据冗余策略。是将一个文件复制成多个备份然后分别存储到系统其他不同节点,一旦发生数据丢失,只要其中一个节点有备份,就可以完整的得到数据。一般来说,如果文件的复制的备份数目越多,数据的可用性和可靠性就越高。但是往往随着备份的数目的增加,会造成硬盘利用率的下降,由于增加了数据的备份,也间接的调高了读写效率[1]。备份数目对系统的可用性影响很大,如果创建的太少就会发生数据丢失并且会造成数据热点,如果设置的太多则会造成存储成本的提高和磁盘空间的浪费。HDFS复制的默认数据备份数是3份,即在数据写入的时候,系统就会默认的复制成三份,然后根据一个备份机制分别存在不同的节点[2]。关于备份数目的影响因素:可以手动调整备份数目;备份所在节点存储空间不够就会发生备份块的丢失;如果备份的默认数目是3,但是节点数目低于3,就会发生数据快的备份数目不够的情况,一般来说,HDFS的三份备份需要得三个节点。
  分布式存储复制冗余的数据的结构与数据修复过程如图所示,图1中文件复制成S个备份,图2则显示即使有S-1个节点的数据失效,也能重构原文件。
  所有的数据按照固定大小(默认的是64M或者是128M)划分成block,称为基本块,然后各节点会自动的再进行备份,得到的数据称为备份块。
  图3就是HDFS分布式存储系统的一个基本框架,图中绿色的数据块表示基本块,白色的数据块表示备份块,客户端1在读取数据块1的时候,会优先请求节点 1 提供的1的基本块,只有在读取失败后才会委托节点1提取在节点2,3,4中的备份块。客户端2写入文件 2,首先会在节点3写入基本块3,由节点3将基本块复制将备份存储在其他节点上。分布式存储系统包含许多能复制数据的存储节点,如果这些节点都是足够可靠,则整个系统就是可靠的[3]。而使用的HDFS就是默认的有三个备份,但是系统某些节点总会发生意外,出现故障,会从集群中撤离。对于撤离的节点,系统不再能从这些节点获得任何数据,如果只是一台发生故障,还不会影响整个集群,但是同时有多台服务器发生故障[4],就可能发生数据丢失的后果。一般来说,如果我们要对系统升级,一般会滚动重启,要么也是逐个节点数据转移下线,然后升级再上线[5]。
  集群的节点一般有三种状态,即在线、离线和死亡,分别用状态1、状态2和状态3表示,用包含这三种状态的马尔可夫链来模拟整个集群。假设单个节点都是从状态 1开始,一般都是状态1和状态2的互相转换,最坏的状态是状态3。状态变换图如图4所示:
  节点的在线时间t,离线时间都满足指数分布[6]。
  使用马尔可夫链模拟[7]整个系统。假设在某个时间点,总共有n个备份,有k个可用备份,而剩下的n-k个备份是需要修复的。如果此时的系统有k个可用备份块,定义此时的系统状态为k,若k个可用备份中任何一个失效则系统转为状态k-1,如果n-k个待修复备份中任何一个被修复则系统转为状态k 1。
  以下的图5模型是一个连续马尔可夫链,此时的系统有n个备份,定义系统节点是小的概率是kλ,定义系统节点修复的概率是(n-k)。状态0为起始态,表明没有任何可用备份,系统失效。
  假定分布式存储系统节点数目是i个,那么i个节点上的备份全部失效的概率(也就是系统完全失效的概率):
  得到了i个副本全部失效的情况下系统失效的概率公式,这也是从理论上分析了系统的失效率。
  2 实验验证
  为进一步验证数据备份的数目和系统的高可靠性和高可用性之间的关系,文中使用分布式系统HDFS进行仿真实验。实验的主要参数如表1所示:
  用HDFS做一个简单实验,默认情况下HDFS存在三个备份,冗余度为3,上传一个文件128M*16,也就是说这个文件分成了16个块,存放在集群上。假设如果有任意一个节点能ping到该节点则表示它在线,反之则表示它离线。现在开始研究备份数目和节点失效率这两个因素对系统的可靠性的影响。分别在节点宕机率为0.01和0.05和0.1的情况下,用副本数目分别是2、3、4来测试集群的失效率,表2是数据的失效率与备份的数目和单机大宕机率之间的关系。
  从表中发现,备份得数目比较多的时,数据的可靠性就会大一点,目前大家把e-10作为一个界限,当系统的失效率低于这个值时,就是可以接受的,所有在宕机率一般为0.05左右,三份备份数据就是一个合理的备份,这也是HDFS默认的备份数目是3的原因。如果备份太多,就会造成硬盘的浪费,所以选取合适的备份数目,才能在保证系统的可靠性的基础上保证系统的可用性。
  3 总结
  为了权衡系统的高可用性和高可靠性,就要对分布式存储的冗余策略做一个详细的分析和研究。文中使用马尔可夫链模拟分布式系统的集群状态,然后使用数学手段计算推导系统的失效率。使用HDFS来测试节点的宕机率与数据的失效率成正比,数据的备份数与数据的失效率成反比,一般来说,数据备份数目3是一个合理的值。
  参考文献:
  [1] TOM White Hadoop权威指南[M].清华大学出版社,2015.
  [2] http://www.e-gov.org.cn/xinxihua/news08/201311/145690.html
  [3] Jing Tian, Zhi Yang and Yafei Dai, A Data Placement Scheme with Time-Related Model for P2P Storages,Proceeding of Seventh International Conference on Peer-to-Peer Computing, 2007.
  [4] 马延辉,HBase企业应用开发实践[M].机械工业出版社,2014.
  [5] Lars George HBase权威指南[M].人民邮电出版社,2013.
  [6] Weatherspoon H, Chun Byung-Gon, So Chiu Wah, et al. Long-term data maintenance in wide-area storage systems: a quantitative approach[R]. Berkeley USA: University of California, 2005.
  [7] 杨传辉,大规模分布式存储系统原理解析与架构实践[M].机械工业出版社,2013.
其他文献
为了进一步有效加强教学过程管理,不断提高初中教学质量,本文分析和总结了高中入学考试的数据,提出了初中入学考试在未来的一些切实可行的建议。
针对只利用单数据源进行关系人发现不准确、不完备的问题,研究利用多维数据的关系人分析方法。针对航班和火车出行数据,采用同行规律挖掘算法得到与目标人物一起出行的同行关
摘要:汽车行业会产生大量数据,需要对这些数据进行存储与分析。基于ApacheAmbari搭建大数据基础设施,通过Nifi可以将各种型式的数据进行处理、整合并导入大数据存储。通过Kylin可以对存储的大数据进行降维,提高查询速度。基于springCloud与开发计算模块并,对外提供Rest接口,实现大数据查询功能。  关键词:Amabri;Nifi;Kylin;SpringCloud  中图分类号:
为真正确立学生的主体地位,文章基于论坛文本,以校园论坛平台为支撑,以人本主义理论、非指导性教学法理论为指导,构建以学生观点为主的教学过程,并进行实践。结果表明:(1)学
摘要:在大数据时代,如何从容量大、虚拟化存储的大数据中获取电子证据是电子取证急需解决的大难题。该文结合数据挖掘的优势,将其处于大数据环境下在电子取证中的应用进行了分析。  关键词:大数据;数据挖掘;电子取证  中图分类号:TP311 文献标识码:A  文章编号:1009-3044(2019)33-0001-02  大数据时代的网络背景下,数据呈现出5V特点,即数据量大(volume)、形式多元化(
近年来,社交网络发展迅速,各种社交的网络平台每天都会产生海量的用户数据。这些无序的数据中隐藏着潜在的价值,也为研究者提供了用数据挖掘中的方法来分析这些数据的机会。
针对舆情分析系统而言,其对提升学校管理水平有着很大的意义和作用。当前,随着的信息化技术发展水平的不断提升,网络技术的发展也变得越来越稳定。在这种背景下,本文即对基于
摘要:随着科学技术的迅猛发展,当下新时代已步入信息能够随时共享、及时传播的数据化新纪元,由此衍生而来的是在电子计算机程序中对大数据进行分层数据管理的系统构建,该文先从介绍分布式数据库系统的特点开始,然后就其设计方法以及对应的优化内容进行探讨,以便推进其更好更快捷的使用。  關键词:分布式数据库;数据库系统;系统查询  中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2017)
数据挖掘是一门交叉性学科,它注重潜在能量,我们可以从广博的数据库中,找到大量有价值的知识、图片、文字等重要信息内容。数据库技术、网络技术以及计算机硬件,是时代发展的科技结晶,它在贮存大量数据的同时,也扩大了人们采集数据的范围。经过多年的发展,数据挖掘已经在商业、金融、医疗等各个领域得到了广泛的应用。本文从数据挖掘的含义、功能出发,探究了数据挖掘的种类和内容,以及在高校招生信息化中的运用。