hbase安装包_开源工具 | HBase表管理系统——HBaseManager2.0.2

962249918285f497c735417331b8b71b.png

1. 前言

在之前的文章中已经为大家简单介绍过HBaseManager,它提供界面化的方式来帮助我们有效地管理我们集群的HBase表信息。在HBase的维护工作中,绝大多数需要在HBase Shell下执行的命令,都可以选择在系统中完成。HBaseManager部署方便,一键启动,界面美观大方,功能流畅友好,绝对能成为你HBase运维工作中的一大助力。经过近一个月的开发迭代与BUG修复,系统的基本功能已经打磨完毕,同时决定开放源码。目前HBaseManger的最新稳定版本是2.0.2,如果你对此颇有兴趣,可以从我Gitee或GitHub的个人仓库里克隆出所有的源代码,整个系统采取MIT协议,除非你把源码用于违法犯罪活动,否则,你不会受到任何法律或道德上的谴责。

2. 源码获取

鉴于Github的网速,源码同时托管于Gitee。
git clone https://gitee.com/weixiaotome/hbase-manager.git
git clone https://github.com/CCweixiao/hbase-manager.git
gitee

39dc77b8b193d736ddfe359cd2630047.png

github

dff9fa4c08400c1fbb84f9a551e90b27.png

当然,你也可以选择在这里下载最新的发行包。
e9e378ea8008d32e55449cf363b82410.png
replease

3. 编译部署

3.1 开始编译

HBaseManager由Java8开发,用maven进行项目依赖管理,所以你需要保证你的编译环境里安装了Java8和maven3.6+。maven3.5+应该也是可以的。
# 进入项目所在的根目录
cd hbase-manager
mvn clean package -Dmaven.test.skip=true -Phbase1.x 
or
mvn clean package -Dmaven.test.skip=true -Phbase2.x
-Phbase1.x 默认加载hbase1.x的client api -Phbase2.x 默认加载hbase2.x的client apitag: 目前HBaseManager对HBase2.0的支持度还不是很友好,但1.4.3的Client API应该还是可以操作HBase2.x的集群的。打包成功后,在hbase-manager-admin/target/dist目录下找到我们打包的安装包。如果想适配自己集群的HBase版本,请移步至pom.xml文件中修改,然后自行编译就好。

3.2 开始部署

示例命令:
tar -zxvf hbase-manager-2.0.2.tar.gz
rm -f hbase-manager-2.0.2.tar.gz
cd /opt/hbase-manager-2.0.2
hbase-manager的目录结构:
5b7abbbfa3c83b89c571ce7357c534c5.png
setup
  • bin  系统启动脚本等文件的存放目录
  • conf 配置文件,以及静态文件
  • lib  第三方jar包保存目录
  • logs 系统运行日志保存目录
conf目录
624e1d78562150b54191c95b39e7d8e6.png
conf
  • application-druid.yml 数据源配置文件
  • application.yml 系统本身配置文件
其余文件都不需要管,我们重点需要配置数据源,编辑application-druid.yml,各个配置项的作用说明,在配置文件中都有十分详细的说明。
74f88142cf1384f0df6068a970fbcb13.png
edit-datasource
保证MySql可以连接,最好用MySql5.7,新建数据库hbase-manager,配置好连接数据库的用户名和密码,然后运行sql文件初始化所需的表和数据,sql文件在conf/sql文件夹下,名为hbase-manager.sql。 系统级别配置系统配置一般不做修改,如果有需要请编辑application.yaml。配置文件中各个配置项的作用说明也十分详细,就不占用此处的空间。简单的初始化工作完成之后,就可以尝试运行我们的系统,系统启动的命令更简单。示例命令:
cd /opt/hbase-manager-1.0.0
nohup java -jar  hbase-manager-admin-1.0.0.jar > /dev/null 2>&1 &
相关进程启动,且检查确定启动日志中没有报错之后,请在浏览器访问。
http://ip:9527/login
93e9201c35640b8c969321f7bc3e3dc1.png
index

4. 开始使用

目前系统支持的功能有:
  • 命名空间管理
  • HBase表管理 如:创建表,禁用表,查看表详情,删除表等
  • HBase列簇管理
  • 标签管理 标签管理可以更好地帮助对HBase相同业务域的表进行分类
  • HBase表数据管理 筛选表的数据,删除表的数据等。
  • 完善的角色、用户、部门权限的划分
  • 定时任务
  • 还有更多

4.1 命名空间管理

命名空间的创建和删除。
f6cbc4994fbf6399c7757f1551f57225.png
NAMESPACE

4.2 HBase表管理

HBase表信息列表展示,以及十分友好的搜索提示与分页功能。
e48eca849f55ae05b20e8c523e1913b5.png
table-list
HBase表创建:
ba229d61f6a89e619898ec00c3f57d4c.png
create-table
HBase表详情查看:
5c24cf73d08a5af3a7e7535c0efb10e1.png
table-detail

4.3 HBase表列簇管理

a8ca0b69f27f4f234e127fbaaafb4cf0.png
family

4.4 HBase表标签管理

19af9a117b56e04186316bc4a18d42ea.png
tag

4.5 HBase表数据筛选

138b4b3e2e0d62c989e21757b0136de7.png
show-data

4.6 用户以及权限管理

547f9e4859d52d698740d5e3d14c562c.png
user-role

5. 二次开发

5.1 RuoYi

用IDEA直接打开项目。
eb4904ab58e83ae95ee07c83545a3156.png
project
  • hbase-manager-admin 是系统的web模块,标准的SpringBoot的工程,程序的主入口
  • 系统配置文件、数据源配置文件以及web相关的静态文件均在该模块的resources文件夹之中
项目采用的技术栈:
  1. 核心框架:Spring Boot。
  2. 安全框架:Apache Shiro。
  3. 模板引擎:Thymeleaf。
  4. 持久层框架:MyBatis。
  5. 定时任务:Quartz。
  6. 数据库连接池:Druid。
  7. 工具类:Fastjson。
  8. 更多……
HBaseManager基于RuoYi后台管理系统开发而成,其官网网站有更详细的关于RuoYi框架的说明,很赞很强大,如果之前没对RuoYi有所了解,可以参考其官网文档。
http://doc.ruoyi.vip/

5.2 hbase-sdk

hbase-sdk是我的另一个开源作品,基于HBase的ORM框架,可以与SpringBoot无缝集成,也可以使用在普通项目之中。hbase-sdk对hbase-client做了又一层统一的封装,赋予其ORM的特性,很方便地实现HBase查询的结果数据与模板对象进行属性绑定。 项目地址
https://gitee.com/weixiaotome/hbase-sdk
https://github.com/CCweixiao/hbase-sdk
功能预览
@Servicepublic class UserService {@Autowiredprivate HBaseTemplate hBaseTemplate;@Testpublic void testGet() {
        UserEntity userEntity = hBaseTemplate.getByRowKey("10001", UserEntity.class);final UserEntity userEntity1 = hBaseTemplate.getByRowKey("10002", UserEntity.class);
        System.out.println("用户数据获取成功!");
        System.out.println(userEntity);
    }
   }
代码获取
git clone https://github.com/CCweixiao/hbase-sdk.git
git clone https://gitee.com/weixiaotome/hbase-sdk.git
cd hbase-sdk
mvn clean install -Dmaven.test.skip=true
maven中央仓库中搜索 CCweixiao
be6514f6861ca7c7db34c3a8e957319a.png
maven1
a12d3b359b195178e34f07a7092a9d96.png
maven2

6. 总结

hbase-sdk和hbase-manager算是我编程入行以来第一个真正意义上的开源作品,也是我头一回在没有工资驱动的情况下,坚持做完整的一件事。它们的功能或许很简单,它们的实现方式或许很拙劣,甚至相比于其他世界顶级的项目,它们渺小的犹如尘埃。但是,把脑海中一个迸发的念头,一点一滴具象成一个看得见摸得着的表现形式,真的是一件非常酷的事情。但是,个人的能力毕竟有限,如果你也有兴趣想要完善这个系统,可以参与开发,提交建议,或者在使用HBaseManager的过程当中,你发现了任何问题,欢迎下方留言。

据说,关注我的人都找到了对象?

66366c56b9daf10f4c3e8d01746f6bcc.png
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值