
Hadoop学习
文章平均质量分 65
麦嘟学编程
这个作者很懒,什么都没留下…
展开
-
在使用 yum 安装 epel-release 包时,如果遇到类似于“Loading mirror...”的提示 “未知的错误”解决方法
其中centos-base.repo 文件是 CentOS 系统中用于配置 YUM(Yellowdog Updater, Modified)或 DNF(Dandified YUM)软件包管理器的仓库(repository)配置文件。它定义了 CentOS 系统的软件源(repository),使得用户可以通过这些源来安装、更新或管理软件包。输入epel-release 安装命令:sudo yum install -y epel-release。在使用yum命令安装repl-release时,报错。原创 2025-03-30 20:43:27 · 341 阅读 · 0 评论 -
hive分析学生、课程、成绩相关的数据
1.将测试数据存放到?home/yt用户目录下。三张内部表在HDFS上生成了相对应的目录。3.将测试数据装载到对应的表中。2.进入Hive,创建表。原创 2024-06-06 11:36:55 · 294 阅读 · 0 评论 -
Hive 基本操作
3.进入hive,切换到db_test库(如没有,可以先创建 create database db_test)2.将学生信息上传到/bigdata/hive/hive_stu目录下。1.启动Hadoop集群。原创 2024-06-05 11:26:45 · 423 阅读 · 1 评论 -
28 hive安装-本地模式
用户名密码原创 2024-05-30 11:36:37 · 411 阅读 · 0 评论 -
27 Hive安装-内嵌模式
(2)由于hive3.1.2内的 guava-19.0.jar版本较低,需要删除,再将hadoop3.1.4中的 guava-27.0-jre.jar复制过来。5.修改配置文件/etc/profie.d/my_env.sh文件,添加环境变量。(1)弃用log4j-slf4j-impl-2.10.0.jar。2.上传到master节点的/opt/software目录下。6.初始化元数据库(默认数据库时derby)3.解压到/opt/module目录下。(2)保存并退出,刷新配置文件。7.解决日志包冲突问题,原创 2024-05-30 10:41:13 · 467 阅读 · 0 评论 -
26 centos7.8安装Mysql8.4
在集群中=我们选择将Mysql安装在slave01节点上。1.在官网下载mysql安装包MySQL :: Download MySQL Yum Repository下载后上传到slave01节点的/opt/software目录下。2.切换到root用户下3.查看和删除安装的MySQL软件包和依赖包rpm -pa | grep mysql若找到了相关的mysql文件,执行以下名删除文件。(此处没有找到)yum remove mysql-*****(需要删除原创 2024-05-30 09:34:47 · 760 阅读 · 0 评论 -
25 使用MapReduce编程了解垃圾分类情况
1.通过finalshell 上传到master节点,再使用hdfs命令上传到HDFS文件系统的/bigdata目录下(也可使用Java API 实现上传)统计数据中各类型垃圾的数量,分别存储可回收垃圾、有害垃圾、湿垃圾和干垃圾的统计结果。(存储到4个不同文件中,垃圾信息)测试数据中1表示可回收垃圾,2表示有害垃圾,4表示湿垃圾,8表示干垃圾。(1)自定义键的类型 垃圾名称,垃圾分类编号,垃圾分类名称。(1)统计各类型垃圾数量 需要自定义计数器。(2)分别存储垃圾信息,需要自定义分区。原创 2024-05-29 11:06:45 · 609 阅读 · 2 评论 -
24 使用MapReduce编程统计各科目成绩最高的学生
2.创建Maven项目,修改配置pom.xml文件,添加log4j.properties(步骤省略)7.编写Driver模块此类需要继承 Configured 实现 Tool接口。最后直接运行主类ScoreCount.1.准备测试数据并上传至HDFS中。3.自定义值的类型Student。(1)当前项目下生成jar文件。5.编写Reducer模块。(2)控制台输出了日志信息。4.编写Mapper模块。6.编写JarUtil。原创 2024-05-22 10:46:11 · 1938 阅读 · 6 评论 -
IDEA自动打包执行报错Exception in thread “main“ org.apache.hadoop.security.AccessControlException: Permission
使用idea自动打包mapreduce程序并直接运行,代码错误:Exception in thread "main" org.apache.hadoop.security.AccessControlException: Permission denied: user=AOC, access=EXECUTE, inode="/tmp":yt:supergroup:drwxrwx---。这是与hadoop权限有关,我们集群启动是yt用户,安全模式用户也是yt,没有在集群中配置windows的用户。原创 2024-05-20 17:49:59 · 488 阅读 · 0 评论 -
23 在IDEA中自动打包MapReduce程序并执行
注意:代码执行过程中出现权限问题:一定要去环境变量中配置HADOOP_USER_NAME变量,详见。2.修改驱动类:继承 Configured 实现Tool。1.编写JarUtil工具类,完成xxx.jar打包操作。(2)在IDEA的控制台可以看到日志输出信息。(1)在项目的当前目录下会生成jar文件。上修改驱动类的代码,完成自动打包操作。3.运行LogCount类。原创 2024-05-20 17:45:17 · 618 阅读 · 1 评论 -
Hadoop Java API操作 及读取序列化文件(04-05-06)
/单元测试 每个操作放在一个测试方法中, 选中方法名---》右击 运行testList()//2.获取文件系统对象 yt启动集群的用户名。//2.获取文件系统对象 yt启动集群的用户名。//2.获取文件系统对象 yt启动集群的用户名。//2.获取文件系统对象 yt启动集群的用户名。//2.获取文件系统对象 yt启动集群的用户名。//2.获取文件系统对象 yt启动集群的用户名。//3.获取HDFS根目录下的子目录和文件。//读取序列化文件中的数据保存到本次磁盘。//1.创建配置对象。原创 2024-05-15 17:02:28 · 699 阅读 · 0 评论 -
22 优化日志文件统计程序-按月份统计每个用户每天的访问次数
1.自定义键的类型 MemberLogTime 包含两个属性(memberId,memberLogTime) 实现WritableComparable接口。//将用户ID和访问时间存到MemberLogTime对象中。3.在resources目录下创建日志文件log4j.properties。7.使用Maven打包为Jar文件,上传到master节点上执行。2.编写Mapper模块:(在Mapper中计数器,使用枚举)//一月计数器值+1。//设置reduce任务数2。//计数器(动态计数器)原创 2024-05-15 10:55:08 · 1217 阅读 · 0 评论 -
21 使用Hadoop Java API读取序列化文件
1.我直接在上一个项目中test/java目录下创建com.maidu.selectdata.test.APITest类,test目录下的内容在打包时不会出现在jar文件中,仅供测试所用。在上一个实验中我们筛选了竞赛网站日志数据中2021/1和2021/2的数据以序列化的形式写到了hdfs上。接下来我们使用Java API 读取序列化的数据保存到磁盘中。3.运行 选择方法名右击运行。4.进入D盘查看文件。原创 2024-05-08 10:42:48 · 509 阅读 · 0 评论 -
20 筛选日志并生成序列化文件
System.out.println("必须输入文件输入路径和输出路径");3.本次只需要进行序列化操作,所以不需要Reducer模块,编写Mapper模块。5、使用maven打包为jar,上传到master上。1.在idea中创建项目 selectData.2.添加依赖,插件包,指定打包方式,日志文件。//设置reduce任务为0。大家可以直接从前面项目复制。4、编写Driver模块。原创 2024-04-25 11:48:16 · 1065 阅读 · 1 评论 -
集群移植到本机上
2、修改版本-由于我给大家发的VM16,而教师机上安装的是VM17,那在我们那边打开会有问题,修改下版本信息即可。4、拷贝过去的虚拟机跟你电脑的上的虚拟网络不是同一网段,大家不要修改虚拟机中,直接修改VM上以及windows系统下的。很多同学集群没有搭建成功,为了后续的课程大家可以从教师机拷贝整个集群到自己的电脑上。master,slave01,slave02,hadoop100都需要修改。3、在VM上打开虚拟机,选择对应的虚拟机。6、配置windows系统下的虚拟机。5、修改VM 可以参考前面的文章。原创 2024-04-25 11:14:50 · 289 阅读 · 5 评论 -
19 使用MapReduce编程统计超市1月商品被购买的次数
/3 水果 水果作为键 值 1(数量1 不是 3 表示用户编号)在com.maidu.ordercount包中创建一个新类ShoppingOrderCount类,编写以下模块。首先将1月份的订单数据上传到HDFS上,订单数据格式 ID Goods两个数据字段构成。System.out.println("必须输入读取文件路径和输出文件路径");将订单数据保存在order.txt中,(上传前记得启动集群)。在ShoppingOrderCount类中编写主方法。修改pom.xml,添加依赖。原创 2024-04-24 11:34:13 · 3252 阅读 · 0 评论 -
18 统计网站每日的访问次数
每条数据的字段值之间使用逗号隔开的 ,最终时间是第五个自动,获取第五个字段值的中的年月日。2.通过Idea创建项目mr-raceData ,基础的配置。编写代码后,需要将其打成Jar包,需要修改pom.xml。通过浏览器访问hdfs,查看该文档前面的部分数据。拷贝到桌面,上传的master的当前用户目录下。1.将竞赛的数据上传HDFS,查看数据的格式。执行jar文件,实现访问每条访问次数的统计。将竞赛日志数据取部分上传到hdfs上。最后使用maven打包为Jar。制定打包的方式为jar。原创 2024-04-17 11:51:06 · 2346 阅读 · 0 评论 -
16 Java API操作HDFS
参数的优先级:1.客户端的代码中 > 2.ClassPath下自定义的文件> 3.服务器中自定义的(集群中)我们在windows平台下,使用Java代码作为客户端访问HDFS,对他进行相关的操作。hadoop集群中默认的副本是3,接下来代码中设置副本数为2,执行以下代码,看看最终副本数是多少?2.在pom.xml文件中添加依赖(注意:初次使用需要连接外网,需要下载对应的依赖文件)4.目前直接使用单元测试进行操作,我们源代码文件直接创建在test/java/目录下。6.实现文件上传,设置创建的副本数。原创 2024-04-08 21:27:04 · 995 阅读 · 0 评论 -
window安装maven和hadoop3.1.4
大家不用去官网下载,直接使用我发给大家的压缩文件,注意解压后的文件夹不要放在中文目录下,课堂上我们讲解过原因。前面的文章已讲解如何安装idea和进行基本设置,本文主要带着大家安装配置好maven和hadoop.这是我电脑上的路径,大家最好都放在D:\\software目录下。显示版本信息,说明配置成功。最后打开命令行窗口输入。原创 2024-04-06 12:45:55 · 789 阅读 · 2 评论 -
is running 261401088B beyond the ‘VIRTUAL‘ memory limit. Current usage: 171.0 MB of 1 GB physical
注意:在修改配置文件前,需要停止集群中的yarn (可执行命令 stop-yarn.sh 修改完成后再启动,start-yarn.sh),最后重新执行wordcount模块进行邮箱 统计。此处可修改/opt/modulr/hadoop-3.1.4/hadoop/etc/yarn-site.xml。在/opt/modulr/hadoop-3.1.4/hadoop/etc/yarn-site.xml插入以下代码。-- 是否对容器强制执行虚拟内存限制 -->原创 2024-04-06 12:26:56 · 385 阅读 · 0 评论 -
windows无法使用hadoop报错:系统找不到路径
方案:由于JAVA_HOME路径有空格导致,可修改hadoop下\etc\hadoop\hadoop_env.cmd文档中set JAVA_HOME以修复该问题。环境变量的问题解决了,接下来解决批处理标签,进入D:\software\hadoop-3.1.4\bin目录下;将hadoop.cmd。将文件末尾处的HADOOP_IDENT_STRING值加上""转好后保存,其他三个文件做相同的操作。在配置中需要修改空格,参考如下。OK,说明错误已经解决。原创 2024-03-30 11:25:19 · 1590 阅读 · 0 评论 -
windows安装jdk8
我们会在windows中通过Java代码去操作hadoop集群,因此我们需要在windows系统中配置java相关的环境,今天带着大家安装以下jdk8.安装完成,可以进入C:\Program Files\Java,查看到jdk8相关目录说明安装成功。4. 此电脑--》右击 --》属性,接下来操作如下图所示。6.完成后,窗口点击确定完成关闭窗口的操作,这样内容才能被保存。如果显示版本信息,说明环境变量配置成功。3.环境变量配置-将jdk8的路径复制。5.双击path,插入%JAVA_HOME%\bin。原创 2024-03-28 19:49:39 · 734 阅读 · 0 评论 -
15 HDFS 常用的shell命令
总结来说,Hadoop命令是一个更广泛的概念,它包括了与Hadoop集群管理、服务操作相关的所有命令,而HDFS命令是Hadoop命令的一个子集,专门用于操作HDFS文件系统的命令。Hadoop命令通常指的是与Hadoop生态系统相关的命令行工具,它们可以用于管理Hadoop集群和与Hadoop相关的各种服务。HDFS命令的使用语法通常为`hdfs dfs`,后面跟着具体的操作子命令,如`put`用于上传文件,`cat`用于查看文件内容,`get`用于下载文件等。81 表示 27*3 个副本;原创 2024-03-27 20:08:06 · 841 阅读 · 0 评论 -
14 编写常用脚本
我们会发现每次启动和关闭集群,都需要逐个服务依次开启或关闭,操作起来很不方面,因此我们自己编写一些脚本完成集群的启动和关闭,查看每台服务器上集群的进程。echo " =================== 启动 hadoop 集群 ==================="echo " =================== 关闭 hadoop 集群 ==================="echo " --------------- 关闭 yarn ---------------"保存并退出,修改权限。原创 2024-03-27 19:01:32 · 465 阅读 · 0 评论 -
13 完全分布式搭建-集群配置
Hadoop配置文件分两类:默认配置文件和自定义配置文件,只有用户想修改某一默认配置值时,才需要修改自定义配置文件,更改相应属性值。core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml 四个配置文件存放在。$HADOOP_HOME/etc/hadoop 这个路径上,用户可以根据项目需求重新进行修改配置。要获取的默认文件 文件存放在 Hadoop 的 jar 包中的位置。在文章中与教材上有区别,在理论课上已讲解。原创 2024-03-25 23:58:08 · 966 阅读 · 0 评论 -
12 完全分布式搭建-SSH免密登录
还需要在 slave02上采用 yt 账号配置一下无密登录到 master、slave01、slave02服务器上。还需要在 slave01上采用 yt账号配置一下无密登录到 master、slave01、slave02服务器上。还需要在 master上采用 root 账号,配置一下无密登录到 master、slave01、slave02;然后敲(三个回车),就会生成两个文件 id_rsa(私钥)、id_rsa.pub(公钥)3).ssh 文件夹下(~/.ssh)的文件功能解释。(4)生成公钥和私钥。原创 2024-03-25 23:47:41 · 466 阅读 · 0 评论 -
集群时间同步
如果服务器在公网环境(能连接外网),可以不采用集群时间同步,因为服务器会定期和公网时间进行校准;- 如果服务器在内网环境,必须要配置集群时间同步,否则时间久了,会产生时间偏差,导致集群执行任务时间不同步。我们以master服务器作为时间服务器,其他机器都校对master的时间。(c)添加 3(当该节点丢失网络连接,依然可以采用本地时间作为时间服务器为集群中。b)修改 2(集群在局域网中,不使用其他互联网上的时间)增加内容如下(让硬件时间与系统时间一起同步)(4)1 分钟后查看机器是否与时间服务器同步。原创 2024-03-24 23:23:27 · 663 阅读 · 0 评论 -
11 搭建完全分布式-远程传输文件
2.1 首先确保slave01,slave02机器上有/opt/software /opt/module ,同时确保属于yt:yt用户:用户组,如果不属于获取不存在建议看前面的文件关于模版虚拟机的准备。按照前面的克隆,需要准备三台服务器,master,slave01,slave02.(服务器设置了静态IP、主机名称、关闭防火墙)。2.通过scp命令将master上的jdk8目录拷贝到slave01、slave02的/opt/module目录下。scp [参数] [原路径] [目标路径]原创 2024-03-21 10:20:54 · 1281 阅读 · 0 评论 -
10 搭建Hadoop单机环境并进行测试
输入命令:hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.4.jar wordcount input/word.txt output。进⼊hadoop3.1.4⽬录下,创建⼀个⽬录input,进⼊input⽬录下,编辑⼀个⽂档,在⽂档中编写⼀些单词。命令: tar -zxvf Hadoop-3.1.4.tar.gz -C /opt/module。输入命令: cd /opt/module/hadoop-3.1.4。原创 2024-03-20 19:12:34 · 731 阅读 · 0 评论 -
9 master安装JDK
3.环境变量配置,以前我们一般都是配置在/etc/profile文件中,但是在这个配置文件中有一段shell脚本,表示在加载该文件时,也会将/etc/profile.d目录下x.sh的文件进行加载,所以本次将环境变量的配置放在自建的my_ens.sh文件。在搭建集群环境前,需要安装JDK,Hadoop平台的源码是Java代码,所以需要Java的运行环境。2.执行解压缩命令 将解压的文件放到/opt/module目录下。输入命令: sudo vim /etc/profile.d/my_ens.sh。原创 2024-03-20 19:01:19 · 631 阅读 · 0 评论 -
8 克隆虚拟机
后期集群我们需要使用多台服务器,此处我们先克隆三台,master,slave01,slave02.1.建议先关闭模版虚拟机。再选择 末班虚拟机右击--》管理 --》克隆。以上步骤完成虚拟机的克隆,其他slave01,slave02按相同操作完成。其他几台虚拟机按相同的步骤完成,salve01,slave02.配置完成后,重启打开终端,就会发现主机名变成master.3.开启Master虚拟机,需要修改主机的IP,主机名。命令: vim /etc/hostname。命令: vim /etc/hosts。原创 2024-03-20 11:50:28 · 1305 阅读 · 0 评论 -
7 配置模板虚拟机
注意:yt这一行不要直接放到 root 行下面,因为所有用户都属于 wheel 组,先配置了 yt具有免密功能,但是程序执行到%wheel 行时,该功能又被覆盖回需要密码。使用远程连接工具finalShell连接虚拟机后,接下来我们使用yum命令完成一些基础软件包的安装,以及将咱们新建的用户赋予管理员权限,最后关闭防火墙和卸载自带的JDK。我们将使用yum命令进行安装,首先测试是否与外网相同,前面我们已经测试过,此处再进行测试,防止有的同学忘了连接外网。(安装的桌面版本一般都有自带的jdk,需要删除。原创 2024-03-19 19:56:46 · 1397 阅读 · 0 评论 -
6 修改主机名和HOSTS文件
主机名的修改我们可以在安装操作系统时对其修改,如果忘记了,就可以修改配置文件完成,像后期我们进行虚拟机克隆后,就必须通过修改配置文件的方式完成主机名的修改。3.修改Hosts文件配置多台服务器IP地址,这样后期我们可以根据主机名访问服务器,如果后期IP地址发生变化我们也只需要在Hosts文件中修改主机名对应的IP地址,而集群下的配置文件不需要做任何的修改即可正常工作。2.在打开的文件中,进入编辑模式 按 i键即可 ,修改完后,按Esc退出编辑模式,最后输入:wq保存文件并退出。原创 2024-03-16 10:54:30 · 1596 阅读 · 0 评论 -
5 远程连接虚拟机
FinalShell是一体化的的服务器,网络管理软件,不仅是ssh客户端,还是功能强大的开发,运维工具,充分满足开发,运维需求.在VMWare中操作Linux操作系统十分麻烦,此处我们推荐使用FinalShell工具远程连接的方式操作Linux。云端同步,免费海外服务器远程桌面加速,ssh加速,本地化命令输入框,支持自动补全,命令历史,自定义命令参数.1.点击快捷方式,打开软件,然后点击软件上的文件夹,弹出新的窗口。. 双击安装,直接默认安装即可。2.点击上图的加号,选择使用SSH连接Linux。原创 2024-03-14 11:52:08 · 637 阅读 · 0 评论 -
4 配置静态IP
1.3 点击更改设置后,选择VMnet8.可以设置子网IP网段和点击Net设置,修改网关IP网段后点击确定。2.2 选择VMnet8.右击属性,设置IP4,选择使用下面IP地址,按图上的IP地址进行设置完成后点击“确定”。弹出的框都是点击“确定”,不要直接叉掉。键盘输入i 进入编辑模式,通过光标定位到修改的位置,进行修改,首先将BOOTPROTO的值修改为static。当我们安装好Linux后,需要进行网络配置,保障windows和linux网络相通,以及通过Linux可以访问外网。原创 2024-03-14 11:09:15 · 952 阅读 · 0 评论 -
3 安装Linux操作系统
进入虚拟机时,Ctrl+Alt进入虚拟机,然后通过上下方向键移动选项选择第一个"Install CentOS 7" 按回车键。(如果想从虚拟机退出回到windows操作的界面,按Ctrl+Alt即可,虚拟机和windows界面操作主权的进入和退出 )11.下图的界面中,不手动进行分区,直接选择自动分区。只需要点击进入“”“安装位置”,再弹出的界面上点击完成即可。25.在主界面上,可以鼠标右击 弹出右击菜单,选择“打开终端”,就可以使用Linux命令了。稍等片刻,会弹出语言选择界面,在界面上选择中文。原创 2024-03-14 09:46:18 · 1249 阅读 · 0 评论 -
2 配置虚拟机
5.弹出新界面,如下图所示,在这个界面,选择“Linux”,版本centoOS7.9版本,在界面上没有小版本选择,所以大家在下拉列表中选择 "CentOS7 64位",点击“下一步”,进入其他页面。4.下图的界面上,注意,不要选择镜像。9.网络类型选择,使用NAT。1.打开VM,主页的界面如下,点击"创建新的虚拟机"14.弹出界面点击“完成”,说明虚拟机配置成功。3.下图直接点击“下一步”原创 2024-03-14 08:45:17 · 1071 阅读 · 0 评论 -
1 安装VMWare
9.点击上图“许可证”,输入密钥,密钥在安装包的readme.txt中有,直接打开复制粘贴到密钥框中,最后点击“输入”。8.点击“安装”,等待一会儿(大约几分钟),然后点击“下一步”。4.双击.exe进行VMware安装出现的第一个界面。11.在桌面上找到VMWare的快捷方式,双击打开,即可使用。10.点击下图中的“完成”,完成VMWare安装。6.勾选我接受复选框,然后点击“下一步”。5.点击下一步,出现以下界面。3.解压后文件夹中的内容。7.后面几步都是点击“下一步”原创 2024-03-14 08:17:16 · 1310 阅读 · 0 评论