- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
探究Hbaes数据库迁移工具设计及实现
探究Hbaes数据库迁移工具设计及实现 摘要:互联网时代迅速来临,开始出现数据海量化、用户访问高量化的局面,但是数据库在这个过程中就承受了巨大的压力,也就不得不有了更高的性能要求,Hbaes数据可就可以解决这一问题。本文主要是从Hbaes数据库的特点开始论述,研究了Hbaes数据库工具的设计与实现
关键词:Hbaes数据库迁移工具;设计方案;研究现状
中图分类号:TP311.13 文献标识码:A 文章编号:1007-9416(2017)04-0209-02
随着互联网的进一步的普及,人们利用互联网进行社交,那么如何保证在高访问的前提下使数据库仍旧保持稳定,具有可靠性是当先应该解决的问题。那么Hbaes就是一个分布式的、面向列的数据库,存在巨大的优势,使得越来越多的网页应用都开始重新构建数据中心。但是Hbaes数据库的表面结构十分疏松,与传统的数据库结构有很大的差异性,数据库的表结构都是人工重新输入的,在开发的过程中就耗费了巨大的人力物力,每一次更新都需要重复这个过程,在迁移的时候非常的不方便,于是就需要新的技术手段将工作人员从不断重复的迁移过程中解放出来
1 Hbaes数据库的设计理念
(1)Hbaes数据库是一种有版本的大单元格,数据行是有序的,只要是有列簇的存在就可以随时随地的在客户端上添加列。此外,此数据库利用极小的开销管理较宽的稀疏表,是Hbaes数据库最大的特点
(2)利用Hbaes数据库查询数据时,输入不同的请求会有不同的几种情况。在全面扫描的时候需要扫描整个表,大量的时间被花费掉,使得效率变得非常的差;还有就是行键扫描是利用键的存在的数据进行对比,是效率最高也是方法最简单的一个;而区间扫描则是介于两者之间的,不快也不慢。并不是所有的查询数据的方法都可以在Hbaes数据库中使用的,在具体的操作过程中就可以择优录取了
2 Hbaes数据库迁移工具的具体实现的方法
(1)数据类型映射。数据类型的定义方式在传统的数据库中形式是多种多样的但是在Hbaes数据库中只有一些以字节流的方式存在的类型,相对而言类型会显得小一些。但是Hbaes数据库对一般的数据类型都支持转化,通过工具的转化就可以方便的读取和使用这些数据了,也就是一些略微复杂的数据需要多进行几次转化才能够进一步的使用
(2)功能模块的划分。Hbaes数据库根据具体实现的功能的不同大体分成了四个具体的模块。一是解析器,这就是一个将传统的数据库中的一些文件利用外部工具导出的表模式的定义文档,也可以被称为是一个具体代码的JAVE接口。二是一个表模式转换器,这个模块就是将传统的表模式定义转换成HBAES数据库中的表模式,任何一种转化方式都是适用的。第三则是是表模式适配器,这个模块就是将一些表模式的定义读取或者是转化过来,并且为其他的模式寻找一些接口。四是数据表管理器,就是将传统的数据库中的数据迁移到Hbaes数据库中
API中的Put可以说是Hbaes数据库中一种最简单的方式,它的使用方法也是比较好学习的,尽管在大部分方式上它并非是最有效的,只要是需要在规定的时间内将数量极其多的数据输入到Hbae数据库中时,效率的问题就体现出来了。一般情况下,需要处理的数据都是巨大的,效率低下的数据库根本完不成任务,同时这也就是Hbae数据库与其它数据库相比之下的优点。在一个项目开始之前,选择什么样的数据库就应该被提上日程,免得因为数据库的使用而完不成任务或者是其他严重的性能问题
在Hbae数据库可以大量的将数据载入进去,这个功能就是bulk load。这个功能其实是一个简单的工具,利用MapReduce Job来实现数据的海量输入,使得数据库中的一个文件格式生成一个数据表,将这个数据表加载到正在运行中的集群中。这个工具在通常情况下都是很好用的,只不过在导入其他的数据格式时就会利用编程来生成数据,MapReduce就是处理海量数据中最有效的一个方法,也是最常用的一个方法。即使是使用MapReduce数据处理的方法,数据库中的海量数据也会变得十分繁重,只要有一点处理不当就会使数据库运行出现问题
3 Hbaes数据的四维数据模型
(1)行键。每行都有一个唯一的行键,行键没有数据类型,它内部被认为是一个字节数组
(2)列簇。数列在行中被组织成列簇,每行都有一个相同的列簇,但是在行之间,相同的列簇不需要有相同的列修饰符。在引擎之中,Hbaes数据库将列簇存储在自己的数据库文件之中,所以就需要事先被定义,改变列簇并不容易
(3)列修饰符。列簇定义真实的列,被称之为列修饰符,也可以说列修饰符就是列本身
(4)版本。每列都可以有一个可配置的版本数量,你可以通过列修饰符的制定版本获取数据
4 Hbaes数据库的使用
文档评论(0)