ToB企服应用市场:ToB评测及商务社交产业平台

标题: 【大数据技能基础 | 实验七】HBase实验:部署HBase [打印本页]

作者: 嚴華    时间: 2024-11-5 20:40
标题: 【大数据技能基础 | 实验七】HBase实验:部署HBase


  

一、实验目的

[list
=1]
  • 掌握HBase基础简介及体系架构;
  • 掌握HBase集群安装部署及HBase Shell的一些常用命令的使用;
  • 相识HBase和HDFS及Zookeeper之间的关系。
    [/list
    ] 二、实验要求

    [list
    =1]
  • 巩固学习下【大数据技能基础 | 实验一】设置SSH免密登录、【大数据技能基础 | 实验三】HDFS实验:部署HDFS、【大数据技能基础 | 实验五】ZooKeeper实验:部署ZooKeeper;
  • 部署一个主节点,三个子节点的HBase集群,并引用外部Zookeeper;
  • 进入HBase Shell通过命令练习创建表、插入数据及查询等命令。
    [/list
    ] 三、实验原理

    简介:HBase是基于Hadoop的开源分布式数据库,它以Google的BigTable为原型,计划并实现了具有高可靠性、高性能、列存储、可伸缩、及时读写的分布式数据库体系,它是基于列而不是基于行的模式,适合存储非布局化数据。
    体系布局:HBase是一个分布式的数据库,使用Zookeeper管理集群,使用HDFS作为底层存储,它由HMaster和HRegionServer组成,遵从主从服务器架构。HBase将逻辑上的表分别成多个数据块即HRegion,存储在HRegionServer中。HMaster负责管理全部的HRegionServer,它本身并不存储任何数据,而只是存储数据到HRegionServer的映射关系(元数据)。HBase的基本架构如图所示:

    四、实验环境


    [list
    ]
  • 云创大数据实验平台:

  • Java 版本:jdk1.7.0_79
  • Hadoop 版本:hadoop-2.7.1
  • ZooKeeper 版本:zookeeper-3.4.6
  • HBase 版本:hbase-1.1.2
    [/list
    ] 五、实验内容和步调

    本实验主要演示HBase的安装部署过程,因HBase依赖于HDFS和Zookeeper,以是该实验需要分为四个步调。
    首先,设置SSH无密钥登录(参考【大数据技能基础 | 实验一】设置SSH免密登录)。
    其次,安装Hadoop集群(参考【大数据技能基础 | 实验三】HDFS实验:部署HDFS)。
    然后,安装Zookeeper集群(参考【大数据技能基础 | 实验五】ZooKeeper实验:部署ZooKeeper)。
    最后,修改HBase设置文件,具体内容如下:
    (一)验证Hadoop和ZooKeeper已启动

    通过jps
    命令验证Hadoop和ZooKeeper已启动:
    1. jps
    复制代码

    (二)修改HBase设置文件

    将HBase安装包hbase.1.1.2.tar.gz解压到/usr/cstor目次,并将hbase.1.1.2目次改名为hbase,且所属用户改成root:root。
    1. tar -zxvf hbase.1.1.2.tar.gz -c /usr/cstor/hbase
    2. mv /usr/cstor/hbase.1.1.2 /usr/cstor/hbase
    3. chown -R root:root /usr/cstor/hbase
    复制代码
    以上操作实验平台已经事先做好了。我们直接进入到hbase目次下:
    1. cd /usr/cstor/hbase
    2. ls
    复制代码

    1. 设置hbase-env.sh文件
    进入解压目次下,设置conf目次下的/usr/cstor/hbase/conf/hbase-env.sh文件,设置如下:
    1. vim /usr/cstor/hbase/conf/hbase-env.sh
    复制代码

    [list
    ]
  • Java安装路径: (需根据实际环境指定)
    [/list
    ]
    1. export JAVA_HOME=/usr/local/jdk1.7.0_79
    复制代码


    [list
    ]
  • 不使用HBase自带的Zookeeper:
    [/list
    ]
    1. export HBASE_MANAGES_ZK=false
    复制代码

    2. 设置hbase-site.xml文件
    设置conf目次下的hbase-site.xml文件,设置如下:
    1. vim /usr/cstor/hbase/conf/hbase-site.xml
    复制代码
    1. <configuration>
    2.    <property>
    3.       <name>hbase.rootdir</name>
    4.       <value>hdfs://master:8020/hbase</value>
    5.    </property>
    6.    <property>
    7.       <name>hbase.cluster.distributed</name>
    8.       <value>true</value>
    9.    </property>
    10.    <property>
    11.       <name>hbase.zookeeper.quorum</name>
    12.       <value>slave1,slave2,master</value>
    13.    </property>
    14.    <property>
    15.       <name>hbase.tmp.dir</name>
    16.       <value>/usr/cstor/hbase/data/tmp</value>
    17.    </property>
    18. </configuration>
    复制代码

    3. 设置regionservers文件
    设置conf目次下的regionservers文件,设置如下:
    1. vim /usr/cstor/hbase/conf/regionservers
    复制代码
    1. slave1
    2. slave2
    复制代码

    设置完成后,将hbase目次传输到集群的别的节点:
    1. scp -r /usr/cstor/hbase root@slave1:/usr/cstor
    2. scp -r /usr/cstor/hbase root@slave2:/usr/cstor
    复制代码

    (三)启动并验证HBase

    接着,启动HBase,并简单验证HBase,如下:
    在主节点master进入hbase解压目次的bin目次,启动HBase服务进程(已启动Zookeeper):
    1. cd /usr/cstor/hbase/bin
    2. ./start-hbase.sh
    复制代码

    启动完HBase后,使用jps
    命令查看进程:

    在master服务器上,可以看到HMaster进程;在slave1~2上,可以看到HRegionServer进程。如许,HBase就启动成功了。
    通过以下命令进入HBase shell界面:
    1. ./hbase shell
    复制代码

    在shell里创建表:
    1. create 'testhbase' , 'f1'
    复制代码
    查询全部表名:
    1. list
    复制代码
    查看表布局信息:
    1. describe 'testhbase'
    复制代码
    在shell里插入数据:
    1. put 'testhbase', '001', 'f1:name', 'aaa'
    复制代码
    在shell里查询:
    1. scan 'testhbase'
    复制代码
    删除表,先disable再drop:
    1. disable 'testhbase'
    2. drop 'testhbase'
    复制代码
    退出shell:
    1. quit
    复制代码
    六、实验效果

    HBase启动成功后,进入shell界面,用shell命令简单操作HBase数据库验证HBase成功安装,验证效果如图所示。

    HBase安装成功后,可以通过访问HBase WEB页面(http://master:16010)来查看HBase集群的一些基本环境,如图所示。(这里的master要替换为对应的IP地址)

    七、实验心得

      在进行HBase实验的过程中,我深刻体会到了HBase作为一个分布式、可扩展的NoSQL数据库的独特优势。HBase的计划理念夸大高吞吐量和低延迟,这使得它非常适合处理惩罚大规模数据存储和及时数据访问。
      首先,我在实验中学习了HBase的基本架构。HBase是建立在Hadoop之上的,它使用Hadoop的HDFS作为底层存储。通过理解RegionServer、HMaster和Zookeeper的协作机制,我认识到HBase是如何实现高可用性和容错性的。尤其是Zookeeper在HBase中起到了关键的协调作用,确保了体系的一致性和稳固性。
      在实际操作中,我体验到了HBase的表计划与传统关系型数据库的显著不同。在HBase中,表的计划更为灵活,允许动态列族的添加和删除。这种灵活性使得我们可以更方便地进行数据建模,尤其是在处理惩罚多样化和不断变革的数据时。别的,实验中我还实践了HBase的CRUD操作,通过Java API进行数据的插入、查询、更新和删除。尽管最初遇到了一些API使用上的困惑,但在查阅文档和反复试验后,我逐渐掌握了如何高效地进行数据操作。HBase的Scan和Get操作让我能够快速检索所需数据,极大进步了数据处理惩罚服从。
      同时,我也注意到HBase在处理惩罚海量数据时的性能优势。在对大规模数据集进行测试时,HBase表现精彩,能够迅速响应查询请求,表现出其高效的性能。这使我意识到,HBase非常适合大数据分析和及时数据处理惩罚的场景。在实验的最后阶段,我实验对HBase进行一些基本的性能调优,相识了如预分区、缓存等优化策略。这些措施能够有效提升HBase的读写性能,为后续的应用提供了更好的支持。
      总的来说,这次HBase实验让我对分布式数据库的架构和操作有了更加深入的理解。通过实践,我不仅学会了如何使用HBase,还认识到了在实际应用中如何根据需求进行计划和优化。这将对我未来的数据处理惩罚和分析工作产生积极的影响。
       :以上文中的数据文件及干系资源下载地址:
    链接:https://pan.quark.cn/s/356a503ecf3e
    提取码:khqu

    免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




    欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4