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

hbase的安装与简单操作

好的,这里是关于 HBase 的安装和基本操作的详细步骤,分成几个更清晰的阶段:

第一部分:安装和配置 HBase

1. 环境准备

HBase 依赖于 Hadoop,因此首先确保 Hadoop 已经正确安装和配置。如果没有安装,请先下载并安装 Hadoop。

2. 下载 HBase

从 Apache HBase 官方网站下载 HBase 最新的稳定版本。下载完成后,将其解压并移动到希望的安装目录,例如 /usr/local/hbase

tar -zxvf hbase-x.x.x-bin.tar.gz
mv hbase-x.x.x /usr/local/hbase
3. 配置 HBase

进入 hbase 的安装目录,找到 conf/hbase-site.xml 文件并进行如下配置:

<configuration>
    <property>
        <name>hbase.rootdir</name>
        <value>hdfs://localhost:9000/hbase</value>
    </property>
    <property>
        <name>hbase.zookeeper.property.dataDir</name>
        <value>/usr/local/zookeeper</value>
    </property>
</configuration>

配置说明:

  • hbase.rootdir:指定 HBase 数据的存储目录,可以是本地路径(如 file:///data/hbase)或 HDFS 路径(如 hdfs://localhost:9000/hbase)。
  • hbase.zookeeper.property.dataDir:指定 Zookeeper 的数据存储位置。
4. 配置环境变量

.bashrc.zshrc 文件中添加 HBase 环境变量:

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

然后刷新配置:

source ~/.bashrc
5. 启动 HBase

hbase 目录中,启动 HBase:

start-hbase.sh

通过访问 http://localhost:16010 检查 HBase 是否成功启动。

第二部分:基本操作(HBase Shell)

在 HBase 安装目录下,启动 HBase Shell:

hbase shell

进入 HBase shell 后,可以执行以下基本操作:

1. 创建表
create 'my_table', 'my_cf'

创建名为 my_table 的表,其中 my_cf 为列族(Column Family)。

2. 插入数据
put 'my_table', 'row1', 'my_cf:col1', 'value1'

在表 my_tablerow1 行、列族 my_cf 下的 col1 列中插入值 value1

3. 读取数据
get 'my_table', 'row1'

读取 my_table 表中 row1 行的所有数据。

4. 扫描表
scan 'my_table'

扫描并显示 my_table 表中的所有行数据。

5. 删除数据
delete 'my_table', 'row1', 'my_cf:col1'

删除 my_table 表中 row1 行的 my_cf:col1 列的数据。

6. 删除表

在删除表之前,必须先禁用它:

disable 'my_table'
drop 'my_table'

第三部分:管理和常见问题

  • HBase 停止服务:使用以下命令停止 HBase。

    stop-hbase.sh
    
  • 查看 HBase 的日志:日志可以帮助定位问题,日志文件位于 logs/ 目录下。

  • HDFS 和 Zookeeper 确保正常运行:如果遇到连接或启动失败的情况,检查 Hadoop 和 Zookeeper 是否正常运行。

通过以上步骤,你就可以完成 HBase 的基本安装、配置以及常见的基本操作。HBase 的灵活性和高性能特性使其适合处理大规模数据,同时提供了多样的查询和管理能力。


http://www.kler.cn/a/391124.html

相关文章:

  • 冗余连接2 hard题 代随C#写法
  • DeBiFormer实战:使用DeBiFormer实现图像分类任务(二)
  • 编译ffmpeg动态库时设置RPATH为$ORIGIN
  • 解决:WSL2可视化opencv和pyqt冲突:QObject::moveToThread
  • 深入理解接口测试:实用指南与最佳实践5.0(二)
  • Vue常用加密方式
  • C语言实现IIR型零相位带通滤波器
  • 如何使用XSL-FO生成PDF格式的电子发票的技术博文示例
  • 负梯度方法与Newton型方法-数值最优化方法-课程学习笔记-4
  • Spring Boot基础教学:Spring Boot的核心特性
  • sql表的约束练习题
  • git commit 校验
  • 数学建模---利用Matlab快速实现机器学习(上)
  • 技术人,在数字化转型中如何为企业赋能?
  • Vuex 与 Pinia:Vue 状态管理库的选择与对比
  • 基于YOLOv5的人群密度检测系统设计与实现
  • Oracle 数据库创建导入
  • 基于Multisim温度计温度测量温度超限报警电路(含仿真和报告)
  • gitlab 流水线流程简要说明
  • 用于图像识别的判别图正则化技术
  • 《云原生安全攻防》-- K8s安全防护思路
  • Go语言开发基于SQLite数据库实现用户表增删改查项目搭建(一)
  • adb 如何通过wifi连接手机
  • 吴恩达机器学习笔记(3)
  • 机器学习——特征工程、正则化、强化学习
  • 软件测试项目实战