HBase集群部署与基础命令
HBase 集群部署
安装 hbase 之前需要先搭建好 hadoop 集群和 zookeeper 集群。hadoop 集群搭建可以参考:https://www.cnblogs.com/javammc/p/16545146.html
- 解压到安装目录
tar -zxvf hbase-1.3.1-bin.tar.gz
我解压到了/opt/lagou/servers/hbase-1.3.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/
- 启动集群
#启动命令
start-hbase.sh
#停止命令
stop-hbase.sh
- 启动完成后,可以访问地址:
HMaster 的 ip:16010

HBase shell 基本操作
- 进入 HBase 客户端命令操作界面
hbase shell
shell 命令行里如果输错了命令,删除需要使用 Ctrl+Backspace
- 查看帮助命令
help
- 查看当前数据库里有哪些表
list
- 创建一个 user 表,包含 user_info、extra_info 两个列族
create 'user','base_info','extra_info'
#或者指定版本
create 'user2',{NAME => 'base_info',VERSIONS => '3'},{NAME => 'extra_info',VERSIONS => '3'}
- 添加数据
- 向 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'
- 查询数据
- 查询 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')"}
- 更新数据
更新操作同插入操作一模一样,只不过有数据就更新,没数据就添加
- 更新数据值
将 user 表中 rowkey 为 rk1 的 base_info 列族下的 name 修改为 xiaoliao
put 'user','rk1','base_info:name','xiaoliao'
- 删除数据和表
- 指定 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集群部署与基础命令的更多相关文章
- Hbase集群部署及shell操作
本文详述了Hbase集群的部署. 集群部署 1.将安装包上传到集群并解压 scp hbase-0.99.2-bin.tar.gz mini1:/root/apps/ tar -zxvf hbase-0 ...
- HBase 集群部署
前提条件:hadoop及zookeeper机群已经搭建好. 配置hbase集群步骤: 1.配置hbase集群,要修改3个文件 注意:要把hadoop的hdfs-site.xml和core-site. ...
- Hbase集群部署
1.安装Hadoop集群 这个之前已经写过 2.安装Zookeeper 这个之前也已经写过 3.下载hbase,放到master机器,解压 4.修改hbase-env.sh,添加Java地址 expo ...
- Kubernetes集群部署及简单命令行操作
三个阶段部署docker:https://www.cnblogs.com/rdchenxi/p/10381631.html 环境准备 [root@master ~]# hostnamectl set- ...
- HBase集群部署脚本
#!/bin/bash # Sync HBASE_HOME across the cluster. Must run on master using HBase owner user. HBASE_H ...
- HBase集成Zookeeper集群部署
大数据集群为了保证故障转移,一般通过zookeeper来整体协调管理,当节点数大于等于6个时推荐使用,接下来描述一下Hbase集群部署在zookeeper上的过程: 安装Hbase之前首先系统应该做通 ...
- Hadoop及Zookeeper+HBase完全分布式集群部署
Hadoop及HBase集群部署 一. 集群环境 系统版本 虚拟机:内存 16G CPU 双核心 系统: CentOS-7 64位 系统下载地址: http://124.202.164.6/files ...
- Storm集群部署及单词技术
1. 集群部署的基本流程 集群部署的流程:下载安装包.解压安装包.修改配置文件.分发安装包.启动集群 注意: 所有的集群上都需要配置hosts vi /etc/hosts 192.168.239.1 ...
- 2.Storm集群部署及单词统计案例
1.集群部署的基本流程 2.集群部署的基础环境准备 3.Storm集群部署 4.Storm集群的进程及日志熟悉 5.Storm集群的常用操作命令 6.Storm源码下载及目录熟悉 7.Storm 单词 ...
随机推荐
- QT与DoNet中单例模式的简单实现
由于使用场景的不同,单例模式的写法也有所区别. 目前接触到的,大多数都是多线程,大量数据处理,还要考虑灵活性,对原有类结构改动最小等因素,所以写法更是多种多样. QT个人较常用的一种写法:(两个文件: ...
- 4种方法教你如何查看java对象所占内存大小
摘要:本文讲述4种查看java对象所占内存大小的方法 本文分享自华为云社区<查看java对象所占内存大小>,作者:xiewenci. 计算java对象所占内存大小 1.使用jdk8自带AP ...
- STC8H开发(十二): I2C驱动AT24C08,AT24C32系列EEPROM存储
目录 STC8H开发(一): 在Keil5中配置和使用FwLib_STC8封装库(图文详解) STC8H开发(二): 在Linux VSCode中配置和使用FwLib_STC8封装库(图文详解) ST ...
- Tapdata 实时数据融合平台解决方案(一):现代企业数据架构及痛点
作者介绍:TJ,唐建法,Tapdata 钛铂数据 CTO,MongoDB中文社区主席,原MongoDB大中华区首席架构师,极客时间MongoDB视频课程讲师. "怎样可以来搭建一个数据中台? ...
- Kalman卡尔曼滤波,Least Square最小二乘估计,加权最小二乘,递归最小二乘
以下是Kalman的收敛性证明思路: cite:Stochastic Processes and Filtering Theory
- Object类中wait带参方法和notifyAll方法和线程间通信
notifyAll方法: 进入到Timed_Waiting(计时等待)状态有两种方式: 1.sleep(long m)方法,在毫秒值结束之后,线程睡醒,进入到Runnable或BLocked状态 2. ...
- 【python】自动更新pu口袋校园活动
[python]自动更新pu口袋校园活动 脚本目标: 1. 自动爬取pu口袋校园活动,筛选出需要的活动,此处我的筛选条件是线上活动,因为可以不用去就可以白嫖学时 2. 自动发送邮件到QQ邮箱,每次只发 ...
- 树莓派实战:微信机器人(itchat实现)
背景 楼主有一台树莓派4B开发板(8G内存版),是目前的顶配机型.这一年来的业余时间,除了写Java.架构方面的文章,也陆续折腾了不少树莓派上的好玩小项目,在此新开一个树莓派实战的文章系列,分享给粉丝 ...
- 159_模型_Power BI 地理分析之形状地图
159_模型_Power BI 地理分析之形状地图 声明以下地图元素仅供学习交流所用,如需地图公开使用请提前做好报审工作. 一.背景 当企业的体量达到一定体量的时候,保持稳定的增长是非常重要的事情.本 ...
- echart图表中y轴小数位数过长展示效果不佳
业务中后端返回的精密数据,小数过长,导致所有数据差距不大,在图表中显示重合为一条直线 解决方法设置echart的min属性 min: "dataMin", 但是设置了以后又出现了问 ...