Hbase介绍

  HBase是一个分布式的、面向列的开源数据库,源于Google的一篇论文《BigTable:一个结构化数据的分布式存储系统》。HBase以表的形式存储数据,表有行和列组成,列划分为若干个列族/列簇(column family)。欲了解HBase的官方资讯,请访问[HBase官方网站](http://hbase.apache.org/)。 HBase的运行有三种模式:单机模式、伪分布式模式、分布式模式。 单机模式:在一台计算机上安装和使用HBase,不涉及数据的分布式存储;伪分布式模式:在一台计算机上模拟一个小的集群;分布式模式:使用多台计算机实现物理意义上的分布式存储。这里出于学习目的,只重点讨论单机模式和伪分布式模式。

  本文运行环境是在Ubuntu-64位系统下,HBase版本为hbase-1.1.2,这是目前已经发行的已经编译好的稳定的版本,带有src的文件是未编译的版本,这里只要下载bin版本hbase-1.1.2-bin.tar.gz就好了。hbase-1.1.2-bin.tar.gz.mds是用来校验文件hbase-1.1.2-bin.tar.gz是否完整,一般不需要校验,如果您想要校验可以参考Hadoop安装教程 中对Hadoop的校验。


HBase的安装

  1.解压安装包hbase-1.1.2-bin.tar.gz至路径 /usr/local,命令如下:

  sudo tar -zxf ~/下载/hbase-1.1.2-bin.tar.gz -C /usr/local

  此处我的HBase在下载后所处的文件夹不是在下载目录下,找到文件夹下载后所在的位置,将其复制到下载目录下,但是由于文件的权限是只读,所以无法直接复制,打开文件的属性,将其权限进行修改,然后粘贴到下载目录下。

  另外,在解压后可以通过图形界面找到该文件的位置,此处所指的路径/usr/local,对应图形界面的文件夹是:其他位置/计算机/usr/local。

  2.将解压的文件名hbase-1.1.2改为hbase,以方便使用,命令如下:

  sudo mv /usr/local/hbase-1.1.2 /usr/local/hbase

  3.配置环境变量

  将hbase下的bin目录添加到path中,这样,启动hbase就无需到/usr/local/hbase目录下,大大的方便了hbase的使用。下面的部分还是切换到了/usr/local/hbase目录操作,有助于理解运行过程。

  编辑~/.bashrc文件

  vi ~/.bashrc

  如果没有引入过PATH请在~/.bashrc文件尾行添加如下内容:

  export PATH=$PATH:/usr/local/hbase/bin

  编辑完成后,再执行source命令使上述配置在当前终端立即生效,命令如下:

  source ~/.bashrc

  4.添加HBase权限

  cd /usr/local
  sudo chown -R hadoop ./hbase #将hbase下的所有文件的所有者改为hadoop,hadoop是当前用户的用户名。

  chown -R hadoop:hadoop ./spark # hadoop是当前登录Linux系统的用户名,把当前目录下的spark子目录的所有权限,赋予给用户hadoop

  5.查看HBase版本,确定hbase安装成功,命令如下:

  /usr/local/hbase/bin/hbase version

       

  看到以上输出消息表示HBase已经安装成功,接下来将分别进行HBase单机模式和伪分布式模式的配置。


HBase配置

  HBase有三种运行模式,单机模式、伪分布式模式、分布式模式。作为学习,重点讨论单机模式和伪分布式模式。
  以下先决条件很重要,比如没有配置JAVA_HOME环境变量,就会报错。
  (1)jdk
  (2)Hadoop( 单机模式不需要,伪分布式模式和分布式模式需要)
  (3)SSH

  1.单机模式配置

  (1)配置/usr/local/hbase/conf/hbase-env.sh 。配置JAVA环境变量,并添加配置HBASE_MANAGES_ZK为true,用vi命令打开并编辑hbase-env.sh,命令如下:

  vi /usr/local/hbase/conf/hbase-env.sh

  配置JAVA环境变量,jdk的安装目录默认是 /usr/lib/jvm/java-1.7.0-openjdk, 则JAVA _HOME =/usr/lib/jvm/java-7-openjdk-amd64,其中java-1.7.0-openjdk是你的jdk版本;配置HBASE_MANAGES_ZK为true,表示由hbase自己管理zookeeper,不需要单独的zookeeper。hbase-env.sh中本来就存在这些变量的配置,只需要删除前面的#并修改配置内容即可(#代表注释):

  export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
  export HBASE_MANAGES_ZK=true

      

  添加完成后保存退出即可。

  (2)配置/usr/local/hbase/conf/hbase-site.xml

  打开并编辑hbase-site.xml,命令如下:

  vi /usr/local/hbase/conf/hbase-site.xml

  在启动HBase前需要设置属性hbase.rootdir,用于指定HBase数据的存储位置,因为如果不设置的话,hbase.rootdir默认为/tmp/hbase-${user.name},这意味着每次重启系统都会丢失数据。此处设置为HBase安装目录下的hbase-tmp文件夹即(/usr/local/hbase/hbase-tmp),添加配置如下:   

  (3)接下来测试运行。首先切换目录至HBase安装目录/usr/local/hbase;再启动HBase。命令如下:

  cd /usr/local/hbase
  bin/start-hbase.sh
  bin/hbase shell

网站用户行为分析——HBase的安装与配置的更多相关文章

  1. 网站用户行为分析——Hadoop的安装与配置(单机和伪分布式)

    Hadoop安装方式 Hadoop的安装方式有三种,分别是单机模式,伪分布式模式,伪分布式模式,分布式模式. 单机模式:Hadoop默认模式为非分布式模式(本地模式),无需进行其他配置即可运行.非分布 ...

  2. 网站用户行为分析——Linux的安装

    Linux的选择 在Linux系统各个发行版中,CentOS系统和Ubuntu系统在服务端和桌面端使用占比最高,网络上资料最是齐全,所以建议使用CentOS系统或Ubuntu. 一般来说,如果要做服务 ...

  3. HBase学习笔记之HBase的安装和配置

    HBase学习笔记之HBase的安装和配置 我是为了调研和验证hbase的bulkload功能,才安装hbase,学习hbase的.为了快速的验证bulkload功能,我安装了一个节点的hadoop集 ...

  4. hadoop实例-网站用户行为分析

    一.数据集 网站用户购物行为数据集2030万条,包括raw_user.csv(2000万条)和small_user.csv(30万条,适合新手) 字段说明: user_id 用户编号,item_id ...

  5. HBase 的安装与配置

    实验简介 本次实验学习和了解 HBase 在不同模式下的配置和安装,以及 HBase 后续的启动和停止等. 一.实验环境说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shi ...

  6. HBase的安装、配置与实践

    本教程运行环境是在Ubuntu-64位系统下,HBase版本为hbase-1.1.2,这是目前已经发行的已经编译好的稳定的版本,带有src的文件是未编译的版本,这里我们只要下载bin版本hbase-1 ...

  7. Centos7上HBase的安装和配置

    注意事项 HBase配置必须使用主机名,不支持直接配置IP地址.我尝试过,如果不使用主机名直接用IP,会导致HBase连接zk超时. > 设置主机名 hostnamectl set-hostna ...

  8. Ubuntu16.04下HBase的安装与配置

    一.环境 os : Ubuntu 16.04 LTS 64bit jdk : 1.8.0_161 hadoop : mysql : hive : hbase: -hadoop2 安装HBase前,系统 ...

  9. 网站用户行为分析——在Ubuntu下安装MySQL及其常用操作

    安装MySQL 使用以下命令即可进行mysql安装,注意安装前先更新一下软件源以获得最新版本: sudo apt-get update #更新软件源 sudo apt-get install mysq ...

随机推荐

  1. Linux->apt-包的位置和变更

    ubuntu中由apt-get获得的文件包保存在/var/cache/apt/archives: 通过apt-get命令下载的软件包,放在/var/cache/apt/archives 目录下: 下载 ...

  2. 一个典型的后台软件系统的设计复盘——(二)如何id一个事物

    这个话题,可以从类与对象说起. Dog dog1 = new Dog(); 哪个是类,哪个是对象?这个问题搞不清楚,后面就无从说起了.然后两个程序员之间沟通说,那个狗有问题.除非两人很默契,不然另一人 ...

  3. luogu P1462 通往奥格瑞玛的道路

    嘟嘟嘟 这道题的题面相当的迷,我看了半天都没懂.最后看了题解的解释才懂. 他是这么个意思:对于所有能活着走到终点的路径,输出每一条路径中过路费最多的城市的最小值. 那么自然想到二分过路费,然后用dij ...

  4. JS解析json数据(如何将json字符串转化为数组)

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD ...

  5. Multiply Strings 字符串相乘

    http://www.cnblogs.com/TenosDoIt/p/3735309.html https://blog.csdn.net/fly_yr/article/details/4805561 ...

  6. c#返回值的理解

    我感觉没什么用...就是在别的地方用的时候可以直接以Add(a,b)这样的方式赋值就行,不用再用c这个中间变量去接收了,希望有一天有大佬能给我讲讲设置返回值有什么好处

  7. 【luogu P4017 最大食物链计数】 题解

    题目链接:https://www.luogu.org/problemnew/show/P4017 DAG + DP #include <queue> #include <cstdio ...

  8. imageNamed和dataWithContentsOfFile的区别(1)

    imageNamed和dataWithContentsOfFile的区别 imagecacheuiviewextensionprocessingxcode 最近老是受iphone内存问题的困扰,找了些 ...

  9. C#强大的编程功能

    下面列出一些C#重要的功能 1.布尔条件 2.自动垃圾回收 3.标准库 4.组件版本 5.属性和事件 6.委托和事件管理 7.易于使用的泛型 8.索引器 9.条件编译 10.简单的多线程 11.LIN ...

  10. vue中使用window.open会在url前自动添加本地服务器的地址bug修复

    不能写成www.baidu.com 需要写成https://www.baidu.com