接着前面的Zookeeper部署之后,现在可以学习HBase了。

HBase是基于Hadoop的开源分布式数据库,它以Google的BigTable为原型,设计并实现了具有高可靠性、高性能、列存储、可伸缩、实时读写的分布式数据库系统,它是基于列而不是基于行的模式,适合存储非结构化数据。

体系结构:HBase是一个分布式的数据库,使用Zookeeper管理集群(点击此处进入Zookeeper部署,使用HDFS作为底层存储,它由HMaster和HRegionServer组成,遵从主从服务器架构。HBase将逻辑上的表划分成多个数据块即HRegion,存储在HRegionServer中。HMaster负责管理所有的HRegionServer,它本身并不存储任何数据,而只是存储数据到HRegionServer的映射关系(元数据)。

HBase部署:

HBase的安装部署过程,因HBase依赖于HDFS和Zookeeper,所以该实验需要分为四个步骤。

首先,配置SSH无密钥登录(参考前序博客)

其次,安装Hadoop集群。

然后,安装Zookeeper集群。

最后,修改HBase配置文件。

>具体内容如下:

将HBase 安装包hbase.1.1.2.tar.gz解压到/usr/cstor目录,并将hbase.1.1.2目录改名为hbase,且所属用户改成root:root。

      [root@master ~]#tar -zxvf hbase.1.1.2.tar.gz -c /usr/cstor/hbase

      [root@master ~]#mv /usr/cstor/hbase.1.1.2 /usr/cstor/hbase

      [root@master ~]#chown -R root:root /usr/cstor/hbase

进入解压目录下,配置conf目录下的/usr/cstor/hbase/conf/hbase-env.sh文件,设置如下:

      #Java安装路径

      export JAVA_HOME=/usr/local/jdk1.7.0_79 (需根据实际情况指定)

      #不使用HBase自带的Zookeeper

      export HBASE_MANAGES_ZK=false

配置conf目录下的hbase-site.xml文件,设置如下:

<configuration>

<property>

<name>hbase.rootdir</name>

<value>hdfs://master:8020/hbase</value>

</property>

<property>

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

<value>true</value>

</property>

<property>

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

<value>slave1,slave2,slave3</value>

</property>

<property>

<name>hbase.tmp.dir</name>

<value>/usr/cstor/hbase/data/tmp</value>

</property>

</configuration>

配置conf目录下的regionservers文件,设置如下:

slave1

slave2

slave3

配置完成后,将hbase目录传输到集群的其它节点。

scp -r /usr/cstor/hbase root@slave1:/usr/cstor

scp -r /usr/cstor/hbase root@slave2:/usr/cstor

scp -r /usr/cstor/hbase root@slave3:/usr/cstor

>接着,启动HBase,并简单验证HBase,如下:

在主节点master进入hbase解压目录的bin目录,启动HBase服务进程(已启动Zookeeper):

    [root@master ~]#cd /usr/cstor/hbase/bin

    ./start-hbase.sh

>通过以下命令进入HBase shell界面:

    ./hbase shell

在shell里创建表:

    create 'testhbase' , 'f1'

查询所有表名:

    list

查看表结构信息:

    describe 'testhbase'

在shell里插入数据:

    put 'testhbase', '001', 'f1:name', 'aaa'

在shell里查询:

    scan 'testhbase'

删除表,先disable再drop:

    disable 'testhbase'

    drop 'testhbase'

小结:

  HBase安装成功后,可以通过访问HBase WEB页面(http://master:16010)来查看HBase集群的一些基本情况。

大数据【七】HBase部署的更多相关文章

  1. 大数据之HBase

    大数据之HBase数据插入优化之多线程并行插入实测案例 一.引言: 上篇文章提起关于HBase插入性能优化设计到的五个参数,从参数配置的角度给大家提供了一个性能测试环境的实验代码.根据网友的反馈,基于 ...

  2. 大数据开发--Hbase协处理器案例

    大数据开发--Hbase协处理器案例 1. 需求描述 在社交网站,社交APP上会存储有大量的用户数据以及用户之间的关系数据,比如A用户的好友列表会展示出他所有的好友,现有一张Hbase表,存储就是当前 ...

  3. 大数据学习——Hbase

    1. Hbase基础 1.1 hbase数据库介绍 1.简介 hbase是bigtable的开源java版本.是建立在hdfs之上,提供高可靠性.高性能.列存储.可伸缩.实时读写nosql的数据库系统 ...

  4. 大数据查询——HBase读写设计与实践

    导语:本文介绍的项目主要解决 check 和 opinion2 张历史数据表(历史数据是指当业务发生过程中的完整中间流程和结果数据)的在线查询.原实现基于 Oracle 提供存储查询服务,随着数据量的 ...

  5. 大数据(10) - HBase的安装与使用

    HBaes介绍 HBase是什么? 数据库 非关系型数据库(Not-Only-SQL) NoSQL 强依赖于HDFS(基于HDFS) 按照BigTable论文思想开发而来 面向列来存储 可以用来存储: ...

  6. 大数据查询——HBase读写设计与实践--转

    背景介绍 本项目主要解决 check 和 opinion2 张历史数据表(历史数据是指当业务发生过程中的完整中间流程和结果数据)的在线查询.原实现基于 Oracle 提供存储查询服务,随着数据量的不断 ...

  7. FusionInsight大数据开发--HBase应用开发

    HBase应用开发 HBase的定义 HBase是一个高可靠.高性能.面向列.可伸缩的分布式存储系统. 适合于存储大表数据,可以达到实时级别. 利用Hadoop HDFS 作为其文件存储系统,提供实时 ...

  8. 网络编程基础【day09】:解决socket粘包之大数据(七)

    本节内容 概述 linux下运行效果 sleep解决粘包 服务端插入交互解决粘包问题 一.概述 刚刚我们在window的操作系统上,很完美的解决了,大数据量的数据传输出现的问题,但是在Linux环境下 ...

  9. Redis安装,mongodb安装,hbase安装,cassandra安装,mysql安装,zookeeper安装,kafka安装,storm安装大数据软件安装部署百科全书

    伟大的程序员版权所有,转载请注明:http://www.lenggirl.com/bigdata/server-sofeware-install.html 一.安装mongodb 官网下载包mongo ...

  10. 大数据中HBase的Java接口封装

    该文前提为已经搭建好的HBase集群环境,参见 HBase集群搭建与配置 ,本文主要是用Java编写一个Servlet接口,部署在Tomcat服务器上,用于提供http的接口供其他地方调用,接口中集成 ...

随机推荐

  1. How to resize or create a thumbnail image from file stream on UWP

    最近在搞Ocr相关的windows universal app, 用到了一些图像处理相关的知识. 涉及到了BitmapDecoder/BitmapEncoder/IRandomAccessStream ...

  2. centos 7 hadoop的安装和使用

    准备工作 安装jdk 用户免密登录 安装参考文章: http://blog.csdn.net/circyo/article/details/46724335 http://www.linuxidc.c ...

  3. c++中char类型字符串拼接以及int类型转换为char类型 && 创建文件夹

    如下所示: #include <iostream> #include <windows.h> #include <cstring> using namespace ...

  4. 解决tomcat使用时catalina.out过大的问题

    在项目上线之前需要做很多事情,其中最容易忘记的就是禁用不必要的日志和调整必要的参数. 调整参数这里主要指的是最大连接数,最小等待时间,虚拟机内存等. 而这里重点要提出的是,你需要禁用tomcat中不必 ...

  5. postgresql的启停和创建

    一.启停方法 两种方法 1.直接运行postgres进程启动: 2.使用pg_ctl命令启动 postgres -D /home/osdba/pgdata  & 二.停止数据库的三种模式 sm ...

  6. 软件架构设计学习总结(4):大数据架构hadoop

    摘要:Admaster数据挖掘总监 随着互联网.移动互联网和物联网的发展,谁也无法否认,我们已经切实地迎来了一个海量数据的时代,数据调查公司IDC预计2011年的数据总量将达到1.8万亿GB,对这些海 ...

  7. Maven Jetty9

    <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactI ...

  8. SSH-公私钥认证

    Linux下SSH的认证方式有两种,即密码认证和公私钥认证. 我们在日常的安全维护中,出于安全的考虑,密码不明文存放,会使用公私钥认证方式.这个时候我们就需要使用ssh-keygen,ssh-keyg ...

  9. 我眼中的优秀技术leader

    在这家公司工作的四年时间里,我一共接触过两个在技术团队里有很大影响力的leader.本文将基于我在工作中对他们的观察,总结一下他们身上所具有的特质,以作为自己学习的榜样.标题中的“我眼中的”,不仅表示 ...

  10. js闭包应用

    先来看一个例子: function foo() { var a = 10; function bar() { a *= 2; return a; } return bar; } var baz = f ...