版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
北京出版社大数据平台部署与运维项目六HBase的部署与使用任务一HBase的认知任务二HBase单机模式和伪分布模式的部署任务三HBase完全分布模式的部署目录/CONTENTS任务四利用Shell操作HBase目标知识目标»
了解HBase作为分布式非关系型数据库的基本概念和特点。»
了解HBase在Hadoop生态系统中的角色和与其他组件的集成。»
了解HBase的单机模式、伪分布模式和完全分布模式的部署和运行方式。能力目标»
能根据需求配置和部署HBase单机模式和伪分布模式。»
能使用HBaseShell进行数据库的基本管理。素养目标»
培养积极的学习态度和良好的团队合作精神,能够积极参与课堂教学活动和实践活动。»
培养优秀的沟通能力和团队协作能力。01HBase的认知任务导入某公司根据客户的大数据业务场景需求,开发完成了一套基于Hadoop的大数据平台项目。客户需要在大数据平台中构建分布式数据表,用于存储大量业务数据,公司拟为其部署HBase分布式数据库以实现客户需求。公司委派大数据运维工程师王工前往客户的中心机房对HBase进行集群部署。那么,HBase究竟是什么样的数据库呢?其运行模式和特点又有哪些呢?HBase与BigTableHBase概述HBase是高可靠、高性能的分布式数据库,面向列存储,可水平扩展。开源实现谷歌BigTable,处理庞大表数据,支持亿行百万列。HBase应用场景存储非结构化和半结构化数据,利用廉价集群高效管理海量信息。一、HBase简介一、HBase简介
(一)HBase和BigTable的关系HBase是BigTable的开源实现,它们的底层技术对应关系如下表6-1所示。Hadoop侧重批量处理,对实时和随机访问不足,HBase提供大规模数据的实时随机读写能力,弥补Hadoop缺陷。HBase与Hadoop的互补性传统关系型数据库在数据量大时扩展性和性能受限,HBase通过分布式架构支持大数据规模下的高性能处理。HBase解决关系数据库扩展难题一、HBase简介
(二)HBase项目的意义二、HBase的生态系统HBase与Hadoop生态系统中的其他组件的关系如图6-1所示。HBase表格构成由行和列组成,行键标识每行,列划分为列族,通过列族、列限定符定位数据。单元格存储字节数组,包含多版本数据,时间戳索引。HBase数据存储单元格存储无类型数据,以字节数组形式存在,同一单元格可保存多版本数据,版本通过时间戳区分。三、HBase数据模型["201505003""Info""email""1174184620720"]对应值为you@163.com,用于定位XieYou的最新E-mail。四维坐标说明通过四维坐标系统,可以快速查找学生信息表中XieYou的E-mail更新记录。数据检索方法三、HBase数据模型四、HBase系统架构不直接与底层磁盘交互,依赖HDFS进行数据管理,实现高效分布式存储。HBase数据存储包括ZooKeeper、HMaster、HRegionServer和客户端。在Hadoop集群上构建,主从架构,通过HDFS存储数据。HBase架构组件作为集群协调器,维护HRegionServer状态,协助HMaster选择与故障恢复,存储数据表访问信息,优化客户端请求,确保高可用性与稳定性。ZooKeeper功能概览01.接收HRegionServer心跳,发现服务异常,通知HMaster处理,参与选举唯一工作HMaster,防止HMaster单点故障。ZooKeeper与HMaster交互02.四、HBase系统架构五、HBaseShell基础操作HBase支持通过Shell的方式实现数据库操作,常见的Shell基础操作如表6-4所示。HBase简介面向列的分布式数据库,源于Google的Bigtable论文。HBase与Hadoop的关系HBase的运行模式概述包括本地模式、伪分布模式和完全分布模式三种。在Hadoop之上提供Bigtable类似功能,适用于非结构化数据存储。HBase的数据模型基于列的存储模式,提供高可靠性与高性能的数据处理能力。六、HBase的运行模式六、HBase的运行模式单一进程内运行,适用于开发测试环境。1.本地模式单一节点模拟分布式环境,便于调试与学习。2.伪分布模式多节点部署,实现数据的分布式存储与处理。3.完全分布模式02HBase单机模式和伪分布模式的部署任务导入某公司王工接到公司任务,公司委派他前往客户的中心机房对HBase进行集群部署。在前往客户现场前,为了确保顺利实现HBase的集群部署,王工先在自己公司进行了HBase单机模式和伪分布模式的部署,以此测试HBase的基础功能。那么,王工是怎么做的呢?hbase-1.2.0.tar.gz版本与hadoop-2.6.0有良好的兼容性,从官网下载对应的安装包,复制到/home/hadoop目录下。先找到HBase官网下载地址,然后选择hbase-1.2.0版本,下载HBaseReleases。(一)下载安装包01解压下载的安装包:[hadoop@K-Master~]$cd/usr[hadoop@K-Masterusr]$sudotar-xvf/home/hadoop/hbase-1.2.0.tar.gz#解压安装源码包[hadoop@K-Masterusr]$mvhbase-1.2.0hbase#重命名[hadoop@K-Masterusr]$cdhbase[hadoop@K-Masterhbase]$sudochown-Rhadoop:hadoophbase#赋予hbase安装目录下所有文件hadoop权限(二)解压安装包02一、安装HBase一、安装HBase将hbase下的bin目录添加到系统的path中,在文件最后一行添加如下内容:[hadoop@K-Masterusr]$sudovim~/.bashrcexportPATH=$PATH:/home/hadoop/hbase/binHBase单机模式和伪分布模式的部署执行source命令使上述配置在当前终端立即生效:[hadoop@K-Masterusr]$source~/.bashrc03(三)配置安装路径[hadoop@K-Masterusr]$hbaseversion24/07/2118:01:57INFOutil.VersionInfo:HBasel.2.024/07/2118:01:57INFOutil.VersionInfo:Subversiongit://newbunny/home/lars/dev/hbase-0.94-r09c60d770f2869ca315910ba0f9a5ee9797b1edc24/07/2118:01:57INFOutil.VersionInfo:CompiledbylarsonFriMay2322:00:41PDT2024当我们看到以上类似的消息,则表示HBase已经安装成功。04(四)验证安装是否成功(一)配置hbase/conf/hbase-env.sh将JAVA_HOME变量设置为Java安装的根目录,配置如下所示:[hadoop@K-Masterhbase]$vimhbase/conf/hbase-env.sh对hbase-env.sh文件做如下修改:exportJAVA_HOME=/home/hadoop/jdk1.8#配置本机的Java安装根目录exportHBASE_CLASSPATH=/home/hadoop/hadoop-2.7.3/etc/hadoopexportHBASE_MANAGES_ZK=true#配置由HBase自己管理ZooKeeper,不需要单独的ZooKeeper(二)配置hbase/conf/hbase-site.xml在启动HBase前需要设置属性hbase.rootdir,用于指定HBase数据的存储位置。此处设置为HBase安装目录下的hbase-tmp文
件
夹(file:///home/hadoop/hbase/hbase_x0002_tmp),配置如下:[hadoop@K-Masterhbase]$vimhbase/conf/hbase-site.xml<configuration>
<property>
<name>hbase.rootdir</name><value>file:///home/hadoop/hbase[hbase-tmp</value></property></configuration>特别要注意:hbase.rootdir默认为/tmp/hbase-${},这意味着每次重启系统都会丢失数据。二、配置HBase单机模式(三)启动HBase[hadoop@K-Masterhbase]$start-hbase.shstartingmaster,loggingto/usr/hbase/bin/../logs/hbase-hadoop-master-K-Master.localdomain.out(四)进入Shell模式进入Shell模式之后,通过status命令查看HBase的运行状态,通过exit命令退出Shell。[hadoop@K-Masterhbase]$hbaseshellHBaseShell;enter'help<RETURN>'forlistofsupportedcommands.Type"exit<RETURN>"toleavetheHBaseShellVersion0.94.20,r09c60d770f2869ca315910ba0f9a5ee9797bledc,FriMay2322:00:41PDT2014hbase(main):001:0>statusIservers,0dead,2.0000averageloadhbase(main):002:0>exit(五)停止HBase[hadoop@K-Masterhbase]$stop-hbase.shstoppinghbase…二、配置HBase单机模式01(一)配置hbase/conf/hbase-env.sh添加变量HBASE_CLASSPATH,并将路径设置为本机Hadoop安装目录下的conf目录(即{HADOOP_HOME}/conf)。修改完成后,hbase-env.sh的配置如下:[hadoop@K-Masterhbase]$vimconf/hbase-env.shexportJAVA_HOME=/home/hadoop/jdk1.8exportHBASECLASSPATH=/home/hadoop/hadoop-2.7.3/etc/hadoopexportHBASEMANAGES_ZK=true02(二)配置hbase/conf/hbase-site.xml修改hbase.rootdir,将其指向K-Master(与HDFS的端口保持一致),并指定HBase在HDFS上的存储路径。将属性hbase.cluter.distributed设置为true。假设当前Hadoop集群运行在伪分布模式下,且NameNode运行在9000端口。[hadoop@K-Masterhbase]$vimhbase-site.xml<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://localhost:9000/hbase</value>
</property>三、配置HBase伪分布模式03(三)启动HBase完成以上操作后启动HBase,启动顺序:先启动Hadoop,再启动HBase。关闭顺序:先关闭HBase,再关闭Hadoop。第一步:启动Hadoop集群。第二步:启动HBase。04(四)进入Shell模式进入Shell模式之后,通过list命令查看当前数据库所有表信息,通过create命令创建一个member表,其拥有member_id、address、info三个列族,通过describe命令查看member表结构,通过exit命令退出HBaseShell模式。三、配置HBase伪分布模式05(五)查看HDFS的HBase数据库文件通过hadoopfs-ls/hbase命令查看HBase分布式数据库在HDFS上是否创建成功,/hbase/member文件夹即为上一步我们建立的member数据库在HDFS上的存储位置。06(六)停止HBase完成上述操作后,执行关闭HBase的操作,关闭顺序为:先关闭HBase,再关闭Hadoop。三、配置HBase伪分布模式03HBase完全分布模式的部署任务导入某公司的王工来到客户的中心机房现场,根据公司之前为客户的开发部署,目前客户公司的集群环境中已经有完全分布式Hadoop了,接下来他要为客户部署完全分布模式的HBase。接下来,王工该如何做呢?一、HBase集群分布表及集群安装Hadoop完全分布式环境和HBase完全分布式集群分别搭建成功后,Hadoop集群中每个节点的角色如表6-5所示。二、配置hbase-env.sh编辑集群中所有机器的conf/hbase-env.sh,命令如下:三、配置hbase-site.xml编辑所有机器上的hbase-site.xml文件,命令如下:四、配置regionservers编辑所有HRegionServers节点的regionservers文件。修改/home/hbase/conf文件夹下的regionservers文件,添加DataNode节点的hostname,命令如下:五、启动HBase集群中所有节点完成上述HBase部
署
之
后,
即
可
启
动HBase集
群。
启
动
顺序:Hadoop→Hbase。如果使用自己安装的ZooKeeper,则启动顺序是:Hadoop→ZooKeeper→HBase。停止顺序:HBase→ZooKeeper→Hadoop。04利用Shell操作HBase任务导入某公司最近开发了一个新客户,该客户要求公司为其在HBase分布式数据库中创建学生信息表,如表6-7所示。启动Hadoop与HBase,如图6-4所示。$start-all.sh$start-hbase.sh(一)启动HBase一、启动HBaseShel启动HBaseShell,如图6-5所示。$hbaseshell(二)启动HBaseShell一、启动HBaseShel(一)查看表查看当前数据库中的所有数据表。>list这里需要注意,启动关闭HBase的顺序是:启动Hadoop→启动HBase→关闭HBase→关闭Hadoop。若退出HBaseShell环境,只要输入exit;即可返回工作目录在关系型数据库(如MySQL)中,首先要创建数据库,然后创建表,但是在HBase数据库中,不需要创建数据库,可以直接创建表。(二)创建表创建一张student表,包括字段为:姓名(name)、性别(sex)、年龄(age)、专业(major)、课程成绩(score)。>create'student','name','sex','age','major','score'创建完student表后,可通过d<esc>ribe命令查看student表的基本信息,如图6-6所示。>d<esc>ribe'student'二、创建表三、编辑数据(一)添加数据依次插入Zhangsan的数据,如图6-7所示。>put'student','95001','name','zhangsan'>put'student','95001','sex','male'>put'student','95001','age','22'>put'student';95001','major','CS'>put'student','95001','score:computer','95'>put'student','95001','score:English','75'三、编辑数据(二)查看数据使用get命令查看某一行数据,如图6-8所示。>get'student','95001'按同样的方式,添加表中第二行内容后,使用scan查看表内全部数据。>scan'student'至此数据已添加完成,后面进行数据的删除、修改等操作。三、编辑数据(三)删除数据例如,删除Zhangsan的英语成绩,如图6-9所示。>delete'student','95001','score:English'需要说明的是,HBase使用put命令添加数据,一次只能为一
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年衡阳市蒸湘区工会人员招聘考试参考题库及答案详解
- 2026年伊春市乌马河区政务服务中心(窗口人员)招聘笔试备考题库及答案详解
- 2026年昆明市东川区政务服务中心(窗口人员)招聘考试备考试题及答案详解
- 2026年辽宁省抚顺市工会人员招聘考试参考题库及答案详解
- 2026年无锡市锡山区医疗系统事业编人员招聘笔试备考试题及答案详解
- 2026年辽阳市宏伟区工会人员招聘考试模拟试题及答案详解
- 2026年伊春市金山屯区政务服务中心(窗口人员)招聘笔试参考试题及答案详解
- 2025年西宁市城中区政务服务中心(窗口人员)招聘考试试题及答案详解
- 2026年河南省濮阳市政务服务中心(窗口人员)招聘笔试参考试题及答案详解
- 2026年岳阳市岳阳楼区医疗系统事业编人员招聘笔试参考题库及答案详解
- DB37-T 4644-2023 水文设施工程单元工程施工质量验收评定规范
- 游戏陪玩平台运营及服务提升方案设计
- (正式版)DB65∕T 4791-2024 《水工隧洞敞开式-∕TBM施工技术规范》
- 装载机安全管理办法
- 2024年高考(江西卷)地理真题(学生版+解析版)
- 工作照片拍摄培训课件
- 儿童口腔舒适化治疗课件
- DL∕T 1576-2016 6kV~35kV电缆振荡波局部放电测试方法
- 汽车智能座舱系统与应用 课件全套 模块1-6 对智能座舱系统的基本认知-掌握智能座舱场景测试技术
- 中国研究型医院建设指南
- 急性肺栓塞抢救流程
评论
0/150
提交评论