下载:http://mirror.bit.edu.cn/apache/hbase/stable/

官方指南:http://abloz.com/hbase/book.html

安装配置:

解压:

tar -xzvf hbase-0.96.0-hadoop1-bin.tar.gz

进入$hbase/lib下查看相关的hadoop包,看是哪个版本的hadoop。

此处只记录伪分布式Hbase的安装。

配置参数,修改hbase-site.xml:

  1. <configuration>
  2. ...
  3. <property>
  4. <name>hbase.rootdir</name>
  5. <value>hdfs://localhost:9000/hbase</value>
  6. <description>The directory shared by RegionServers.
  7. </description>
  8. </property>
  9. <property>
  10. <name>dfs.replication</name>
  11. <value>1</value>
  12. <description>The replication count for HLog & HFile storage. Should not be greater than HDFS datanode count.
  13. </description>
  14. </property>
  15. ...
  16. </configuration>

伪分布式启动:

伪分布式是基于HDFS的,所以需要先启动HDFS.

之后启动HBase

sh start-hbase.sh

不出意外的报错:

dat@dat-HP:/opt/hbase-0.96/bin$ sh start-hbase.sh 
start-hbase.sh: 79: /opt/hbase-0.96/bin/hbase-config.sh: [[: not found
start-hbase.sh: 88: /opt/hbase-0.96/bin/hbase-config.sh: [[: not found
start-hbase.sh: 53: [: false: unexpected operator

localhost: zookeeper running as process 24164. Stop it first.
starting master, logging to /opt/hbase-0.96/bin/../logs/hbase-dat-master-dat-HP.out
Could not start ZK at requested port of 2181.  ZK was started at port: -1.  Aborting as clients (e.g. shell) will not be able to find this ZK quorum.

看样子是2181被占用了,查看占用2181端口的进程:

lsof -i:2181

  1. dat@dat-HP:/opt/hbase-0.96/logs$ lsof -i:2181
  2. COMMAND   PID USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
  3. java    24164  dat   87u  IPv6 2800953      0t0  TCP *:2181 (LISTEN)

ps -ef|grep 24164

  1. dat@dat-HP:/opt/hbase-0.96/logs$ ps -ef|grep 24164
  2. dat      24164 24151  0 10:09 ?        00:00:03 /opt/jdk1.7.0_25/bin/java -Dproc_zookeeper -XX:OnOutOfMemoryError=kill -9 %p -Xmx1000m -XX:+UseConcMarkSweepGC -Dhbase.log.dir=/opt/hbase-0.96/bin/../logs -Dhbase.log.file=hbase-dat-zookeeper-dat-HP.log -Dhbase.home.dir=/opt/hbase-0.96/bin/.. -Dhbase.id.str=dat -Dhbase.root.logger=INFO,RFA -Dhbase.security.logger=INFO,RFAS org.apache.hadoop.hbase.zookeeper.HQuorumPeer start

显示已经是hbase的zookeeper服务,杀掉pid,重试,

  1. dat@dat-HP:/opt/hbase-0.96/bin$ ./start-hbase.sh
  2. starting master, logging to /opt/hbase-0.96/bin/../logs/hbase-dat-master-dat-HP.out

正常启动,检测jps

  1. dat@dat-HP:/opt/hbase-0.96/bin$ jps
  2. 25644 HMaster
  3. 23468 TaskTracker
  4. 23199 SecondaryNameNode
  5. 23307 JobTracker
  6. 25849 Jps
  7. 22827 NameNode
  8. 23031 DataNode

正常。。。

HBase Shell

编辑/etc/profile加入hbase_home,重新生效,source /etc/profile

  1. export PIG_INSTALL=/opt/pig-0.12.0
  2. export PATH=$PATH:$PIG_INSTALL/bin
  3. export PIG_CLASSPATH=/opt/hadoop-1.2.1/conf
  4. export HIVE_HOME=/opt/hive-0.12.0
  5. export PATH=$HIVE_HOME/bin:$HIVE_HOME/conf:$PATH
  6. export ANT_HOME=/opt/ant
  7. export PATH=$PATH:$ANT_HOME/bin
  8. export HBASE_HOME=/opt/hbase-0.96
  9. export PATH=$PATH:$HBASE_HOME/bin

hbase shell进入:

  1. dat@dat-HP:/opt/hbase-0.96/bin$ hbase shell
  2. HBase Shell; enter 'help<RETURN>' for list of supported commands.
  3. Type "exit<RETURN>" to leave the HBase Shell
  4. Version 0.96.0-hadoop1, r1531434, Fri Oct 11 15:11:29 PDT 2013
  5. hbase(main):001:0>

输入help,会列出hbase shell所支持的命令

shutdown是关闭hbase集群,exit是退出hbase shell。

HBase Shell 练习

建表

hbase(main):006:0> create 'test','cf'

列出所有表

hbase(main):007:0> list
TABLE                                                                               
test                                                                                
1 row(s) in 0.0440 seconds

=> ["test"]

插入数据

hbase(main):008:0> put 'test','row1','cf:a','value1'
0 row(s) in 0.0750 seconds

hbase(main):009:0> put 'test','row2','cf:b','value2'
0 row(s) in 0.0080 seconds

hbase(main):010:0> put 'test','row3','cf:c','value3'
0 row(s) in 0.0060 seconds

检查插入情况

hbase(main):011:0> scan 'test'
ROW                    COLUMN+CELL                                                  
 row1                  column=cf:a, timestamp=1386389158263, value=value1           
 row2                  column=cf:b, timestamp=1386389170821, value=value2           
 row3                  column=cf:c, timestamp=1386389185954, value=value3           
3 row(s) in 0.0450 seconds

get一行

hbase(main):012:0> get 'test','row2'
COLUMN                 CELL                                                         
 cf:b                  timestamp=1386389170821, value=value2                        
1 row(s) in 0.0140 seconds

disable之后drop表

hbase(main):013:0> disable 'test'
0 row(s) in 1.4220 seconds

hbase(main):014:0> drop 'test'
0 row(s) in 0.2740 seconds

hbase(main):015:0> list
TABLE                                                                               
0 row(s) in 0.0270 seconds

=> []

最新文章

  1. 通过jquery js 实现幻灯片切换轮播效果
  2. WPF之依赖属性
  3. 利用WinPcap模拟网络包伪造飞秋闪屏报文
  4. 向Oracle中传入数组,批量执行SQL语句
  5. oracle 清除当前用户的回收站
  6. Chapter 17_2 备忘录函数
  7. 入门VMware Workstation下的Debian学习之基本命令(二)
  8. WPF 10天修炼 第七天- WPF资源、样式、控件模板
  9. const修饰函数
  10. JDBC模拟用户登录
  11. Set原理
  12. maven - 使用nexus 搭建maven私服
  13. python基础下的数据结构与算法之链表
  14. 奇怪的Visual Studio 2013停止响应问题
  15. Leetcode 34
  16. java后台获取URL带参demo
  17. 万里长征第二步——django个人博客(第二步 ——日志记录器)
  18. Avro之二:入门demo
  19. iView 初识
  20. 【kd-tree】bzoj3290 Theresa与数据结构

热门文章

  1. ES6 中 Symbol.split的用法
  2. (转)akka Router实例
  3. Mac版小黑屋提示无法确认开发者身份的解决办法
  4. C#基础视频教程7.1 如何编写简单游戏
  5. NET设计规范(二) 命名规范
  6. Effective java读书札记第一条之 考虑用静态工厂方法取代构造器
  7. chrome 设置启动时打开特定一组网页
  8. 〖Linux〗不重复启动某应用程序的脚本
  9. HDU1823-Luck and Love-二维线段树(模板)
  10. 【Leet Code】Palindrome Number