在搭建HBase单机环境之前,首先你要保证你已经搭建好Java环境:

$ java -version
java version "1.8.0_51"
Java(TM) SE Runtime Environment (build 1.8.0_51-b16)
Java HotSpot(TM) 64-Bit Server VM (build 25.51-b03, mixed mode)

JAVA_HOME路径:

$ echo $JAVA_HOME
/usr/java/jdk1.8.0_51

在单机模式中,HBase并不使用 HDFS,仅使用本地文件系统 —— ZooKeeper程序与HBase程序运行在同一个JVM进程中。

一、下载HBase

虚拟机:VMware-workstation-11.1.0

操作系统:CentOS 6.5

JDK:jdk1.8.0_51

HBase:hbase-1.0.1.1

1、 下载的是HBase最新稳定版hbase-1.0.1.1-bin.tar.gz,地址 http://apache.fayea.com/hbase/

2、 解压到个人主目录下

$ tar -zxf hbase-1.0.1.1-bin.tar.gz
$ cd hbase-1.0.1.1

二、配置HBase

需要配置两个文件。

1、hbase-env.sh

编辑文件vim conf/hbase-env.sh,去掉#注释,JAVA_HOME改成jdk对应的路径:

export JAVA_HOME=/usr/java/jdk1.8.0_51
export HBASE_MANAGES_ZK=true

Hbase依赖于zookeeper,所有的节点和客户端都必须能够访问zookeeper。

HBase的安装包里面有自带的ZooKeeper,HBASE_MANAGES_ZK环境变量用来设置是使用HBase默认自带的 Zookeeper还是使用独立的ZooKeeper。

  • HBASE_MANAGES_ZK为 false 时使用独立的.
  • HBASE_MANAGES_ZK为 true 时表示使用默认自带的,让Hbase启动的时候同时也启动自带的ZooKeeper。

2、hbase-site.xml

编辑文件vim conf/hbase-site.xml,设置数据保存的目录:

<configuration>
<property>
<name>hbase.rootdir</name>
<value>file:///home/songlee/hbase-1.0.1.1/data</value>
</property>
</configuration>

默认情况下Hbase是写到/tmp的,在重启的时候/tmp会被清空,数据就会丢失。

三、启动HBase

使用HBase提供的脚本启动HBase:

$ bin/start-hbase.sh
starting master, logging to /home/songlee/hbase-1.0.1.1/bin/../logs/hbase-songlee-master-songlee.out

查看Java进程:

$ jps
5464 HMaster
5561 Jps

可以看到HMaster进程已经启动了。

四、HBase Shell交互

HBase Shell是一个封装了Java API的JRuby应用软件,通过它可以与HBase集群进行交互。

$ bin/hbase shell
2015-07-16 12:37:07,171 WARN [main] util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
HBase Shell; enter 'help<RETURN>' for list of supported commands.
Type "exit<RETURN>" to leave the HBase Shell
Version 1.0.1.1, re1dbf4df30d214fca14908df71d038081577ea46, Sun May 17 12:34:26 PDT 2015 hbase(main):001:0>

建表:

hbase(main):006:0> create 'mytable','cf'
0 row(s) in 0.3090 seconds

添加数据:

hbase(main):008:0> put 'mytable','first','cf:message','hello HBase!'
0 row(s) in 0.1420 seconds hbase(main):009:0> put 'mytable','second','cf:foo',0x0
0 row(s) in 0.0220 seconds hbase(main):010:0> put 'mytable','third','cf:bar',3.14159
0 row(s) in 0.0180 seconds

获取数据:

hbase(main):011:0> get 'mytable','first'
COLUMN CELL
cf:message timestamp=1437015412793, value=hello HBase!
1 row(s) in 0.0540 seconds

扫描表:

hbase(main):012:0> scan 'mytable'
ROW COLUMN+CELL
first column=cf:message, timestamp=1437015412793, value=hello HBase!
second column=cf:foo, timestamp=1437015468629, value=0
third column=cf:bar, timestamp=1437015511565, value=3.14159
3 row(s) in 0.0650 seconds

HBase单机环境搭建的更多相关文章

  1. HBase —— 单机环境搭建

    一.安装前置条件说明 1.1 JDK版本说明 HBase 需要依赖JDK环境,同时HBase 2.0+ 以上版本不再支持JDK 1.7 ,需要安装JDK 1.8+ .JDK 安装方式见本仓库: Lin ...

  2. hbase单机环境的搭建和完全分布式Hbase集群安装配置

    HBase 是一个开源的非关系(NoSQL)的可伸缩性分布式数据库.它是面向列的,并适合于存储超大型松散数据.HBase适合于实时,随机对Big数据进行读写操作的业务环境. @hbase单机环境的搭建 ...

  3. windows7 spark单机环境搭建及pycharm访问spark

    windows7 spark单机环境搭建 follow this link how to run apache spark on windows7 pycharm 访问本机 spark 安装py4j ...

  4. [转载] Hadoop和Hive单机环境搭建

    转载自http://blog.csdn.net/yfkiss/article/details/7715476和http://blog.csdn.net/yfkiss/article/details/7 ...

  5. Kafka 0.7.2 单机环境搭建

    Kafka 0.7.2 单机环境搭建当下载完Kafka后,进行解压,其目录结构如下: bin config contrib core DISCLAIMER examples lib lib_manag ...

  6. kafka单机环境搭建及其基本使用

    最近在搞kettle整合kafka producer插件,于是自己搭建了一套单机的kafka环境,以便用于测试.现整理如下的笔记,发上来和大家分享.后续还会有kafka的研究笔记,依然会与大家分享! ...

  7. hadoop2.6.2+hbase+zookeeper环境搭建

    1.hadoop环境搭建,版本:2.6.2,参考:http://www.cnblogs.com/bookwed/p/5251393.html 启动服务:在master机器上,进入hadoop安装目录, ...

  8. Hadoop —— 单机环境搭建

    一.前置条件 Hadoop的运行依赖JDK,需要预先安装,安装步骤见: Linux下JDK的安装 二.配置免密登录 Hadoop组件之间需要基于SSH进行通讯. 2.1 配置映射 配置ip地址和主机名 ...

  9. win10+pyspark+pycharm+anaconda单机环境搭建

    一.工具准备 1. jdk1.8 2. scala 3. anaconda3 4. spark-2.3.1-bin-hadoop2.7 5. hadoop-2.8.3 6. winutils 7. p ...

随机推荐

  1. 错误: 代理抛出异常错误: java.rmi.server.ExportException: Port already in use: 1099; nested exception is: java.net.BindException: Address already in use: JVM_Bind

    在使用SpringMVC测试的时候, 遇到了这样一个问题, 说的是端口已经被使用了. 代理抛出异常错误: java.rmi.server.ExportException: Port already i ...

  2. python之range (范围)

    例题: for i in range(10): print(i,end='') # 输出结果 0123456789 # s = range(1,10) # 面试大坑 python2 和 python3 ...

  3. Java中的代理--proxy

    讲到代理,好像在之前的springMVC,还是spring中或者是hibernate中学习过,并没有特别在意,这次好好理解一下.(原来是在spring中的AOP,面向切面 Aspect Oriente ...

  4. Puppeteer-常规操作一

    这里不讲 Puppeteer 怎么使用,主要讲一些常规操作在这里如何通过另类方法实现.等实现后,你就会感觉,嗯~~ 真香! 场景一 已经找出要的元素,现在有需求再继续寻找他的子元素 第一种.将父元素带 ...

  5. Oracle批量更新数据,使用begin end

    /* 使用begin end批量更新 注意end后面必须使用;结束 并且每条update语句都要用;来结束 所以close为;END; 是为了补全语法 */ <foreach collectio ...

  6. java面试微信交流群-欢迎你的加入

    Java后端技术专注Java相关技术:SSM.Spring全家桶.微服务.MySQL.MyCat.集群.分布式.中间件.Linux.网络.多线程,偶尔讲点运维Jenkins.Nexus.Docker. ...

  7. 如何用纯 CSS 创作一个荧光脉冲 loader 特效

    效果预览 在线演示 按下右侧的"点击预览"按钮在当前页面预览,点击链接全屏预览. https://codepen.io/zhang-ou/pen/erRzzR 可交互视频教程 此视 ...

  8. spring-mvc jackson配置json为空不输出

    使用的spring-mvc版本是4.1.6,jackson版本是2.1.4 在spring-mvc配置文件中添加以下代码就行 <mvc:annotation-driven> <mvc ...

  9. 条款18:让接口容易被正确使用,不易被误用(Make interface easy to use correctly and hard to use incorrectly)

    NOTE : 1.好的接口容易被正确使用,不容易被误用.应该让所有接口努力达成这些性质. 2.“促进正确使用”的办法包括接口的一致性,以及内置类型的行为兼容. 3.“阻止误用”的办法包括建立新类型/限 ...

  10. Turtle库学习

    Python Turtle (Python绘图工具) 导入库 import turtle as t ps:为了方便调用我们这里给这个模块在本程序内重命名为 t 1. 画布 顾名思义就是用于绘图的区域 ...