美文网首页JVM · Java虚拟机原理 · JVM上语言·框架· 生态系统
工作日志:一文总结HBase从搭建到实操,大家一起进步

工作日志:一文总结HBase从搭建到实操,大家一起进步

作者: java架构师联盟 | 来源:发表于2020-12-15 14:05 被阅读0次

    公司的大数据部门一直是我非常想要进入的地带,纯粹个人爱好,但是因为当时大数据部门成立选拔人的时候,就是个小渣渣,所以完美错过,后悔脸,奉劝新人,别嫌弃累,能多学一点是一点,天知道你啥时候会有机会晋升,这次,因为部门整合,我们这边也需要分担一部分大数据的研发工作,刚好主要部分落在我们小组,组长一脸奸笑的跟我说:小伙子,你明白的,好好表现,嗯?这是有动静啊,然后这老油条就啥也不说了,没关系,反正lz喜欢大数据,这下可有用武之地了,那沉寂已久的虚拟机,开始吧,今天的内容是我为了恢复一下自己的手感,要搭建在自己的pc上练习一下,起码命令什么的要会把,后面会持续更新 文章首发公众号:Java架构师联盟 好了,话不多说,开始今天的正题

    hbase伪分布式搭建

    修改hbase-env.sh

    export JAVA_HOME=/opt/software/jdk1.8

    export HBASE_MANAGES_ZK=true

    第一个配置java环境变量

    第二个配置在本机器上的HBase可以自己启动zookeeper和使用

    修改reginserver

    node1

    修改hbase-site.xml

    <property>

    <name>hbase.rootdir</name>

    <value>hdfs://node1:9000/hbase</value>

    </property>

    <property>

    <name>hbase.cluster.distributed</name>

    <value>true</value>

    </property>

    <property>

    <name>hbase.zookeeper.quorum</name>

    <value>master</value>

    </property>

    <property>

    <name>dfs.replication</name>

    <value>1</value>

    </property>

    hbase.rootdir配置在hdfs文件系统上hbase存储的路径

    hbase.cluster.distributed配置是否是分布式的

    hbase.zookeeper.quorum配置zookeeper在哪个节点上

    dfs.replication配置副本个数

    启动

    启动之前,讲Hadoop下的hdfs-site.xml文件拷贝到hbase的配置文件下

    启动hbase,在bin目录下执行命令start-hbase.sh

    启动hbase之前,确保hadoop是运行正常的,并且可以写入文件

    因为这个地方,我是将数据存储在hdfs,而不是本地,如果你想存储在本地的话 ,只需要将

    <value>hdfs://node1:9000/hbase</value>

    这个配置路径改为本地即可

    使用浏览器访问http://master:16010,可以进入和hadoop类似的web管理页面 

    下面就是实操了

    实际操作

    \1. 启动 shell 界面命令:hbase shell

    成功启动 hbase 服务后,输入 hbase shell 命令,按回车即可进入 shell 界面。

    \2. 查看命令帮助文档:help

    命令格式 1:help

    在 shell 界面里,输入 help 命令,按回车,将显示 shell 的所有命令信息。

    命令格式 2:help ‘命令’

    例如:查看 create 命令的说明,输入 help‘create’

    按回车,将显示 create 命令的使用说明。

    \3. 退出 shell 界面命令:quit 或 exit

    输入 quit 或 exit 按回车,即可退出 shell 界面。

    \4. 创建表命令:create

    命令格式 1:create ‘表名称’,‘列族 1’,‘列族 2’,......

    例如 :创建 表名称 为 student ,列 族 1 为 base_info,列族 2 为 class_info, 列族 3 为other_info 的表。

    输入命令:create 'student','base_info','class_info','other_info' 按回车,结果如下:

    命令格式 2:create '表名称', {NAME => '列族 1'}, {NAME => '列族 2'}, {NAME => '列族 3',......}

    例如:创建表名称为 school,列族 1 为 base_info,列族 2 为 teacher_info,列族 3 为 student_info 的表。

    输 入 命 令 : create 'school', {NAME => 'base_info'}, {NAME => 'teacher_info'}, {NAME => 'student_info'} 显示结果如下:

    备注:创建表还有很多种命令格式,请查阅帮助文档。

    \5. 列出所有表的命令:list

    说明:已经存在 5 张表,分别为 mytable,school,student,tb1,tb2 表。

    \6. 查看表结构信息命令:describe 或 desc

    命令格式:describe ‘表名’

    例如:查看 student 表结构信息。

    输入命令:describe ‘student’,如下图:

    \7. 查看表数据命令:scan

    命令格式:scan ‘表’

    例如:查看 student 的数据。

    输入命令:scan ‘student’按回车,显示结果如下:

    结果说明,student 表暂时没有数据。

    \8. 插入、修改或更新数据命令:put

    Hbase 修改或者更新数据实质上也是添加新数据,只是旧版本的数据没有被显示出来或者 已经被清除。

    插入数据命令格式:put ‘表名’,‘行值’,‘列族:列名’,‘数据’

    例如 1:向表 stduent 中行 1,列族 base_info 加入列 name,添加数据 xiaoming

    输入命令: put 'student','1','base'

    查看表是否有数据,输入命令:scan ‘student’,按回车,显示结果如下:

    例如 2:向表 stduent 中行 1,列族 class_info 加入列 grade,添加数据 2018

    输入命令: put 'student','1','class_info:grade','2018' 按回车,显示结果如下:

    查看表是否有数据,输入命令:scan ‘student’,按回车,显示结果如下:

    \9. 获取某一行数据命令:get

    命令格式 1:get '表名','行'

    例如:查看表 stduent 中行 1 的数据

    输入命令:get 'student','1' 按回车,显示结果如下:

    命令格式 2:get '表名','行','列族:列'

    例如:查看表 stduent 中行 1,列族 base_info 中列 name 的数据

    输入命令:get 'student','1' , 'base_info:name' 按回车,显示结果如下:

    命令格式 3:get '表名','行',{COLUMN=>'列族',VERSIONS=>版本数 n} 获取某一行的某个列族最新的 n 个版本数据。

    列如:获取 student 表行 1,列族 class_info 最新 4 个版本的数据

    输入命令:get 'student',1,{COLUMN=>'class_info',VERSIONS=>4}

    备注:获取表数据还有很多种命令格式,请查阅帮助文档。

    \10. 删除制定单元格的数据命令:delete

    命令格式:delete ‘表’,‘行’,‘列’,时间戳

    例如:删除 student 表行 1,列族 base_info 中 name 的数据

    输入命令:delete 'student','1','base_info:name',1533174244970

    执行命令之前,先后利用 scan 查看表信息,结果如下

    \11. 统计表中的行数命令:count

    命令格式:count ‘表名’

    例如:查看 studen 表的行数

    输入命令:count ‘student’结果如下

    \12. 清空表数据命令:truncate

    命令格式:truncate ‘表名’

    例如:清空表 tb2 的数据

    输入命令:truncate ‘tb2’,命令执行前后用 scan 查看表数据,如下图

    说明数据已经清空。

    注意

    xshell无法删除:修改文件--属性 

    相关文章

      网友评论

        本文标题:工作日志:一文总结HBase从搭建到实操,大家一起进步

        本文链接:https://www.haomeiwen.com/subject/ahkwgktx.html