大数据安全实验-Hadoop-Hbase(大三下的)

由于前面发了DCT图片压缩,还是有学弟学妹感谢我的文章,那我后面就把电脑上还保存着的部分实验和报告发布在这个专栏吧~

实验的源文件和我配置好之后的文件我打包好了在这里

链接:https://pan.baidu.com/s/1w9hBLdFKNqKtAaPmhtgaYA?pwd=wit6 
提取码:wit6 
考虑到有的人那啥,我这个实验用的虚拟机也放在这里吧,里面包含docker、长亭的雷池waf以及大数据实验配置好的所有环境

链接:https://pan.baidu.com/s/17ivaYLUVoOOmNDBNwr9bog?pwd=wit6 
提取码:wit6 
--来自百度网盘超级会员V3的分享

Hadoop配置和安装

  1. 如何查看和确认Linux防火墙已经关闭?如需关闭Linux系统防护墙,需要设置哪些操作步骤?

1.1查看防火墙状态à sudo systemctl status firewalld

可见防火墙是打开状态“active“

1.2关闭防火墙à sudo systemctl stop firewalld

再次查看防火墙状态,发现已经关闭” inactive”

  1. 写出在Ubuntu中安装SSH服务端和生成秘钥并加入授权过程。

2.1安装 OpenSSH 服务器àsudo apt install openssh-server

2.2生成SSH密钥à ssh-keygen -t rsa -b 4096

2.3将生成的公钥文件添加到授权列表中

à cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

2.4设置 SSH 目录和授权文件的权限

àchmod 700 ~/.ssh

àchmod 600 ~/.ssh/authorized_keys

重启 SSH 服务,以使更改生效àsudo systemctl restart ssh

  1. 安装和配置Hadoop伪分布式集群中,需要修改和配置core-site.xml hdfs-site.xml,(1)写出这两个配置文件中的各属性名称功能。(2)启动后的Hadoop进程有哪些?(3)Hadoop启动后运行jps可以看到有哪些进程启动?

首先配置安装好Java环境,本次实验环境为Java1.8+centOS8

(1)如下图为core-site.xml的配置

属性一名称为fs.defaultFS,值为hdfs://localhost:9000,这个属性指定了Hadoop文件系统的默认URI。

属性二名称为hadoop.tmp.dir,值为/root/Hadoop/temp ,功能为Hadoop运行时产生的临时文件的存储路径。

如下图为hdfs-site.xml的配置

属性一:dfs.replication:,这个属性指定了数据块的副本数量。在这里,副本数量被设置为1,表示每个数据块只有一个副本

属性二:dfs.namenode.name.dir: 这个属性指定了NameNode存储命名空间元数据的本地文件系统路径。元数据将被存储在/root/Hadoop/temp/dfs/name目录下。

属性三:dfs.datanode.data.dir: 这个属性指定了DataNode存储数据块的本地文件系统路径。数据块将被存储在/root/Hadoop/temp/dfs/data目录下

(2)常见的 Hadoop 进程:

Namenode:HDFS守护进程,用来管理文件系统的命名控件,负责记录文件是如何分隔成数据块,以及这些数据块被存储到哪些数据节点上,它的主要功能是对内存及IO进行集中管理。 

Datanode:文件系统的工作节点,根据需要存储和检索数据块,并定期向Namenode发送它们所存储的块的列表。 

Secondary Namenode:辅助后台程序,与Namenode进行通信,以便定期保存HDFS的元数据的快照,用以备份和恢复数据。 

ResourceManager:负责集群中所有资源的统一管理和分配 

NodeManager:管理Hadoop集群中单个计算节点,并与ResourceManager保持通信

(3)如图运行jps可以看到有这些进程启动

  1. 实验小结

本次实验首先配置了Java环境,然后安装和配置了Hadoop,并最终启动了Hadoop集群。本次实验使我们熟悉了配置Java环境和Hadoop的过程,并了解了启动Hadoop集群的基本步骤。通过这个实验,我们能够更好地理解和掌握Hadoop分布式系统的部署和管理。

Linux下安装jdk8

上传并解压

tar -zxvf 文件名.tar.gz

命令vi /etc/profile设置环境变量

export JAVA_HOME=/root/jdk8/jdk1.8.0_221  #jdk安装目录

export JRE_HOME=${JAVA_HOME}/jre                   #jre安装目录

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib

export PATH=$PATH:${JAVA_HOME}/bin:${JRE_HOME}/bin

注意事项:

打开之后要输入i进行插入,然后光标定到最下面再输入

输入完成后”:wq”进行保存并退出,”:q!”是不保存退出

上面冒号是告诉vi这是命令不是要插入的东西,w为wrtie,q为quit,!为强制退出

source /etc/profile输入这条命令让配置生效

HDFS文件访问

  1. 用shell命令在HDFS中新建user目录及hadoop子目录,写出命令过程及结果截图如下。

使用命令hadoop fs -mkdir /user/hadoop创建文件夹

使用命令hadoop fs -cd /user查看发现文件夹创建成功

  1. 将Ubantu本地文件系统中的数据文件class1.txt、class2.txt和class3.txt存储到HDFS中的user/hadoop目录中,写出shell命令过程及将实验结果截图如下。

首先将class1.txt、class2.txt和class3.txt存放在Ubantu本地文件系统里面

再使用命令hadoop fs -put class1.txt class2.txt class3.txt /user/hadoop将这几个文件存储到HDFS中的user/hadoop目录中

使用命令hadoop fs -ls /user/hadoop验证文件是否存储进去

发现存储成功

HBase数据库

  1. 在Hadoop伪分布式集群基础上安装和配置Hbase数据库,并启动。输入jps命令,将系统进程截图粘贴到下方。

启动Hbase之后进程如下

  1. 在HBase数据库中用shell命令创建表student(name,sex,age,dept),并在表中新增如下数据:

name

sex

age

dept

xiaoli

male

18

computer

yiyi

female

20

english

lulu

female

19

art

(1)shell命令查看表中所有数据,并将结果截图粘贴在下方。

部分创建过程中的命令和截图如下:

create 'student', 'info'

put 'student', 'row1', 'info:name', 'xiaoli'

put 'student', 'row1', 'info:sex', 'male'

put 'student', 'row1', 'info:age', '18'

put 'student', 'row1', 'info:dept', 'computer'

最终表格数据如下àscan 'student'

(2)shell命令删除姓名为’lulu’对应行键的中age单元格数据。并将结果截图粘贴在下方。

删除命令delete 'student', 'row3', 'info:age'

(3)shell命令增加姓名为’yiyi’对应行键中数学课程成绩为95分(score:math 95)。并将结果截图粘贴在下方。

涉及到修改表的结构,首先禁用表student,命令为disable 'student'

然后增加一个列族score,命令为alter 'student', {NAME => 'score'}

再启用student表,命令为enable 'student'

插入新数据,命令为put 'student', 'row2', 'score:math', '95'

最后查看表有没有插入成功,命令为scan 'student'

假设上述HBase表可以被划分成多个Region,假设每个Region大小为128MB,假设.META.表的每行(一个映射条目)在内存中大约占用2KB

1)画出HBase的三层结构定位Region图(这个要自己画一下

这个为我找的解释,理解下三层结构图

2)计算上述HBase表的理论存储容量大小。

        这里我写错了,因为我没有买书就看了几篇文章,但其实很简单,书上写了,自己看一下去吧,我懒得去找在哪一页了

实验小结
    通过本次HBase实验,我深入了解了HBase的架构和基本操作,从创建表、插入数据到管理表结构和计算存储容量,全面掌握了HBase的使用方法。实践中的挑战让我更加深刻地理解了理论知识,同时也提升了我解决问题的能力。在排查错误的过程中,我花费了不少时间和精力,但通过仔细分析问题、查阅资料和不断尝试,最终成功克服了困难。这次实验不仅加强了我对大数据存储技术的理解,也为我未来在数据管理领域的发展奠定了坚实的基础,我对HBase及其在实际应用中的潜力有了更深的认识和信心。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值