HBase 集群部署

安装 hbase 之前需要先搭建好 hadoop 集群和 zookeeper 集群。hadoop 集群搭建可以参考:https://www.cnblogs.com/javammc/p/16545146.html

  1. 下载安装包 http://archive.apache.org/dist/hbase/1.3.1/
  1. 解压到安装目录
tar -zxvf hbase-1.3.1-bin.tar.gz

我解压到了/opt/lagou/servers/hbase-1.3.1 目录。

  1. 修改配置文件
  • 把 hadoop 中配置的 core-site.xml、hdfs-site.xml 拷贝到 hbase 下的 conf 目录下
ln -s /opt/lagou/servers/hadoop-2.9.2/etc/hadoop/core-site.xml /opt/lagou/servers/hbase-1.3.1/conf/core-site.xml
ln -s /opt/lagou/servers/hadoop-2.9.2/etc/hadoop/hdfs-site.xml /opt/lagou/servers/hbase-1.3.1/conf/hdfs-site.xml
  • 修改 hbase-env.sh
#添加java环境变量
export JAVA_HOME=/opt/module/jdk1.8.0_231
#指定使用外部的zk集群
export HBASE_MANAGES_ZK=FALSE
  • 修改 hbase-site.xml
<configuration>
 <!-- 指定hbase在HDFS上存储的路径 -->
   <property>
       <name>hbase.rootdir</name>
       <value>hdfs://linux2:9000/hbase</value>
   </property>
       <!-- 指定hbase是分布式的 -->
   <property>
       <name>hbase.cluster.distributed</name>
       <value>true</value>
   </property>
       <!-- 指定zk的地址,多个用“,”分割 -->
   <property>
       <name>hbase.zookeeper.quorum</name>
       <value>linux2:2181,linux3:2181,linux4:2181</value>
   </property>
</configuration>
  • 修改 regionservers
linux2
linux3
linux4
  • 在 hbase 的 conf 目录下创建文件 backup-masters

内容如下:

linux2
  • 在每个节点上配置环境变量,vi /etc/profile
export HBASE_HOME=/opt/lagou/servers/hbase-1.3.1
export PATH=$PATH:$HBASE_HOME/bin

执行命令使配置生效

source /etc/profile
  • 将 hbase-1.3.1 目录分发到其他 2 个节点
scp -r hbase-1.3.1 linux3:/opt/lagou/servers/
scp -r hbase-1.3.1 linux4:/opt/lagou/servers/
  1. 启动集群
#启动命令
start-hbase.sh
#停止命令
stop-hbase.sh
  1. 启动完成后,可以访问地址:

    HMaster 的 ip:16010

HBase shell 基本操作

  1. 进入 HBase 客户端命令操作界面
hbase shell

shell 命令行里如果输错了命令,删除需要使用 Ctrl+Backspace

  1. 查看帮助命令
help
  1. 查看当前数据库里有哪些表
list
  1. 创建一个 user 表,包含 user_info、extra_info 两个列族
create 'user','base_info','extra_info'
#或者指定版本
create 'user2',{NAME => 'base_info',VERSIONS => '3'},{NAME => 'extra_info',VERSIONS => '3'}
  1. 添加数据
  • 向 user 表中 row key 为 rk1,列族 base_info 的 name 列上插入值'xiaowang'
put 'user','rk1','base_info:name','xiaowang'
  • 向 user 表中 row key 为 rk1,列族为 base_info 的 age 列插入值 30
 put 'user','rk1','base_info:age',30
  • 向 user 表中 row key 为 rk1,列族为 extra_info 的 address 列插入值'shanghai'
put 'user','rk1','extra_info:address','shanghai'
  1. 查询数据
  • 查询 user 表中 row key 为 rk1 的所有信息
get 'user','rk1'
  • 查询 user 表中 row key 为 rk1 的 base_info 列族的所有信息
get 'user','rk1','base_info'
  • 查询 user 表中指定列族,指定字段的值
get 'user','rk1','base_info:name','base_info:age'
  • 查询 user 表中多个列族的信息
get 'user','rk1','base_info','extra_info'

  • 根据 rowkey 和列值进行查询
get 'user','rk1',{FILTER => "ValueFilter (=,'binary:shanghai')"}
  • 根据 row key 和列名进行模糊查询

查询出列名:address

get 'user','rk1',{FILTER => "QualifierFilter (=,'substring:add')"}
  • 查询表中所有数据
scan 'user'
  • 查询表中列族为 base_info 的信息
scan 'user',{COLUMNS => 'base_info'}

# Scan时可以设置是否开启Raw模式,开启Raw模式会返回包括已添加删除标记但是未实际删除的数据
# VERSIONS指定查询的最大版本数
scan 'user',{COLUMNS => 'base_info',RAW => true, VERSIONS=> 3}
  • 查询 user 表中列族为 base_info、extra_info,且列名中含 add 字符的数据
 scan 'user',{COLUMNS => ['base_info','extra_info'],FILTER => "(QualifierFilter(=,'substring:add'))"}
  • rowkey 的范围值查询
scan 'user',{COLUMNS => 'base_info',STARTROW => 'rk1',ENDROW => 'rk3'}
  • 指定 rowkey 模糊查询

查询 user 表中 row key 以 rk 开头的数据

scan 'user' ,{FILTER =>"PrefixFilter('rk')"}
  1. 更新数据

更新操作同插入操作一模一样,只不过有数据就更新,没数据就添加

  • 更新数据值

将 user 表中 rowkey 为 rk1 的 base_info 列族下的 name 修改为 xiaoliao

put 'user','rk1','base_info:name','xiaoliao'
  1. 删除数据和表
  • 指定 rowkey 以及列名进行删除
delete 'user','rk2','base_info:name'
  • 指定 rowkey 以及列名、时间戳进行删除
delete 'user','rk2','base_info:age',1662245345710
  • 删除列族
alter 'user','delete' => 'extra_info'
  • 清空表数据
truncate 'user'
  • 删除表
#先disable,再drop,否则会报错
disable 'user'
drop 'user'

HBase集群部署与基础命令的更多相关文章

  1. Hbase集群部署及shell操作

    本文详述了Hbase集群的部署. 集群部署 1.将安装包上传到集群并解压 scp hbase-0.99.2-bin.tar.gz mini1:/root/apps/ tar -zxvf hbase-0 ...

  2. HBase 集群部署

     前提条件:hadoop及zookeeper机群已经搭建好. 配置hbase集群步骤: 1.配置hbase集群,要修改3个文件 注意:要把hadoop的hdfs-site.xml和core-site. ...

  3. Hbase集群部署

    1.安装Hadoop集群 这个之前已经写过 2.安装Zookeeper 这个之前也已经写过 3.下载hbase,放到master机器,解压 4.修改hbase-env.sh,添加Java地址 expo ...

  4. Kubernetes集群部署及简单命令行操作

    三个阶段部署docker:https://www.cnblogs.com/rdchenxi/p/10381631.html 环境准备 [root@master ~]# hostnamectl set- ...

  5. HBase集群部署脚本

    #!/bin/bash # Sync HBASE_HOME across the cluster. Must run on master using HBase owner user. HBASE_H ...

  6. HBase集成Zookeeper集群部署

    大数据集群为了保证故障转移,一般通过zookeeper来整体协调管理,当节点数大于等于6个时推荐使用,接下来描述一下Hbase集群部署在zookeeper上的过程: 安装Hbase之前首先系统应该做通 ...

  7. Hadoop及Zookeeper+HBase完全分布式集群部署

    Hadoop及HBase集群部署 一. 集群环境 系统版本 虚拟机:内存 16G CPU 双核心 系统: CentOS-7 64位 系统下载地址: http://124.202.164.6/files ...

  8. Storm集群部署及单词技术

    1. 集群部署的基本流程 集群部署的流程:下载安装包.解压安装包.修改配置文件.分发安装包.启动集群 注意: 所有的集群上都需要配置hosts vi  /etc/hosts 192.168.239.1 ...

  9. 2.Storm集群部署及单词统计案例

    1.集群部署的基本流程 2.集群部署的基础环境准备 3.Storm集群部署 4.Storm集群的进程及日志熟悉 5.Storm集群的常用操作命令 6.Storm源码下载及目录熟悉 7.Storm 单词 ...

随机推荐

  1. .NET6 开源之JSON 2 SQL (JORM框架)

    什么是JORM框架? 全称 :Json  Object Relational Mapping   ,它是通过JSON 对象 去实现数据库的一个关系映射 ,我理想中完整的JORM包含功能有 ·1.表权授 ...

  2. VScode运行总是显示running状态

    一.每次点击运行都显示code is already running,而且键盘也没有办法输入 二.解决办法 注意:记得重新启动VScode

  3. TypeScript let与var的区别

    1.作用域不同 用var声明的变量,只有函数作用域和全局作用域,没有块级作用域.而let可以实现块级作用域,只能在代码块{}内有效,在{}之外不能访问,如下代码所示: { let a = 0; var ...

  4. Kingbase重新数据初始化,设置大小写

    KingbaseV8数据库安装完成后,删除/opt/Kingbase/ES/V8/data下所有内容,重新在其他目录初始化数据库,设置为忽略大小写 [kingbase@dbserver bin]$ . ...

  5. Spring Boot 知识点总结

    现在仅总结重要和实用的知识点,更加全面的请见链接:1.:2.. 微服务:架构风格(服务微化):一个应用应该是一组小型服务:可以通过HTTP的方式进行互通:微服务:每一个功能元素终都是一个可独立替换和独 ...

  6. git的基本操作命令和码云的注册使用

    Git文件操作文件的四种状态版本控制就是对文件的版本控制,要对文件进行修改.提交等操作,首先要知道文件当前在什么状态,不然可能会提交了现在还不想提交的文件,或者要提交的文件没提交上. Untracke ...

  7. JAVA编程练习01作业

    1.已知y与x的关系:,要求:从键盘上输入一个x的值,输出其对应的y的值. 2. 输入一个圆半径(r),计算并输出圆的面积和周长. 3.输入一个三位正整数n,输出其个位.十位和百位上的数字. 4.根据 ...

  8. Css3入门详解

    一.Css基本语法 1.Html和Css没分开时 点击查看代码 <!DOCTYPE html> <html lang="en"> <head> ...

  9. 初次使用 eolink 感受

    最近总有前端小伙伴来找我抱怨,"后端接口出来太晚,影响我的任务进度"."后端接口改了也不通知我一下,到冒烟测试的时候报一堆的错".我拉后端小伙伴了解情况,结果问 ...

  10. Solution -「基环树」做题记录

    写的大多只是思路,比较简单的细节和证明过程就不放了,有需者自取. 基环树简介 简单说一说基环树吧.由名字扩展可得这是一类以环为基础的树(当然显然它不是树. 通常的表现形式是一棵树再加一条非树边,把图画 ...