博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《HBase管理指南》一1.2 快速入门
阅读量:6565 次
发布时间:2019-06-24

本文共 3863 字,大约阅读时间需要 12 分钟。

本节书摘来异步社区《HBase管理指南》一书中的第1章,第1.2节,作者: 蒋燚峰 译者: 苏南,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.2 快速入门

HBase有两种运行模式:单机运行(Standalone)模式和分布式运行(Distributed)模式。单机运行模式是HBase的默认模式。在单机模式中,HBase会使用一个本地文件系统来代替HDFS,并且在同一个JVM上运行所有的HBase守护进程和HBase管理的ZooKeeper实例。

本节将介绍单机HBase的安装。内容包括:安装HBase、以单机模式启动HBase、在HBase Shell中创建一张表、插入记录、清除记录以及关闭单机模式HBase实例。

1.2.1 准备

你需要有一台Linux机器来运行这组软件栈。不建议在Windows系统之上运行HBase。本书将以Debian 6.0.1(Debian Squeeze)为例进行讲解,因为我所任职的Rakuten公司就有多个运行在Debian上的Hadoop/HBase集群,而6.0.1是目前最新一版的Amazon Machine Image(AMI)。你可以从下载它。

HBase是用Java编写的,因此需要先安装Java。HBase只能运行在Oracle的JDK上,所以在安装时不要使用OpenJDK。尽管Java 7已经发布了,但我们并不建议使用,因为它还需要更多的时间来测试。可以从下列地址中下载到最新版的Java SE 6:。

执行下载到的二进制文件,安装Java SE 6。本书将使用/usr/local/jdk1.6来作为JAVA_HOME。

root# ln -s /your/java/install/directory /usr/local/jdk1.6

我们将新建一个名为Hadoop的用户,用来作为所有HBase/Hadoop守护进程和文件的所有者。我们还要把所有HBase文件和数据都存储在/usr/local/hbase目录下。

root# useradd hadooproot# mkdir /usr/local/hbaseroot# chown hadoop:hadoop /usr/local/hbase

1.2.2 操作步骤

从HBase官方网站()上可以下载到HBase的最新稳定版本。

单机运行模式HBase实例的安装步骤如下。

1.下载HBase源码包,然后将其解压缩到我们为HBase准备的根目录中。为了使安装过程更为简单,我们还要设置一个HBASE_HOME环境变量。完成这两组操作的命令如下:

root# su - hadoophadoop$ cd /usr/local/hbasehadoop$ tar xfvz hbase-0.92.1.tar.gzhadoop$ ln -s hbase-0.92.1 currenthadoop$ export HBASE_HOME=/usr/local/hbase/current

2.在HBase的环境设置文件中设定环境变量JAVA_HOME,命令如下:

hadoop$ vi $HBASE_HOME/conf/hbase-env.sh    # The java implementation to use. Java 1.6 required.    export JAVA_HOME=/usr/local/jdk1.6

3.为HBase创建一个用于存储数据的目录,然后将该路径设置在HBase配置文件(hbase-site.xml)的 标签内。此步操作所使用的命令如下:

hadoop$ mkdir -p /usr/local/hbase/var/hbasehadoop$ vi /usr/local/hbase/current/conf/hbase-site.xml  
hbase.rootdir
file:///usr/local/hbase/var/hbase

4.使用如下命令以单机运行模式启动HBase:

hadoop$ $HBASE_HOME/bin/start-hbase.shstarting master, logging to /usr/local/hbase/current/logs/hbase- hadoop- master-master1.out

5.使用如下命令通过HBase Shell连接到正在运行的HBase上:

hadoop$ $HBASE_HOME/bin/hbase shell HBase Shell; enter 'help
' for list of supported commands.Type "exit
" to leave the HBase ShellVersion 0.92.1, r1298924, Fri Mar 9 16:58:34 UTC 2012

6.创建一张表并再插入一些值,以此来验证HBase是否安装正确。使用如下命令创建一张名为test的表,并为该表创建一个名为cf1的列族。

hbase(main):001:0> create 'test', 'cf1'0 row(s) in 0.7600 seconds

(1)使用如下命令列出新创建的这张表:

hbase(main):002:0> listTABLEtest1 row(s) in 0.0440 seconds

(2)使用如下命令在新创建的表中插入一些值:

hbase(main):003:0> put 'test', 'row1', 'cf1:a', 'value1'0 row(s) in 0.0840 secondshbase(main):004:0> put 'test', 'row1', 'cf1:b', 'value2'0 row(s) in 0.0320 seconds

7.使用scan命令验证我们已将数据插入到了HBase中:

hbase(main):003:0> scan 'test'ROW                              COLUMN+CELLrow1       column=cf1:a, timestamp=1320947312117, value=value1row1       column=cf1:b, timestamp=1320947363375, value=value21 row(s) in 0.2530 seconds

8.现在,使用disable和drop命令清除掉前面的操作。

(1)使用如下命令禁用表 test:

hbase(main):006:0> disable 'test'0 row(s) in 7.0770 seconds

(2)使用如下命令删除表test:

hbase(main):007:0> drop 'test'0 row(s) in 11.1290 seconds

9.使用如下命令退出HBase Shell:

hbase(main):010:0> exit

10.执行stop脚本关闭HBase实例:

hadoop$ /usr/local/hbase/current/bin/stop-hbase.shstopping hbase.......

1.2.3 运行原理

通过上面的操作,我们在单台服务器上完成了HBase 0.92.1的安装工作。我们使用了一个名为current的符号链接来指向其安装包的解压缩目录,这样可以使将来的升级更为方便。

为了让HBase能够知道Java的安装位置,我们在HBase的环境设置脚本HBase-env.sh中设置了JAVA_HOME。该脚本中还有一些关于Java堆和HBase守护进程的设置。本书的8~9章将对这些设置进行深入的讨论。

在第1步中,我们在本地文件系统中创建了一个目录,用于存储HBase的数据。在安装完全分布式的HBase时,需要将HBase配置为使用HDFS(而非使用本地文件系统)的方式。当我们在一台服务器上执行了start-hbase.sh脚本时,在该服务器上将会启动一个HBase的主守护进程(HMaster)。因为这一次我们没有配置区域服务器,所以HBase也只是在同一个JVM中启动了一个从守护进程(HRegionServer)。

正如“1.1 简介”一节提到过的那样,HBase需要使用ZooKeeper来作为自己的协调服务。而你可能也已经注意到了,前面这些步骤中并没有启动ZooKeeper。这是因为HBase在默认情况下会启动和管理一个它自己的ZooKeeper仲裁团。

接下来,我们通过HBase Shell连接上了HBase。我们可以使用HBase Shell来管理HBase集群、访问HBase中的数据并完成很多其他的工作。这一次,我们创建了一张名为test的表,向HBase中插入了一些数据,对test表进行了扫描,然后禁用并删除了这张表,最后退出了shell。

我们可以使用HBase的stop-hbase.sh脚本来关闭HBase。该脚本会将HMaster和HRegionServer守护进程都关闭。

转载地址:http://ncjjo.baihongyu.com/

你可能感兴趣的文章
static与线程安全 -摘自网络
查看>>
jsf标签,jsp标签与jstl标签
查看>>
使用PHP CURL的POST数据
查看>>
struts2:表单标签
查看>>
ASP.NET MVC3 通过Url传多个参数方法
查看>>
遭遇sql server 2005 启动包未能正确加载需要重新安装错误,重装.NET FRAMEWORK经历分析...
查看>>
简明 MongoDB 入门教程
查看>>
.NET Core 3.0中的数据库驱动框架System.Data
查看>>
北大AI公开课2019 | 雷鸣:人工智能革命与机遇
查看>>
英特尔开源计算机视觉数据标签工具CVAT,加速数据注释
查看>>
consule服务注册和发现 安装 部署
查看>>
多个帐户都用root 来登录 怎么看另一个用户使用的那些命令
查看>>
Map集合案例
查看>>
《FPGA全程进阶---实战演练》第十一章 VGA五彩缤纷
查看>>
第七次课程作业
查看>>
C++ 文本查询2.0(逻辑查询)
查看>>
Objective-C学习总结-13协议1
查看>>
web学习方向
查看>>
A*算法实现
查看>>
第一周 从C走进C++ 002 命令行参数
查看>>