基于HBase钻井数据存储研究.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于HBase钻井数据存储研究

基于HBase钻井数据存储研究   摘要摘要:提出了基于HBase的海量钻井数据存储技术。将HBase的分布式存储特点和钻井工程的实际需求相结合,设计了一个快速、高效、安全的海量钻井数据存储方案。介绍了HBase的存储模型以及系统架构,详细描述了钻井数据在HBase分布式存储系统中的存储过程。   关键词关键词:Hadoop;HBase;钻井工程;钻井数据   DOIDOI:10.11907/rjdk.1511447   中图分类号:TP392   文献标识码:A文章编号文章编号2016)002014303   0引言   随着信息化技术在钻井工程中的推广应用,钻井信息数据越来越多,数据收集的频率也越来越高,传统的存储系统架构逐渐难以满足现阶段海量钻井数据的存储要求,系统负载饱和以及读写性能成为信息化发展的瓶颈。传统的解决方法是购置更加高端的硬件设备来提高系统的计算和处理能力,这种方式缺点是存储效率低、扩展成本高。随着信息技术的发展,以水平扩展类的分布式架构作为解决方案的Hadoop[1]分布式存储和并行计算平台技术已经相对成熟,能够支持数据的高并发、高吞吐量、高可靠性、高容错性,成本也较低,成为海量数据存储管理的发展趋势。   HBase(Hadoop dataBase)[2]作为Apache Hadoop中的一个子项目,以Google的BigTable为原型,实现了具有高可靠性、高性能、列存储、可伸缩、实时读/写的数据库系统。随着Hbase在Hadoop开源社区的发展,企业已经将Hbase数据库系统成功应用于内部海量数据的存储与检索项目中。本文对Hbase在钻井工程上的应用进行了研究,以解决海量钻井数据存储与实时检索问题。   1HBase基本原理   1.1HBase数据模型   HBase是Apache Hadoop的一个子项目,是支持结构化和非结构化数据存储的分布式数据库,是Bigtable的开源实现,能够对大型数据提供实时的读写访问。HBase与Bigtable类似,是一个稀疏的、长期存储的、多维度的、排序的映射表,其表索引由行关键字、列关键字和时间戳组成,其值都是字符类型[3]。   HBase的逻辑模型:HBase以表的形式存储数据,每个表由行和列组成,类型相同或者逻辑上关联的列组成一个列族(Column Family,CF)[4],每个列属于一个特定的列族,列名通常写作family:qualifier的形式。行和列确定的存储单元为一个元素(Cell),每个元素保存同一份数据的多个版本,通过时间戳(Time Stamp)标示。由于HBase是稀疏存储数据,所以某些列可以为空。HBase的数据存储逻辑视图如表1所示。r1和r2是唯一的row key,c1和c2是两个列族,每个列族下又包含若干列。比如c1这个列族下包括3列,qualifier名字是1,2和3,c1:1,c2:2和c1:3是由r1和c1唯一确定的一个单元(cell)。这个单元中有3个数据:value1-1/1,value1-1/2和value1-1/3。表中用时间戳(Time Stamp)来唯一标识存入的每一条数据,用数字表示,数字越大,则表示存入的数据越早。   HBase的物理模型:从逻辑视图来看,每个表格是由很多行组成的,但是在物理存储方面,它实际就是把概念模型中的一行分割,并按照列族存储。表1中r1行在物理存储时如表2所示。   比较表1和表2发现,在逻辑视图上空白的列实际存储中是不会被存储的,而当请求访问这些逻辑视图上空白的单元格时,系统会返回一个null值。如果在查询的时候不提供时间戳,就会返回距离查询时间最近的一个时间版本数据,因为在存储的时候,数据会按照时间戳排序。   1.2HBase系统架构   HBase中的每张表都根据行键值分割,按照一定的范围分割成多个子表(HRegion)。任意一张表,初始阶段都只有一个Region。随着数据量的增长,当Region的大小超过256M时(默认情况下),该Region便被分割成两个新的Region,由HRegionServer负责管理。所以一个表的Region个数是随着数据的增长而增加的,而一个表的多个Region可能会分布在不同的HRegionServer上,HMaster通过监测不同的HRegionServer负载情况,对Region的分布进行调整。HBase系统架构如图1所示。   HBase基本组件如下:①Client:存有访问HBase的接口,并通过维护cache中Region位置信息来加快HBase访问;②Master:为RegionServer分配Region;负责RegionServer的负载均衡;发现失效的RegionS

文档评论(0)

317960162 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档