HBase 学习:安装和使用
本文最后更新于:2021年6月10日 下午
本文简单介绍单机环境下 HBase 的安装和使用。
安装配置
HBase 依赖 Hadoop,需要先安装 Hadoop 并配置。实现完全分布式配置还需要安装 ZooKeeper。
Hadoop 和 HBase 均有三种模式,Standalone、Pseudo-Distributed(伪分布式)和 Fully-Distributed。开发机资源有限,安装模式选用伪分布式。
安装配置 Hadoop
下载最新稳定版并解压,本次安装使用版本为 3.2.1
配置文件
编辑 etc/hadoop/core-site.xml
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration>
编辑 etc/hadoop/hdfs-site.xml
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration>
编辑配置 etc/hadoop/hadoop-env.sh
#配置JAVA_HOME export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_211.jdk/Contents/Hom
配置 ssh 免密登录本机
$ ssh localhost #如果需要输入密码,则做以下免密配置 $ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys $ chmod 0600 ~/.ssh/authorized_keys
启动 sbin/start-all.sh,可以通过 JPS 查看进程
安装配置 HBase
下载最新稳定版并解压,本次安装使用版本为 2.2.4
配置文件
配置 conf/hbase-site.xml
<configuration> <property> <name>hbase.rootdir</name> <!-- hdfs配置和hadoop配置对应 --> <value>hdfs://localhost:9000/hbase</value> </property> <property> <name>hbase.zookeeper.property.dataDir</name> <!-- 本地目录 --> <value>/Users/wangrui/zookeeper</value> </property> <property> <name>hbase.unsafe.stream.capability.enforce</name> <value>true</value> <description> Controls whether HBase will check for stream capabilities (hflush/hsync). Disable this if you intend to run on LocalFileSystem, denoted by a rootdir with the 'file://' scheme, but be mindful of the NOTE below. WARNING: Setting this to false blinds you to potential data loss and inconsistent system state in the event of process and/or node failures. If HBase is complaining of an inability to use hsync or hflush it's most likely not a false positive. </description> </property> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> </configuration>
配置 conf/hbase-env.sh
#配置JAVA_HOME export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_211.jdk/Contents/Home #使用自带zookeeper export HBASE_MANAGES_ZK=true
启动 bin/start-hbase.sh
通过 JPS 可以查到进程
也可以访问 http://localhost:16010/ 查看 HBase 状态
HBase Shell
- 进入 HBase 命令行:
hbase shell
- 查看版本:
version
- 列出所有的 namespace:
list_namespace
- 查看有哪些表:
list
- 建表:
create '表名','列族', '列族'
,示例create 'person','name', 'age'
- 禁用表:
disable '表名'
- 删除表:
drop '表名'
- 插入记录:
put '<table name>', '<row>', '<column name>', '<value>'
- 删除记录
- 删除某个属性的记录:
delete '<table name>', '<row>', '<column name>', '<time stamp>'
- 删除行:
deleteall '<table_name>', '<row>'
- 删除某个属性的记录:
- 查询记录:
get
- 修改记录:同插入
- 扫描:查看 HTable 数据。使用 scan 命令可以得到表中的数据。
scan '<table name\>'
- 统计行数:
count
- 清空表:
truncate
参考资料
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!