HBase部署及数据库基本操作

一、动手实践部署HBase集群。(部署步骤)

①安装JDK;

②部署Hadoop;

③配置Hadoop集群;

④部署Zookeeper;

⑤Hbase部署:

  (1)通过SecureCRT工具将HBase安装包上传到服务器nosql01的/opt/software/目录下,并修改安装包的用户和用户组权限为user_hbase,然后解压HBase安装包至/opt/servers/hbase_demo目录下。解压安装包的具体命令如下:

tar -zxvf /opt/software/hbase-1.2.1-bin.tar.gz -C /opt/servers/hbase_demo/

  (2)将/hadoop-2.7.4/etc/hadoop目录下的hdfs-site.xml和core-site.xml配置文件复制一份到/hbase-1.2.1/conf目录下,复制文件的具体命令如下:

 cp /opt/servers/hbase_demo/hadoop-2.7.4/etc/hadoop/{hdfs-site.xml,core-site.xml} /opt/servers/hbase_demo/hbase-1.2.1/conf

  (3)进入/opt/servers/hbase_demo/hbase-1.2.1/conf目录,修改相关配置文件。修改hbase-env.sh配置文件,指定jdk的环境变量并配置Zookeeper(默认是使用内置的Zookeeper服务),修改后的hbase-env.sh文件内容具体如下:

 # 配置jdk环境变量

export JAVA_HOME=/opt/servers/hbase_demo/jdk

# 配置hbase使用外部Zookeeper

export HBASE_MANAGES_ZK=false

     修改hbase-site.xml配置文件,指定HBase在HDFS的存储路径、HBase的分布式存储方式以及Zookeeper地址,修改后的hbase-site.xml文件内容具体如下:

<configuration>

<!-- 指定hbase在HDFS上存储的路径 -->

        <property>

                <name>hbase.rootdir</name>

                <value>hdfs://nosql01:9000/hbase</value>

        </property>

                <!-- 指定hbase是分布式的 -->

        <property>

                <name>hbase.cluster.distributed</name>

                <value>true</value>

        </property>

                <!-- 指定zk的地址,多个用“,”分割 -->

        <property>

                <name>hbase.zookeeper.quorum</name>                 

          <value>nosql01:2181,nosql02:2181,nosql03:2181</value>

        </property>

</configuration>

修改regionservers配置文件,配置HBase的从节点角色(即nosql02和nosql03)。具体内容如下:

 nosql02

nosql03

    修改regionservers配置文件,配置HBase的从节点角色(即nosql02和nosql03)。具体内容如下:

nosql02

    通过执行“vi ~/.bash_profile”命令,修改用户user_hbase的环境变量配置文件.bash_profile,即配置HBase的环境变量(服务器nosql01、nosql02和nosql03都需要配置,这里以服务器nosql01为例),具体内容如下:

# 配置HBase环境变量

export HBASE_HOME=/opt/servers/hbase_demo/hbase-1.2.1

export PATH=$PATH:$HBASE_HOME/bin

    将HBase的安装目录分发至nosql02、nosql03服务器上。具体命令如下:

scp -r /opt/servers/hbase_demo/hbase-1.2.1/ nosql02:/opt/servers/hbase_demo/

$ scp -r /opt/servers/hbase_demo/hbase-1.2.1/ nosql03:/opt/servers/hbase_demo/

在服务器nosql01、nosql02和nosql03上分别执行“source ~/.bash_profile”命令,使环境配置文件生效。需要注意的是每次切换成user_hbase用户后,都需要执行“source ~/.bash_profile”命令初始化用户环境变量。

(4)在启动HBase集群之前,必须要保证集群中各个节点的时间是同步的,若不同步会抛出ClockOutOfSyncException异常,导致从节点无法启动。因此需要在集群各个节点中执行如下命令来保证时间同步。

# 安装ntpdate

$ sudo yum install ntpdate -y

# 时间同步

$ sudo ntpdate -u cn.pool.ntp.org

(5)启动Zookeeper和Hadoop(启动之前,先确保已经关闭之前开启的Zookeeper服务和Hadoop相关服务),具体命令如下:

# 启动zookeeper

$ zkServer.sh start

# 启动Hadoop相关的服务

$ start-all.sh

(6) 启动HBase集群,具体命令如下:

 $ start-hbase.sh

二、启动HBase集群的方法及步骤;  

在HBase的安装目录下,执行“bin/hbase shell”或者“hbase shell”命令进入到HBase Shell界面,具体效果如图所示。

三、查看三台虚拟机的所有启动进程。(给出3台机器的启动进程截图)

 

 

 

四、进入HBase shell,执行下列操作:

 Row Key

            info

            score

  sno

  name

   sex

  Nosql

 Hadoop

   Linux

  0001

B19040101

  lili

   female

   85

    78

   83

  0002

B19040102

  zhanghai

   male

   90

    88

   78

  0003

B19040103

  dengli

   female

   95

    89

   90

  0004

B19040104

  hangpeng

   male

   79

    78

   75

(1)创建HBase表student,两个列族:info,score;

create 'student','info','score'

 

(2)在student表中插入上面4行数据;

 (3)查询student表中的所有数据;

scan 'student'

 

 (4)查询0001行数据的Hadoop课程成绩;

get 'student','0001','score:Hadoop'

 

 (5)查询0001行数据的所有列的值;

get 'student','0001'

 (6)将0001行数据的score:Nosql列的值修改90;

put 'student','0001','score:Nosql','90'

(7)将0002行数据的score:Hadoop列的值删除;

 delete 'student','0002','score:Hadoop'

(8)将0002行数据删除;

deleteall 'student','0002'

(9)统计student表数据的行数;

count 'student'

(10)为student表增加一个新列族:memo;

alter 'student','memo'

 (11)删除student表

drop 'student'

五、关闭HBase集群的方法及步骤。

可以通过键入exit命令退出shell。

要停止HBase,浏览进入到HBase主文件夹,然后键入以下命令。

./bin/stop-hbase.sh

 

 

 

 

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值