
数事教术与度用
设计开发
研究Hbaes数据库迁移工具的设计与实现
孙瑜李昆菊谢晓竹
(装甲兵工程学院,北京100072)
摘要:互联网时代迅速来临,开始出现数据海量化、用户访问高量化的局面,但是数据库在达个过程中就承受了巨大的压力,也就不得不有了更高的性能要求,Hbaes数据可就可以解决这一间题。本文主要是从Hbaes数据库的特点开始论选,研究了Hbaes数据库工具的设计与实现,
关键词:Hbaes数据库迁移工具;设计方案;研究现状
中图分类号:TP311.13
文献标识码:A
随着互联网的进一步的普及,人们利用互联网进行社交,那么如何保证在高访间的前提下使数据库仍旧保持稳定,具有可靠性是当先应该解决的间题。那么Hbaes就是一个分布式的、面向列的数据库,存在巨大的优势,使得越来越多的网页应用都开始重新构建数据中心。但是Hbaes数据库的表面结构十分疏松,与传统的数据库结构有很大的差异性,数据库的表结构都是人工重新输入的,在开发的过程中就耗费了巨大的人力物力,每一次更新都需要重复这个过程,在迁移的时候非常的不方便,于是就需要新的技术手段将工作
人员从不断重复的迁移过程中解放出来。 1Hbaes数据库的设计理念
(1)Hbaes数据库是一种有版本的大单元格,数据行是有序的只要是有列簇的存在就可以随时随地的在客户端上添加列。此外,此数据库利用极小的开销管理较宽的稀疏表,是Hbaes数据库最大的特点。
(2)利用Hbaes数据库查询数据时,输入不同的请求会有不同的几种情况。在全面扫描的时候需要扫描整个表,大量的时间被花费掉,使得效率变得非常的差;还有就是行键扫描是利用键的存在的数据进行对比,是效率最高也是方法最简单的一个;而区间扫描则是介于两者之间的,不快也不慢。并不是所有的查询数据的方法都可以在Hbaes数据库中使用的,在具体的操作过程中就可以择优录取了。
2Hbaes数据库迁移工具的具体实现的方法
(1)数据类型膜射。数据类型的定义方式在传统的数据库中形式是多种多样的但是在Hbass数据库中只有一些以字节流的方式存在的类型,相对而言类型会显得小一些。但是Hbaes数据库对一般的数据类型都支持转化,通过工具的转化就可以方便的读取和使用这些数据了,也就是一些略微复杂的数据需要多进行儿次转化才能够进一步的使用。
(2)功能模块的划分。Hbaes数据库根据具体实现的功能的不同大体分成了四个具体的模块。一是解析器,这就是一个将传统的数据库中的一些文件利用外部工具导出的表模式的定义文档,也可以被称为是一个具体代码的AVE接口。二是一个表模式转换器,这个模块就是将传统的表模式定义转换成HBAES数据库中的表模式,任何一种转化方式都是适用的。第三则是是表模式适配器,这个模块就是将一些表模式的定义读取或者是转化过来,并且为其他的模
收稿日期:2017-04-17
文章编号:1007-9416(2017)04-0209-02
式寻找一些接口。四是数据表管理器,就是将传统的数据库中的数据迁移到Hbaes数据库中。
API中的Put可以说是Hbaes数据库中一种最简单的方式,它的使用方法也是比较好学习的,尽管在大部分方式上它并非是最有效的,只要是需要在规定的时间内将数量极其多的数据输人到Hbae数据库中时,效率的问题就体现出来了。一般情况下,需要处理的数据都是巨大的,效率低下的数据库根本完不成任务,同时这也就是 Hbae数据库与其它数据库相比之下的优点。在一个项目开始之前,选择什么样的数据库就应该被提上目程,免得因为数据库的使用面完不成任务或者是其他产重的性能问题,
在Hbae数据库可以大量的将数据载人进去,这个功能就是
bulkload,这个功能其实是一个简单的工具,利用MapReduoeJob 来实现数据的海量输人,使得数据库中的一个文件格式生成一个数据表,将这个数据表加载到正在运行中的集群中。这个工具在通带情况下都是很好用的,只不过在导人其他的数据格式时就会利用缩程来生成数据,MapReduce就是处理海量数据中最有效的一个方法,也是最常用的一个方法。即使是使用MapReduce数据处理的方法,数据库中的海量数据也会变得十分繁重,只要有一点处理不当
就会使数据库运行出现问题。 3Hbaes数据的四维数据模型
(1)行键。每行都有一个唯一的行键,行键没有数据类型,它内部被认为是一个字节数组,
(2)列镁。数列在行中被组织成列镁,每行都有一个相同的列簇,但是在行之间,相同的列簇不需要有相同的列修饰符。在引擎之中, Hbaes数据库将列護存储在自已的数据库文件之中,所以就需要事先被定义,改变列護并不容易。
(3)列修饰符。列簇定义真实的列,被称之为列修饰符,也可以说列修饰符就是列本身。
(4)服本。每列都可以有一个可配置的版本数量,你可以通过列
修饰符的制定版本获取数据 4Hbaes数据库的使用
(1)首先通过一个行键获取另一个指定的行,它是由一个或者是多个列簇组成的,每一个列或者是多个列修饰符,每列又可以有一个或者是多个的版本,为了获取指定的数据,就需要知道行键,列。列修饰符和服本,在Hbaes设计模型时对考数据是十分有帮助
作者简介:孙瑜(1984一),女,陕西西安人,汉族,项士研究生在读,研究方向:计算机技术;李昆菊(1981一),女,河北泊头人,汉族,硕士,讲师,研究
方向:军事装备学;谢晓行(1966一),女,河南安阳人,汉族,博士,副教授,研究方向:战场侦查与情报处理
209
万方数据