Hadoop HBase入门学习

24 篇文章 0 订阅
[size=x-large][b]HBase是什么? [/b][/size]
HBase是Apache Hadoop中的一个子项目,[color=red][b]Hbase依托于Hadoop的HDFS作为最基本存储基础单元[/b][/color],通过使用hadoop的DFS工具就可以看到这些这些数据 存储文件夹的结构,还可以通过Map/Reduce的框架(算法)对HBase进行操作。
HBase在产品中还包含了Jetty,[color=red][b]在HBase启动时采用嵌入式的方式来启动Jetty[/b][/color],因此[color=red][b]可以通过web界面对HBase进行管理和查看当前运行的一些状态[/b][/color],非常轻巧。

[img]http://dl2.iteye.com/upload/attachment/0123/8373/43b2563b-aacc-3f32-aee9-f3cf7b27036d.png[/img]

[size=x-large][b]为什么采用HBase?[/b][/size]
HBase不同于一般的关系数据库,[color=red][b]它是一个适合于非结构化数据存储的数据库。[/b][/color]所谓非结构化数据存储就是说[color=blue][b]HBase是基于列的而不是基于行的模式[/b][/color],这样方便读写你的大数据内容。

[size=large][color=blue][b]HBase是面向列的数据库[/b][/color][/size]

[size=medium][color=red][b]HBase是介于Map Entry(key & value)和DB Row之间的一种数据存储方式。[/b][/color][/size]就点有点类似于现在流行的Memcache,但不仅仅是简单的一个key对应一个 value,你很可能需要存储多个属性的数据结构,但没有传统数据库表中那么多的关联关系,这就是[color=blue][b]所谓的松散数据[/b][/color]。

简单来说,你在HBase中的表创建的可以看做是一张很大的表,而这个表的属性可以根据需求去动态增加,[color=red][b]在HBase中没有表与表之间关联查询。[/b][/color]你只需要 告诉你的数据存储到Hbase的那个column families 就可以了,[color=red][b]不需要指定它的具体类型:char,varchar,int,tinyint,text等等。[/b][/color]但是你[size=medium][b]需要注意HBase中不包含事务此类的功能。[/b][/size]

Apache HBase 和Google Bigtable 有非常相似的地方,一个数据行拥有一个可选择的键和任意数量的列。[color=red][b]表是疏松的存储的,因此用户可以给行定义各种不同的列[/b][/color],对于这样的功能在大项目中非常实用,可以简化设计和升级的成本。

[size=x-large][b]如何运行HBase?[/b][/size]
从 Apache的HBase的镜像网站上下载一个稳定版本的HBase http://mirrors.devlib.org/apache/hbase/stable/hbase-0.20.6.tar.gz, 下载完成后,对其进行解压缩。确定你的机器中已经正确的安装了Java SDK、SSH,否则将无法正常运行。

进入此目录
$ cd /work/hbase


编辑 conf/hbase-env.sh 文件,将JAVA_HOME修改为你的JDK安装目录
$ vim conf/hbase-env.sh
export JAVA_HOME=/JDK_PATH


输入你的所有HBase服务器名,localhost,或者是ip地址
$ vim conf/regionservers


启动hbase, 中间需要你输入两次密码,也可以进行设置不需要输入密码,启动成功。
$ bin/start-hbase.sh


启动hbase REST服务后就可以通过对uri: http://localhost:60050/api/ 的[color=blue][b]通用REST操作(GET/POST/PUT/DELETE)实现对hbase的REST形式数据操作.[/b][/color]
$ bin/hbase rest start


也可以输入以下指令进入HQL指令模式
$ bin/hbase shell


关闭HBase服务
$ bin/stop-hbase.sh
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值