开发者学堂课程【HBase入门教程:HBase伪分布式、命令_1】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/397/detail/5067
HBase伪分布式、命令_1
目录
一、伪分布式命令
二、搭建伪分布式讲解
一、伪分布式命令
[root@node5 ~]# cd /home/tools/
[root@node5 tools]# ls
[root@node5 tools]# ls
hbase-0.98.12.1-hadoop2-bin.tar.gz jdk-7u67-linux-x64.rpm
[root@node5 tools]# rpm -vih jdk-7u67-linux-x64 .rpm
Preparing... ###########################################[100%]
1 : jdk ###########################################[100%]
Unpacking JAR files...
rt.jar...
jsse.jar...
charsets.jar...
tools.jar...
localedata. jar...
jfxrt.jar. . .
[root@node5 tools]# vi letc/profile
[root@node5 tools]# source /etc/profile
[root@node5 tools]# java -version
java version "1.7.0_67"
java(TM) SE Runtime Environment (build 1.7.0_67-b01)
Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04
,mixed mode)
[root@node5 tools]# ls
hbase-0.98.12.1-hadoop2-bin.tar.gz jdk-7u67-linux-x64.rpm
[root@node5 tools]# tar zxvf hbase-0.98.12.1-hadoop2-bin.tar.gz -C /home/
[root@node5 tools]# cd /home/
[root@node5 home]# ls
hbase-0.98.12.1-hadoop2 tools
[root@node5 home]# mv hbase-0.98.12.1-hadoop2/ hbase-0.98
[root@node5 home]# ls
hbase-0.98tools
[root@node5 home] # cd hbase-0.98/
[root@node5 hbase-0.98]# ls
bin CHANGES.txt conf docs hbase-webapps libLICENSE.txt NOTICE.txt READNE.txt
[root@node5 hbase-0.98]# pwd
/home/hbase-0.98
[root@node5 hbase-0.98]# vi /etc/profile
[root@node5 hbase-0.98]# source /etc/profile
[root@node5 hbase-0.98]# hbase
hbase hbase-common shhbase-daemon shhbase-jruby
hbase-cleanup.sh hbase-config.sh hbase-daemons.sh
[root@node5 hbase-0.98]# ls
bin CHANGES.txt conf docs hbase-webapps libLICENSE.txt NOTICE.txtREADNE.txt
[root@node5 hbase-0.98]# cd conf/
[root@node5 conf]#ls
hadoop-metrics2-hbase.properties hbase-env.sh hbase-site.xml regionservers hbase-env. cmd hbase-policy.xml log4j.properties
[root@node5 conf]# vi hbase-env.sh
[root@node5 conf]# vi hbase-site.xml
[root@node5 conf]# start-hbase.sh
starting master, logging to /home/hbase-0.98/logs/hbase-root-master-node5.out
[root@node5 conf]# cd ..
[root@node5 hbase-0.98]# ls
bin CHANGES.txt conf docs hbase-webapps lib LICENSE.txt logs NOTICE.txt READNE.txt
[root@node5 hbase-0.98]# cd logs/
[root@node5 logs]# ls
hbase-root-master-node5.log hbase-root-master-node5.out SecurityAuth.audit
[root@node5 logs]# jps
1684 Jps
1447 HMaster
[root@node5 logs]# netstar -npl grep java
[root@node5 logs]# hbase shell
hbase(main):001:0> help;
二、搭建伪分布式讲解
这节课首先来搭建 HBase 伪分布式,伪分布式数据存储在本机中,这里打开 VMWare 在"我的计算机"选择node5,打开快照管理器选择初始化,然后开启此虚拟机。再打开 Xshell,选择 node5计算机,输入:cd /home/tools/回车,ls 回车。
需要 Java 和 HBase,但是这边没有软件,需要在 node5内上传 HBase 安装包,再开一个 node1计算机,将 JDK 拷份过来,输入:cd /home/tools/回车,输入 ls 回车得到 hadoop-2.5.1_x64.tar.gz jdk-7u67-linux-x64.rpm tengine-2.1.0 tengine-2.1.0.tar.gz zookeeper-3.4.6.tar.gz。输入 scp jdk-7u67-linux-x64.rpmnode5’pwd’回车,得到 hbase-0.98.12.1-hadoop2-bin.tar.gz jdk-7u67-linux-x64.rpm,输入密码回车即可得到jdk已传输过来:jdk-7u67-linux-x64.rpm。在 node5输入 ls 回车查询得到:hbase-0.98.12.1-hadoop2-bin.tar.gz jdk-7u67-linux-x64.rpm。
安装 jdk,输入 rpm -vih jdk-7u67-linux-x64.rpm 回车,在 node1内输入 tail -9 /etc/profile 回车查看环境变量:
unset -f pathmunge
export JAVA_HOME=/usr/ java/ jdk1.7.0_67
export PATH=$PATH:$JAVA_HOME/bin
export HADOOP_HOME=/home/hadoop-2.5.1
export PATH=$PATH:$HADOOP_HOME/bin : $HADOOP_HOME/sbin
export z0OKEEPER_HOME=/home/zookeeper-3.4.6
export PATH=$PATH:$Z0OKEEPER HOME/bin
找到 JAVA_HOME 复制;在 node5内输入 vi /etc/profile 回车,在此编辑器内将复制的 JAVA_HOME 粘贴回车,输入source /etc/profile 回车,输入 java -version 测试 jdk,得到:
java version "1.7.0_67"
Java(TM) SE Runtime Environment (build 1.7.0_67-b01)
Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04,mixed mode)
输入 ls 回车,得到 hadoop-2.5.1_x64.tar.gz jdk-7u67-linux-x64.rpm tengine-2.1.0 tengine-2.1.0.tar.gz zookeeper-3.4.6.tar.gz。输入 tar zxvf hbase-0.98.12.1-hadoop2-bin.tar.gz -C /home 解压,输入 cd /home 到home 目录下,得到 hbase-0.98.12.1-hadoop2 tools,这就是 HBase。因为有点长所以修改一下:输入 mv hbase-0.98.12.1-hadoop2/ hbase-0.98回车,输入 ls 回车得到 hbase-0.98 tools。
输入 cd hbase-.098/进到目录,输入 ls 得到 bin CHANGES.txt conf docs hbase-webapps lib LICENSE.tXT NOTICE.txt READNE.txt。bin 是对应的执行文件,conf 对应的配置文件目录。输入 pwd 回车得到/home/hbase-0.98,输入 vi /etc/profile 配置环境变量得到:
hbase hbase-common shhbase-daemon shhbase-jruby
hbase-cleanup.sh hbase-config.sh hbase-daemons.sh
输入 source /etc/profile 回车,输入hbase,输入 ls 查询看到没有问题,根据文档需要找到 conf/hbase-env.sh 修改JAVA_HOME,输入 vi hbase-env.sh 进入编辑器找到 JAVA_HOME 修改为 export JAVA_HOME=/usr/java/jdk1.7.0_67。
# The java implementation to use.Java 1.6 required.
export JAVA_HOME=/usr/java/jdk1.7.0_67
接下来找到 hbase-site.xml 修改,输入 vi hbase-site.xml 进入编辑器,这里放在 tmp 目录文件下
hbase.rootdir
file: ///tmp/hbase
hbase.zookeeper.property.dataDir
/tmp/zookeeper
,
输入 start-hbase.sh 回车得到 starting master, logging to /home/hbase-0.98/logs/hbase-root-master-node5.out,提示日志文件输出在 logs 里,既然它是一个伪分布式,那么 master、Locator 都应该有。输入hbase shell 回车,输入 help;回车,可以看到它将常用命令分组了:
COMMAND GROUPS:
Group name:general
Commands : status , table_help , version, whoami
Group name : ddl
Commands: alter, alter_async, alter_status, create, descritbe,disable,disable all,drop, drop_all,emable,erable all, exists , get_table, is_disabled, is enabled, list,show_filters
Group name: namespace
Commands: alter_namespace, create_namespace,describe_namespace,drop_namespace,list_namespace, list_namespace_tables
Group name: dml
Commands : append,count, delete,deleteall, get,get_counter, get splits, incr,put,scan,truncate,truncate_preserve
Group name: tools
Commands: assign, balance_switch,balancer,catalogjanitor_enabled,catalogfanitor_run,catalogjanitor _switch,close_repion,compact,compact_rs, flush,hlog_roll,major_compact,merge_region,move,split, trace,unassign, zk_dump
在 general 里:status 查看状态,table_help 是帮助,version 是版本,whoami 是当前用户。
在 ddl 里最重要的是 create,describe 是查看表描述,disable 是禁用表,drop 是删除表,enable 是启用,exists 是判断表,list 是查看。
namespace,即命名空间,类似于数据库里表空间的概念。对于 namespace 操作,创建、删除、查看、描述有列出哪些 namespace。
在 dml 里,append 基本上不会用到,put 是插入数据,get 查看数据,scan 是扫描。