Windows下安装HBase
Windows下安装HBase
- 一、HBase简介
- 二、HBase下载安装包
- 三、环境准备
- 3.1、 JDK的安装
- 3.2、 Hadoop的安装
- 四、HBase安装
- 4.1、压缩包解压为文件夹
- 4.2、配置环境变量
- 4.3、%HBASE_HOME%目录下新建临时文件夹
- 4.4、修改配置文件 hbase-env.cmd
- 4.4.1、配置JAVA环境
- 4.4.2、set HBASE_MANAGES_ZK=true
- 4.5、修改配置文件 hbase-site.xml
- 五、HBase启动
- 5.1、先启动Hadoop
- 5.1、启动HBase
- 六、错误处理
- 6.1、Could not initialize class org.fusesource.jansi.internal.Kernel32
- 6.2、Hbase启动hbase shell运行命令报Class path contains multiple SLF4J bindings.错误
- 七、HBase测试
- 7.1、HBase基本命令
- 7.1.1、进入HBase:hbase shell
- 7.1.2、测试其他基本命令
- 7.2、HBase创建表
- 7.3、修改表结构
- 7.4、插入数据
- 八、通过页面访问判断HBase是否启动成功
一、HBase简介
HBase(Hadoop Database),是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统。利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。
HBase官网:HBase官网
二、HBase下载安装包
HBase下载地址:https://dlcdn.apache.org/hbase/
本次演示下载的是:hbase-2.0.0-alpha4-bin.tar.gz
三、环境准备
3.1、 JDK的安装
jdk的安装这里就不赘述了。这里安装的jdk1.8。
3.2、 Hadoop的安装
需要预先安装好hadoop,详细安装步骤点这里:windows下安装Hadoop
四、HBase安装
4.1、压缩包解压为文件夹
解压到:D:\hbase-2.0.0-alpha4
4.2、配置环境变量
变量设置参数如下:
变量名:HBASE_HOME;变量值:D:\hbase-2.0.0-alpha4
变量名:Path;添加变量值:%HBASE_HOME%\bin
4.3、%HBASE_HOME%目录下新建临时文件夹
先在%HBASE_HOME%目录下建立 tmp 文件夹:
D:\hbase-2.0.0-alpha4\tmp
然后到 tmp 文件夹下,建立 root、tmp、zoo 三个目录:
D:\hbase-2.0.0-alpha4\tmp\root
D:\hbase-2.0.0-alpha4\tmp\tmp
D:\hbase-2.0.0-alpha4\tmp\zoo

4.4、修改配置文件 hbase-env.cmd
文件路径:\conf\hbase-env.cmd
4.4.1、配置JAVA环境
注意:JAVA文件安装路径不要有空格
set JAVA_HOME=D:\java\java1.8

4.4.2、set HBASE_MANAGES_ZK=true
set HBASE_MANAGES_ZK=true

4.5、修改配置文件 hbase-site.xml
文件路径:\conf\hbase-site.xml
注意:下面的目录改为自己的HBase安装目录
<configuration><property><name>hbase.rootdir</name><!-- <value>hdfs://localhost:9000/</value> --><value>file:///D:/hbase-2.0.0-alpha4/tmp/root</value></property><property><name>hbase.tmp.dir</name><value>D:/hbase-2.0.0-alpha4/tmp/tmp</value></property><property><name>hbase.zookeeper.quorum</name><value>127.0.0.1</value></property><property><name>hbase.zookeeper.property.dataDir</name><value>D:/hbase-2.0.0-alpha4/tmp/zoo</value></property><property><name>hbase.cluster.distributed</name><value>false</value></property>
</configuration>
五、HBase启动
5.1、先启动Hadoop
D:
cd D:\hadoop-3.1.0\sbin
start-all.cmd

查看启动的Hadoop服务:

5.1、启动HBase
D:
cd D:\hbase-2.0.0-alpha4\bin
start-hbase.cmd

查看启动的HBase服务:

六、错误处理
6.1、Could not initialize class org.fusesource.jansi.internal.Kernel32
这是缺少jansi-1.4.jar包导致的,下载jansi-1.4.jar包放到 hbase-2.0.0-alpha4\lib 下,重新启动即可。
下载地址:jansi-1.4.jar
6.2、Hbase启动hbase shell运行命令报Class path contains multiple SLF4J bindings.错误
“D:\hbase-2.0.0-alpha4\lib\” 目录下
修改 slf4j-log4j12-1.7.10.jar 文件名称,slf4j-log4j12-1.7.10.jar-copy
修改前:

修改后:

七、HBase测试
7.1、HBase基本命令
hbase shell #进入HBase
help #进入到HBase后,查看帮助
status #查看数据库集群状态
version #查看数据库版本
list #查看数据库中所有的表
describe 'tablename' #查看表的详细信息
7.1.1、进入HBase:hbase shell

7.1.2、测试其他基本命令

7.2、HBase创建表
create 'member','member_id','address','info'
describe 'member'

7.3、修改表结构
disable 'member' #使得表离线(这样才可以修改表结构)
alter 'member',{NAME=>'member_id',METHOD=>'delete'} #删除表字段(目前在在线的情况下也可以修改表结构)
enable 'member' #使得表在线

7.4、插入数据
put'member','wanglaoshi','info:age','32'
put'member','wanglaoshi','info:birthday','1984-12-2'
put'member','wanglaoshi','info:company','lx'
put'member','wanglaoshi','address:contry','china'
put'member','wanglaoshi','address:province','guangdong'
put'member','wanglaoshi','address:city','sz'
put'member','chenlaoshi','info:birthday','1984-1-2'
put'member','chenlaoshi','info:favorite','movie'
put'member','chenlaoshi','info:company','lx'
put'member','chenlaoshi','address:contry','china'
put'member','chenlaoshi','address:province','guangdong'
put'member','chenlaoshi','address:city','dg'
put'member','chenlaoshi','address:town','cp'


八、通过页面访问判断HBase是否启动成功
http://127.0.0.1:16010/master-status

相关文章:
Windows下安装HBase
Windows下安装HBase 一、HBase简介二、HBase下载安装包三、环境准备3.1、 JDK的安装3.2、 Hadoop的安装 四、HBase安装4.1、压缩包解压为文件夹4.2、配置环境变量4.3、%HBASE_HOME%目录下新建临时文件夹4.4、修改配置文件 hbase-env.cmd4.4.1、配置JAVA环境4.4.2、set HBASE_MA…...
在家构建您的迷你 ChatGPT
这篇文章分为三个部分;他们是: 什么是指令遵循模型?如何查找遵循模型的指令构建一个简单的聊天机器人废话不多说直接开始吧!!! 什么是指令遵循模型? 语言模型是机器学习模型,可以根…...
Cisco IOS操作(红茶三杯CCNA)
Cisco路由器组件 CPU:执行指令RAM:断电内容丢失 运行操作系统运行配置文件IP路由表ARP缓存数据包缓存区 ROM:保存开机自检软件,存储路由器的启动引导程序 bootstrap指令基本的自检软件迷你版IOS 非易失RAM(NVRAM&#…...
在Linux中用strsignal函数输出对各种信号的描述
2023年7月29日,周六上午 目录 函数原型Linux有多少种信号使用示例 函数原型 #include <string.h>char* strsignal(int signum);strsignal函数接受一个整数参数signum,表示信号的编号。 用于把信号编号转换成一个简短的对这个信号编号的描述。 L…...
分布式文件存储与数据缓存 Redis高可用分布式实践(上)
一、Reids概述 1.1 为什么要使用NoSQL 单机Mysql的美好年代 在90年代,一个网站的访问量一般都不大,用单个数据库完全可以轻松应付。在那个时候,更多的都是静态网页,动态交互类型的网站不多。 遇到问题: 随着用户数的…...
chatglm2外挂知识库问答的简单实现
一、背景 大语言模型应用未来一定是开发热点,现在一个比较成功的应用是外挂知识库。相比chatgpt这个知识库比较庞大,效果比较好的接口。外挂知识库大模型的方式可以在不损失太多效果的条件下获得数据安全。 二、原理 现在比较流行的一个方案是langcha…...
从0到1开发go-tcp框架【1-搭建server、封装连接与业务绑定、实现基础Router、抽取全局配置文件】
从0到1开发go-tcp框架【1-搭建server、封装连接与业务绑定、实现基础Router】 本期主要完成对Server的搭建、封装连接与业务绑定、实现基础Router(处理业务的部分)、抽取框架的全局配置文件 从配置文件中读取数据(服务器监听端口、监听IP等&a…...
建设银行秋招指南,备考技巧和考试内容详解
建设银行秋招简介 银行作为非常吃香的岗位,每年都有不少同学通过投递简历,进入笔试,再到面试成功,成功到银行就职,也有相当一部分同学因为信息差,符合条件却没有报名。无法进入银行工作。 建设银行的秋招…...
Cilium 系列-7-Cilium 的 NodePort 实现从 SNAT 改为 DSR
系列文章 Cilium 系列文章 前言 将 Kubernetes 的 CNI 从其他组件切换为 Cilium, 已经可以有效地提升网络的性能。但是通过对 Cilium 不同模式的切换/功能的启用,可以进一步提升 Cilium 的网络性能。具体调优项包括不限于: 启用本地路由 (Native Rou…...
React的hooks---useReducer
useReducer 作为 useState 的代替方案,在某些场景下使用更加适合,例如 state 逻辑较复杂且包含多个子值,或者下一个 state 依赖于之前的 state 等。 使用 useReducer 还能给那些会触发深更新的组件做性能优化,因为父组件可以向自…...
自然语言处理从入门到应用——LangChain:模型(Models)-[文本嵌入模型Ⅱ]
分类目录:《自然语言处理从入门到应用》总目录 本文将介绍如何在LangChain中使用Embedding类。Embedding类是一种与嵌入交互的类。有很多嵌入提供商,如:OpenAI、Cohere、Hugging Face等,这个类旨在为所有这些提供一个标准接口。 …...
Olap BI工具对比
背景 目前公司主要使用数据存储有MySQL、ES、Hive、HBase、TiDB等 MySQL用于存储应用的基本支撑数据,数据量少;ES和Hbase用于存储和查询调用记录,数据量多;Hive和TiDB用于DC上使用,数据量多。主要使用的数据分析平台…...
【iOS】Cocoapods的安装以及使用
文章目录 前言一、Cocoapods的作用二、安装Cocoapods三、使用Cocoapods总结 前言 最近笔者在仿写天气预报App时用到了api调用数据,一般的基本数据类型我们用Xcode中自带的框架就可以转换得到。但是在和风天气api中的图标的格式为svg格式。 似乎iOS13之后Xcode中可…...
OpenCvSharp (C# OpenCV) 二维码畸变矫正--基于透视变换(附源码)
导读 本文主要介绍如何使用OpenCvSharp中的透视变换来实现二维码的畸变矫正。 由于CSDN文章中贴二维码会导致显示失败,大家可以直接点下面链接查看图片: C# OpenCV实现二维码畸变矫正--基于透视变换 (详细步骤 + 代码) 实现步骤 讲解实现步骤之前先看下效果(左边是原图,右边…...
下级平台级联视频汇聚融合平台EasyCVR,层级显示不正确的原因排查
视频汇聚平台安防监控EasyCVR可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有GB28181、RTSP/Onvif、RTMP等,以及厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等,能对外分发RTSP、RTMP、FLV、HLS、WebRTC等…...
Android程序CPU使用大的异常分析
程序出现CPU使用过高的问题,如果能够重现,就比较好办了,可以top命令查看各线程的cpu使用,定位到线程。 以下是问国内某AI的答案 在Android应用中,如果某个应用消耗了大量的CPU资源,可以采取以下方法进行分…...
[数学建模] 0、关于数学建模的一点看法付费专栏食用说明
文章目录 1、前言2、数学建模学习索引2.1、建模知识点 3、实战建模论文索引3.1、国赛真题索引3.1.1、[数学建模] [2001年国赛模拟] 1. 血管的三维重建3.1.2、[数学建模] [2011年B国赛模拟] 2. 交巡警服务平台的设置与调度3.1.3、[数学建模][2012年A国赛模拟] 3. 葡萄酒的评价 3…...
2.oracle数据库自增主键
不同于mysql,oracle主键自增不能在建表时直接设置,其实也很简单 1.建表 CREATE TABLE test(id NUMBER NOT NULL,key1 VARCHAR2(40) NULL,key2 VARCHAR2(40) NULL);2.设置主键 alter table test add constraint test_pk primary key (id);3.新建序列tes…...
算法通关村第二关——链表加法的问题解析
题目类型 链表反转、栈 题目描述 * 题目: * 给你两个非空链表来表示两个非负整数,数字最高位位于链表的开始位置。 * 它们的每个节点都只存储一个数字。将这两个数相加会返回一个新的链表。 * 你可以假设除了数字0外,这两个数字都不会以0开头…...
mapboxGL中楼层与室内地图的结合展示
概述 质量不够,数量来凑,没错,本文就是来凑数的。前面的几篇文章实现了楼栋与楼层单体化的展示、室内地图的展示,本文结合前面的几篇文章,做一个综合的展示效果。 实现效果 实现 1. 数据处理 要实现上图所示的效果…...
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...
安宝特方案丨XRSOP人员作业标准化管理平台:AR智慧点检验收套件
在选煤厂、化工厂、钢铁厂等过程生产型企业,其生产设备的运行效率和非计划停机对工业制造效益有较大影响。 随着企业自动化和智能化建设的推进,需提前预防假检、错检、漏检,推动智慧生产运维系统数据的流动和现场赋能应用。同时,…...
Python爬虫实战:研究feedparser库相关技术
1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...
镜像里切换为普通用户
如果你登录远程虚拟机默认就是 root 用户,但你不希望用 root 权限运行 ns-3(这是对的,ns3 工具会拒绝 root),你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案:创建非 roo…...
聊一聊接口测试的意义有哪些?
目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开,首…...
Angular微前端架构:Module Federation + ngx-build-plus (Webpack)
以下是一个完整的 Angular 微前端示例,其中使用的是 Module Federation 和 npx-build-plus 实现了主应用(Shell)与子应用(Remote)的集成。 🛠️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...
Netty从入门到进阶(二)
二、Netty入门 1. 概述 1.1 Netty是什么 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty是一个异步的、基于事件驱动的网络应用框架,用于…...
云原生安全实战:API网关Kong的鉴权与限流详解
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关(API Gateway) API网关是微服务架构中的核心组件,负责统一管理所有API的流量入口。它像一座…...
【JVM面试篇】高频八股汇总——类加载和类加载器
目录 1. 讲一下类加载过程? 2. Java创建对象的过程? 3. 对象的生命周期? 4. 类加载器有哪些? 5. 双亲委派模型的作用(好处)? 6. 讲一下类的加载和双亲委派原则? 7. 双亲委派模…...
