当前位置: 首页 > news >正文

ubuntu上安装HBase伪分布式-2024年08月04日

ubuntu上安装HBase伪分布式-2024年08月04日

  • 1.HBase介绍
  • 2.HBase与Hadoop的关系
  • 3.安装前言
  • 4.下载及安装
  • 5.单机配置
  • 6.伪分布式配置

1.HBase介绍

HBase是一个开源的非关系型数据库,它基于Google的Bigtable设计,用于支持对大型数据集的实时读写访问。HBase有以下几个特点:高可靠性、高性能、面向列的存储以及可伸缩性。

2.HBase与Hadoop的关系

Hadoop是一个分布式计算框架,用于存储和处理大规模数据集。它包括Hadoop分布式文件系统(hdfs)和MapReduce编程模型,可以在集群中进行数据存储和处理。

HBase可以与Hadoop一起使用,以提供一个完整的数据处理解决方案。Hadoop用于存储和处理大规模数据,而HBase用于实时访问和查询这些数据。在实际应用中,可以将HBase作为Hadoop生态系统的一部分使用,以满足不同的数据处理需求。

3.安装前言

1.要想安装HBase首先你的ubuntu上得安装了Java环境,安装了 Hadoop并且已经配置好了伪分布式模式。
2.安装HBase前先查询你安装的hadoop的版本,然后再去查一下和它匹配的HBase的版本。如果想知道 HBase最新的版本兼容性消息,可以自己去 Apache HBase官网进行查看 Apache HBase官网配置版本要求https://hbase.apache.org/book.html#basic.prerequisites
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
我的hadoop版本是2.10.2,根据上2张表,那我我可以用的hbase就有2.5、2.6、2.3、2.4这几个任选就行,这里再选择国内镜像https://mirrors.tuna.tsinghua.edu.cn/apache/hbase/ ,我选择2.4,主要原因就是时间,选个不要太近又不太远的。
在这里插入图片描述

4.下载及安装

1.使用国内镜像下载
在这里插入图片描述
2.下载下来后是放在主文件夹下的下载文件夹里的
在这里插入图片描述
3.解压命令

sudo tar -zxvf hbase-2.4.18-bin.tar.gz

4.将解压后的文件移动到/usr/local下

sudo mv hbase-2.4.18 /usr/local/

5.重命名hbase-2.4.18为hbase

sudo mv ./hbase-2.4.18 ./hbase 

在这里插入图片描述
6.把文件权限给hadoop账户

sudo chown -R hadoop ./hbase 

7.测试是否能用

/usr/local/hbase/bin/hbase version

在这里插入图片描述

5.单机配置

1.找到自己的 JAVA_HOME的值

echo $JAVA_HOME

在这里插入图片描述
2.在 HBase的文件目录下,conf文件夹中放的是配置文件。我们需要更改 hbase-env.sh文件,把 JAVA_HOME环境变量指定到本机的JDK目录。

cd /usr/local/hbase/conf
sudo vim hbase-env.sh

打开后修改JAVA_HOME为自己的变量,并且把#去掉

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

在这里插入图片描述
然后找到export HBASE_MANAGES_ZK=true把前面的#去掉
在这里插入图片描述
3.编辑完成后,使用 source命令使配置生效

source hbase-env.sh

4.编辑配置文件 /etc/profile,添加 hbase环境变量 HBASE_HOME。

cd ~
sudo vim /etc/profile

添加代码

export HBASE_HOME=/usr/local/hbase      
export PATH=$PATH:$HBASE_HOME/sbin:$HBASE_HOME/bin

5.编辑完成后保存并退出,使用 source命令使配置生效

source /etc/profile

6.测试时候安装成功,显示大致如下图即可,单机配置完成

hbase version

在这里插入图片描述

6.伪分布式配置

1.打开 hbase-env.sh文件,

cd /usr/local/hbase/conf
sudo vim hbase-env.sh

找到对应配置,去掉前面的‘#’,并修改为对应路径。

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export HBASE_CLASSPATH=/usr/local/hbase/conf
export HBASE_MANAGES_ZK=true

在这里插入图片描述
执行source /etc/profile,让配置生效

source /etc/profile

2.编辑 hbase-site.xml文件,将需要配置的信息写入 configuration标签内。

cd /usr/local/hbase/conf
sudo vim hbase-site.xml

假设当前 Hadoop集群运行在伪分布式模式下,在本机上运行,且NameNode运行在9000端口的情况下。修改 hbase.rootdir,指定 HBase数据在 HDFS上的存储路径;没有则添加,有则修改,将属性 hbase.cluter.distributed设置为 true。

        <property><name>hbase.rootdir</name><value>hdfs://localhost:9000/hbase</value></property><property><name>hbase.cluster.distributed</name><value>true</value></property>

在这里插入图片描述
3.接下来,我们测试伪分布式模式是否配置成功。

cd $HADOOP_HOME
./sbin/start-dfs.sh
jps

执行jps后正常应该显示如下图,展示secondarynamenode,namenode,jps.datanode四个节点,但是如果你缺少了datanode,去看下日志,多半是你数据没清除,造成lnitialization failed for Block pool错误,解决方法就是使用./sbin/stop-all.sh命令先停止集群,然后把data目录下的所有内容删除,不知道目录在哪的,打开 hdfs .-site.xml文件中配置的dfs.data.dir目录。删除后,执行./bin/hdfs namenode -format重新格式化NameNode。然后再启动集群,再执行jps,保证4个节点都在才进行下一步。
在这里插入图片描述
4.启动 HBase伪分布式环境

cd $HBASE_HOME
./bin/start-hbase.sh
jps

执行jps后应显示如下图,看到 HMaster、HRegionServer、HQuorumPeer结点,则 HBase启动成功。
在这里插入图片描述
5.停止运行的命令

./bin/stop-hbase.sh

6.查看 HDFS

cd $HADOOP_HOME
./bin/hdfs dfs -ls /

在 HDFS中,多了一个/hbase目录,用来保存 HBase的数据。
在这里插入图片描述
到这一步,HBase伪分布式模式已经配置成功,关闭 Hadoop就行了。
注意,操作 Hadoop和 HBase的执行顺序是:启动Hadoop—>启动HBase—>关闭HBase—>关闭Hadoop。

相关文章:

ubuntu上安装HBase伪分布式-2024年08月04日

ubuntu上安装HBase伪分布式-2024年08月04日 1.HBase介绍2.HBase与Hadoop的关系3.安装前言4.下载及安装5.单机配置6.伪分布式配置 1.HBase介绍 HBase是一个开源的非关系型数据库&#xff0c;它基于Google的Bigtable设计&#xff0c;用于支持对大型数据集的实时读写访问。HBase有…...

Mojo的特征与参数(参数化部分)详解

许多语言都具有元编程功能:即编写生成或修改代码的代码。Python 具有动态元编程功能:装饰器、元类等功能。这些功能使 Python 非常灵活且高效,但由于它们是动态的,因此会产生运行时开销。其他语言具有静态或编译时元编程功能,如 C 预处理器宏和 C++ 模板。这些功能可能受到…...

C++数组、vector求最大值最小值及其下标

使用 <algorithm> 头文件来查找数组或向量中最大值、最小值及其索引 #include <iostream> #include <vector> #include <algorithm> // 包含 std::max_element 和 std::min_elementint main() {std::vector<int> vec {3, 1, 4, 2, 5};// 查找最…...

内网安全:多种横向移动方式

1.MMC20.Application远程执行命令 2.ShellWindows远程执行命令 3.ShellBrowserWindow远程执行命令 4.WinRM远程执行命令横向移动 5.使用系统漏洞ms17010横向移动 DCOM&#xff1a; DCOM&#xff08;分布式组件对象模型&#xff09;是微软的一系列概念和程序接口。它支持不同…...

搭建 STM32 网关服务器的全流程:集成嵌入式 C++、TCP/IP 通信、Flash 存储及 JWT 认证(含代码示例)

引言 随着物联网&#xff08;IoT&#xff09;技术的快速发展&#xff0c;基于 STM32 的服务器&#xff08;类似网关&#xff09;在数据采集、设备控制等方面的应用越来越广泛。本文将介绍搭建一个基于 STM32 的服务器所需的技术栈&#xff0c;以及详细的搭建步骤和代码示例。 …...

一款免费强大的电脑锁屏工具,中文绿色免安装

这款软件主要特点是锁屏后不显示密码输入框&#xff0c;直接输入密码即可解锁。 ScreenBlur是一款功能强大的电脑屏幕锁软件&#xff0c;主要用于保护用户的隐私和数据安全。该软件的主要功能包括自动锁屏、隐藏桌面、加密锁机等。 功能特点 自动锁屏&#xff1a;用户可以设…...

Python | Leetcode Python题解之第319题灯泡开关

题目&#xff1a; 题解&#xff1a; class Solution:def bulbSwitch(self, n: int) -> int:return int(sqrt(n 0.5))...

前端Web-JavaScript(上)

要想让网页具备一定的交互效果&#xff0c;具有一定的动作行为&#xff0c;还得通过JavaScript来实现, 这门语言会让我们的页面能够和用户进行交互。 什么是JavaScript JavaScript&#xff08;简称&#xff1a;JS&#xff09; 是一门跨平台、面向对象的脚本语言&#xff0c;是…...

【积累】Python的类

类和方法的概念及实例 类 (Class)&#xff1a;类是对具有相同属性和方法的对象集合的抽象描述。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。 方法&#xff1a;类中定义的函数。 构造方法 __init__()&#xff1a;这是一个特殊的方法&#xff0c;会在类实例…...

Golang | Leetcode Golang题解之第318题最大单词长度乘积

题目&#xff1a; 题解&#xff1a; func maxProduct(words []string) (ans int) {masks : map[int]int{}for _, word : range words {mask : 0for _, ch : range word {mask | 1 << (ch - a)}if len(word) > masks[mask] {masks[mask] len(word)}}for x, lenX : ra…...

【感想】支持八股文在面试的应用

八股文&#xff1a;程序员面试中的利与弊 在现代社会的职场竞争中&#xff0c;尤其是IT行业&#xff0c;面试环节常常成为决定一个人能否入职的重要关卡。在这其中&#xff0c;“八股文”作为一种被广泛应用的考核工具&#xff0c;已经成为面试中不可或缺的一部分。然而&#…...

B - 02-计算球的体积 51Nod - 3266

对于半径为 rr 的球&#xff0c;其体积的计算公式为 V4/3πr3V4/3πr3 &#xff0c;这里取 π3.14π3.14 。现给定 rr &#xff0c;求 VV 。 Input 输入为一个不超过 100100 的非负实数&#xff0c;即球半径&#xff0c;类型为 doubledouble 。 Output 输出一个实数&#x…...

Qt pro文件详解

概述 在Qt中&#xff0c;.pro 文件&#xff08;也称为项目文件&#xff09;是Qt项目管理系统&#xff08;qmake&#xff09;所使用的配置文件。这个文件定义了如何构建你的Qt应用程序或库&#xff0c;其使用简单的键值对语法&#xff0c;允许你指定源文件、头文件、库依赖、配置…...

JavaFX布局-ButtonBar

JavaFX布局-ButtonBar 常用属性buttonOrderpaddingbuttonMinWidth 实现方式Java实现fxml实现 一个特殊的容器&#xff0c;用于创建一组按钮&#xff0c;水平排列按钮太多&#xff0c;会被遮住&#xff0c;不会自动产生滚动条 常用属性 buttonOrder 预制顺序 buttonBar.setBut…...

【C++程序设计】——利用数组处理批量数据(二)

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;开发者-削好皮的Pineapple! &#x1f468;‍&#x1f4bb; hello 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍&#x1f4bb; 本文由 削好皮的Pineapple! 原创 &#x1f468;‍&#x1f4…...

使用 1panel面板 部署 php网站

代码仓库&#xff1a;https://github.com/talmudmaster/RedCorpus 目录 网站介绍安装步骤1. 准备云服务器2. 准备域名&#xff08;可跳过&#xff09;3. 安装1panel面板4. 服务器开放端口5. 进入1panel面板6. 安装并启动软件&#xff08;服务器和面板开放端口&#xff09;7. 创…...

Windows调大虚拟内存来代替升级物理运行内存(RAM)真的有用吗?

前言 前段时间有个粉丝突发奇想说&#xff1a;电脑运行内存不足&#xff0c;调大虚拟内存来代替升级物理运行内存&#xff08;内存条&#xff09;不就可以了&#xff1f;剩下的大几百块钱吃香的喝辣的不好吗&#xff1f; 嗯。。。直到2024年的今天&#xff0c;估计还有很多小…...

[Unity] ShaderGraph实现DeBuff污染 溶解叠加效果

本篇是在之前的基础上&#xff0c;继续做的功能衍生。 [Unity] ShaderGraph实现Sprite消散及受击变色 完整连连看如下所示&#xff1a;...

java算法day28

java算法day28 300 最长递增子序列136 只出现一次的数字169 多数元素234 回文链表53 最大子数组和 300 最长递增子序列 这个是记忆化搜索的代码。是从递归改过来的。 这题显然是要用dp做比较合适。因为很容易看到原问题与子问题之间的关系。 还是从后往前看。 然后可以利用选…...

vue实现歌词滚动效果

1.结构 <template><div class"lyricScroll"><div class"audio"><audio id"audio" src"./common/周传雄-青花1.mp3" controls></audio></div><div class"container" id"contai…...

后进先出(LIFO)详解

LIFO 是 Last In, First Out 的缩写&#xff0c;中文译为后进先出。这是一种数据结构的工作原则&#xff0c;类似于一摞盘子或一叠书本&#xff1a; 最后放进去的元素最先出来 -想象往筒状容器里放盘子&#xff1a; &#xff08;1&#xff09;你放进的最后一个盘子&#xff08…...

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...

23-Oracle 23 ai 区块链表(Blockchain Table)

小伙伴有没有在金融强合规的领域中遇见&#xff0c;必须要保持数据不可变&#xff0c;管理员都无法修改和留痕的要求。比如医疗的电子病历中&#xff0c;影像检查检验结果不可篡改行的&#xff0c;药品追溯过程中数据只可插入无法删除的特性需求&#xff1b;登录日志、修改日志…...

工程地质软件市场:发展现状、趋势与策略建议

一、引言 在工程建设领域&#xff0c;准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具&#xff0c;正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...

苍穹外卖--缓存菜品

1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得&#xff0c;如果用户端访问量比较大&#xff0c;数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据&#xff0c;减少数据库查询操作。 缓存逻辑分析&#xff1a; ①每个分类下的菜品保持一份缓存数据…...

相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)

【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...

Mac下Android Studio扫描根目录卡死问题记录

环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中&#xff0c;提示一个依赖外部头文件的cpp源文件需要同步&#xff0c;点…...

laravel8+vue3.0+element-plus搭建方法

创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...

云原生安全实战:API网关Kong的鉴权与限流详解

&#x1f525;「炎码工坊」技术弹药已装填&#xff01; 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关&#xff08;API Gateway&#xff09; API网关是微服务架构中的核心组件&#xff0c;负责统一管理所有API的流量入口。它像一座…...

多模态图像修复系统:基于深度学习的图片修复实现

多模态图像修复系统:基于深度学习的图片修复实现 1. 系统概述 本系统使用多模态大模型(Stable Diffusion Inpainting)实现图像修复功能,结合文本描述和图片输入,对指定区域进行内容修复。系统包含完整的数据处理、模型训练、推理部署流程。 import torch import numpy …...