所谓Standalone模式HBase,就是只启动一个JVM进程,在这个进程中同时启动了多个后台角色,如:HMaster,单个HRegionServer,以及ZooKeeper服务。

下载安装

最新版本从这里下载。

历史版本从这里下载。

以最新版2.4.14为例说明,基于Ubuntu18.04 Server环境。

解压到到指定路径即可,如:/home/zhangsan/opt

$ tar xvf hbase-2.4.14-bin.tar.gz
$ cd hbase-2.4.14

修改配置参数:主要就是设置$JAVA_HOME环境变量。

$ vim conf/hbase-env.sh
export JAVA_HOME=/home/zhangsan/opt/jdk-11.0.16.1

启动服务:

$ cd /home/zhangsan/opt/hbase-2.4.14
$ ./bin/start-hbase.sh

查看服务是否启动成功:

zhangsan@ubuntu18_server:~/opt/hbase-2.4.14$ jps
8926 HMaster
9359 Jps

如果在Standalone模式启动成功,将会存在一个名称为HMaster的进程。

停止服务:

$ cd /home/zhangsan/opt/hbase-2.4.14
$ ./bin/stop-hbase.sh

访问HBase

整体来讲,有2类客户端可以连接并操作HBase:

第一类:HBase自带的命令行客户端

第二类:编程接口客户端

命令行客户端

# 进入到HBase安装目录
$ cd /home/zhangsan/opt/hbase-2.4.14 # 使用命令行连接HBase
$ ./bin/hbase shell # 创建表
> create 'test', 'cf' # 查看表是否存在
> list 'test' # 查看表详情
> describe 'test' # 向表中添加数据
> put 'test', 'row1', 'cf:a', 'value1'
> put 'test', 'row2', 'cf:b', 'value2'
> put 'test', 'row3', 'cf:c', 'value3' # 查看表中所有i数据
> scan 'test' # 获取表中一行数据
> get 'test', 'row1' # 禁用表
> disable 'test' # 启用表
> enable 'test' # 删除表
# 注意:删除表之前必须先禁用,否则报错“ERROR: Table xxx is enabled. Disable it first.”
> drop 'test' # 查看所有表
> list
TABLE
test
1 row(s)
Took 0.0557 seconds
=> ["test"]

编程客户端

最常用的编程客户端是HBase自带的hbase-client,这是一套比较底层的API,在实际使用时需要对其进行再封装。

关于hbase-client接口的基本使用参考Apache HBase APIs

详细使用可以参考如下文档:

HBase Java API: hbase-client

源码解读--(1)hbase客户端源代码

HBase(2) Java 操作 HBase 教程

值得注意的是,在使用接口时创建org.apache.hadoop.hbase.client.Connection对象代价非常昂贵,最好不要频繁创建,参考科学使用HBase Connection

HBase本地模式允许远程连接

所谓的HBase远程连接,就是指通过网络地址和端口访问,如下示例:

// 使用hbase-client连接远程HBase
Configuration conf = HBaseConfiguration.create();
conf.set("hbase.zookeeper.quorum", "192.168.10.100");
conf.set("hbase.zookeeper.property.clientPort", "2181");
Connection connection = ConnectionFactory.createConnection(conf);

默认情况下,以Standalone模式启动HBase时,ZooKeeper服务是无法通过远程方式连接的(端口只绑定了localhost)。

解决办法是使用外部的ZooKeeper服务(需要确保这个ZooKeeper能够被外部访问),同时需要修改HBase的相应配置参数(hbase-site.xml),如下所示:

<configuration>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value> <!-- 这个要改成true,才能使用外置的 zookeeper -->
</property>
<property>
<name>hbase.tmp.dir</name>
<value>./tmp</value>
</property>
<property>
<name>hbase.unsafe.stream.capability.enforce</name>
<value>false</value>
</property>
<property>
<name>hbase.rootdir</name>
<value>file:///opt/hbase-2.3.4/data/hbase</value>
</property> <property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/tmp/zookeeper</value>
</property> <property>
<name>hbase.zookeeper.quorum</name>
<value>localhost</value> <!-- 外部ZoopKeeper服务的连接地址,可以是IP地址或者域名 -->
</property> <property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value> <!-- 外部ZooKeeper服务的连接端口 -->
</property> </configuration>

详情参考:hbase (local mode) remote access

【参考】

https://hbase.apache.org/book.html#_preface

https://www.jianshu.com/p/1cf5ab260283 HBase的配置

https://www.yiibai.com/hbase HBase教程

https://blog.51cto.com/u_14286115/3703411 hbase中scan和get查看版本数据的区别

https://www.cnblogs.com/cc11001100/p/9911730.html HBase笔记之namespace

https://toboto.wang/2020/06/09/基于HBase的数据分析方案.html 基于HBase的数据分析方案

安装Standalone模式HBase的更多相关文章

  1. 3 hadoop安装Standalone模式和伪分布式模式

    1 Standalone模式默认模式,即默认配置即是standalone模式装好hadoop-client,会将依赖的包安装好yum install hadoop-client配置文件各个配置文件在/ ...

  2. Spark的StandAlone模式原理和安装、Spark-on-YARN的理解

    Spark是一个内存迭代式运算框架,通过RDD来描述数据从哪里来,数据用那个算子计算,计算完的数据保存到哪里,RDD之间的依赖关系.他只是一个运算框架,和storm一样只做运算,不做存储. Spark ...

  3. JBOSS EAP 6.0+ Standalone模式安装成Windows服务

    网上有一些文章介绍用JavaService.exe来实现,但是到EAP 6以上版本,我试过好象没成功,幸好JBoss官方已经推出了专门的工具. 一.先到官网下载http://www.jboss.org ...

  4. Spark2.1集群安装(standalone模式)

    机器部署 准备三台Linux服务器,安装好JDK1.7 下载Spark安装包 上传spark-2.1.0-bin-hadoop2.6.tgz安装包到Linux(intsmaze-131)上 解压安装包 ...

  5. Spark新手入门——3.Spark集群(standalone模式)安装

    主要包括以下三部分,本文为第三部分: 一. Scala环境准备 查看二. Hadoop集群(伪分布模式)安装 查看三. Spark集群(standalone模式)安装 Spark集群(standalo ...

  6. Spark安装部署(local和standalone模式)

    Spark运行的4中模式: Local Standalone Yarn Mesos 一.安装spark前期准备 1.安装java $ sudo tar -zxvf jdk-7u67-linux-x64 ...

  7. Spark standalone模式的安装(spark-1.6.1-bin-hadoop2.6.tgz)(master、slave1和slave2)

     前期博客  Spark运行模式概述 Spark standalone简介与运行wordcount(master.slave1和slave2) 开篇要明白 (1)spark-env.sh 是环境变量配 ...

  8. [会装]Spark standalone 模式的安装

    1. 简介 以standalone模式安装spark集群bin运行demo. 2.环境和介质准备 2.1 下载spark介质,根据现有hadoop的版本选择下载,我目前的环境中的hadoop版本是2. ...

  9. 【Spark】Spark的Standalone模式安装部署

    Spark执行模式 Spark 有非常多种模式,最简单就是单机本地模式,还有单机伪分布式模式,复杂的则执行在集群中,眼下能非常好的执行在 Yarn和 Mesos 中.当然 Spark 还有自带的 St ...

  10. spark运行模式之二:Spark的Standalone模式安装部署

    Spark运行模式 Spark 有很多种模式,最简单就是单机本地模式,还有单机伪分布式模式,复杂的则运行在集群中,目前能很好的运行在 Yarn和 Mesos 中,当然 Spark 还有自带的 Stan ...

随机推荐

  1. [转帖]Docker容器无法访问网络问题(网段冲突)

    近日在使用docker在腾讯云服务器上部署项目 运行容器时死活访问不了网络,不论是外网还是内网. 最后找到原因是docker容器ip网段与服务器内网ip网段冲突导致的 使用此命令查看到 ifconfi ...

  2. [转帖]【有效解决】Edge浏览器提示你的连接不是专用连接怎么办?

    https://www.xitongzhijia.net/xtjc/20230524/290887.html Win11正式版iso镜像最新(22H2新版) V2023 大小:4.22 GB类别:Wi ...

  3. [转帖]一行Python代码实现同一局域网内的文件共享

    在不同的设备之间传输文件除了数据线,网盘传输外是否还有其他优雅的方法?我们可以使用一行Python代码使局域网内的所有设备都可以访问并下载文件夹内的文件. 要求: 电脑中安装配置好python 访问的 ...

  4. [转帖] mysql的timestamp会存在时区问题?

    我感觉 这样理解也有点不对 timestamp 应该是不带时区 只是 UTC1970-1-1 的时间戳 但是展示时会根据时区做一下计算 date time 就不会做转换而已.   原创:打码日记(微信 ...

  5. [转帖]Perf IPC以及CPU性能

    https://plantegg.github.io/2021/05/16/Perf%20IPC%E4%BB%A5%E5%8F%8ACPU%E5%88%A9%E7%94%A8%E7%8E%87/ Pe ...

  6. 定位解析一个因脚本劫持导致webpack动态加载异常的问题

    问题描述 项目现场的前端项目在点击顶部的导航栏切换不同的模块时,会有小概率出现模块加载报错的情况: 我们的前端项目里是有基于react-loadable做的懒加载的,上图的12.be789340.ch ...

  7. VOP 消息仓库演进之路|如何设计一个亿级企业消息平台

    作者:京东零售 李孟冬 VOP作为京东企业业务对外的API对接采购供应链解决方案平台,一直致力于从企业采购数字化领域出发,发挥京东数智化供应链能力,通过产业链上下游耦合与链接,有效助力企业客户的成本优 ...

  8. 微信对话平台API开发

    接入官方文档接入文档 下面我们开始使用前端来进行接入 <!DOCTYPE html> <html> <head> <meta charset="UT ...

  9. RC4Drop加密:提升数据保护的新选择

    摘要:RC4Drop是一种基于RC4算法的加密技术,通过将明文数据分成多个部分并进行加密,实现了对数据的高效保护.本文将对RC4Drop加密技术的优缺点进行详细分析,并给出一个Java完整demo示例 ...

  10. 🛠 开源即时通讯(IM)项目OpenIM源码部署指南

    OpenIM的部署涉及多个组件,并支持多种方式,包括源码.Docker和Kubernetes等.这要求在确保不同部署方式之间的兼容性同时,还需有效管理各版本之间的差异.确实,这些都是复杂的问题,涉及到 ...