暑假周进度报告(三)-------版本过高后续问题处理,eclipse编译运行MapReduce以及Hadoop学习
问题一:Hadoop版本太高
卸载Hadoop3.2.0 我改安装了Hadoop 2.7.7
如果没有权限下载。可以采用如下方式:

卸载完成以后返回原目录即可

后面的jdk卸载也可以采用这种方式。
按照教程重新安装http://dblab.xmu.edu.cn/blog/install-hadoop/
由于后期需要安装HBASE 所以Hadoop安装版本选择问题参考如下:

然后

执行这一步时或者某些会出现各种警告,这个是由于之前安装的jdk版本过高造成的 卸载jdk 改安装jdk1.8.0
问题二:jdk版本过高
按照上述方式,卸载jdk
然后配置环境变量
然后可能会出现JAVA_HOME is not set and could not be found 类似于这种java_home找不到这种错误,或者找不到default-java等修改一下hadoop-env.sh文件改一下jdk路径即可,参考:https://blog.csdn.net/dianzishijian/article/details/52094569
运行MapReduce 项目实例的时候 可能会出现
Unable to load native-hadoop library for your platform
解决参考教程:https://blog.csdn.net/jack85986370/article/details/51902871
启动Hadoop:./sbin/start-dfs.sh
关闭Hadoop:./sbin/stop-dfs.sh
运行 Hadoop 程序时,为了防止覆盖结果,程序指定的输出目录(如 output)不能存在,否则会提示错误,因此运行前需要先删除输出目录。
./bin/hdfs dfs -rm -r output # 删除 output 文件夹
或者添加如下代码 在程序中(能在每次运行时自动删除输出目录,避免繁琐的命令行操作)
- Configuration conf = new Configuration();
- Job job = new Job(conf);
- /* 删除输出目录 */
- Path outputPath = new Path(args[1]);
- outputPath.getFileSystem(conf).delete(outputPath, true);


- // String[] otherArgs = new GenericOptionsParser(conf, args).getRemainingArgs();
- String[] otherArgs=new String[]{"input","output"}; /* 直接设置输入参数 */
分布式文件系统HDFS:
1.为了解决海量数据的分布式存储的问题
2.满足大规模数据的批量处理需求,不会去访问一块一块儿的数据
3.实时性不高
4.不支持多用户写入及任意修改文件,只允许追加数据,不允许修改
HDFS相关概念
1.块:HDFS的一个快要比普通的一个快大很多(支持面向大规模数据存储,降低分布式节点的寻址开销)-------->支持大规模文件存储,简化系统设计,适合数据备份
2.名称节点(主节点,记录数据库存储位置信息,数据目录),数据节点(存储实际数据,每个数据节点上的数据是被保存到数据节点本地的Linux文件系统中去)----->两大组件

注意,在FsImage文件中是没有具体记录块在哪个数据节点存储的
HDFS启动:先从底层读出FsImage,再读出EditLog,然后它们在内存中进行合并操作,合并后得到一个新的FsImage,删掉旧的FsImage,再生成一个新的EditLog,系统开始运行
第二名称节点:1.名称节点的冷备份,2.对EditLog的处理(帮助解决EditLog不断增大的问题)
暑假周进度报告(三)-------版本过高后续问题处理,eclipse编译运行MapReduce以及Hadoop学习的更多相关文章
- 02-03Android学习进度报告三
今天主要学习了线性布局和相对布局的概念和区别,以及线性布局和相对布局的优缺点. 经过搜素发现,我们屏幕适配的使用用的比较多的就是LinearLayout的权重属性weight,我 学习了一些 Line ...
- Hadoop 系列文章(三) 配置部署启动YARN及在YARN上运行MapReduce程序
这篇文章里我们将用配置 YARN,在 YARN 上运行 MapReduce. 1.修改 yarn-env.sh 环境变量里的 JAVA_HOME 路径 [bamboo@hadoop-senior ha ...
- 第五周总结&实验报告三
第五周总结&实验报告三 实验报告 1.已知字符串:"this is a test of java".按要求执行以下操作:(要求源代码.结果截图.) ① 统计该字符串中字母s ...
- 20135231 JAVA实验报告三:敏捷开发与XP实践
---恢复内容开始--- JAVA实验报告三:敏捷开发与XP实践 20135231 何佳 实验内容 1. XP基础 2. XP核心实践 3. 相关工具 实验要求 1.没有Linux基础的同学建议先学习 ...
- 20162317袁逸灏 第八周实验报告:实验二 Java面向对象程序设计
20162317袁逸灏 第八周实验报告:实验二 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 ...
- CSS3中flexbox如何实现水平垂直居中和三列等高布局
最近这些天都在弥补css以及css3的基础知识,在打开网页的时候,发现了火狐默认首页上有这样一个东西.
- Android特效专辑(十一)——仿水波纹流量球进度条控制器,实现高端大气的主流特效
Android特效专辑(十一)--仿水波纹流球进度条控制器,实现高端大气的主流特效 今天看到一个效果挺不错的,就模仿了下来,加上了一些自己想要的效果,感觉还不错的样子,所以就分享出来了,话不多说,上图 ...
- Windows版本redis高可用方案探究
目录 Windows版本redis高可用方案探究 前言 搭建redis主从 配置主redis-28380 配置从redis-23381 配置从redis-23382 将redis部署为服务 启动red ...
- 本周java 学习进度报告
本周java 学习进度报告 本周对我的感触很深,因为这是我初学java 语言的第一周,我认识到java 和c语言是有很多的不同之处和相同之处.我这几天几乎是在研究java 基础入门知识,而并没有太多的 ...
随机推荐
- netty(八)buffer源码学习3
问题 : compositeByteBuf 是干什么和其他 compositeByteBuf 有何区别 内部实现 概述 compositeByteBuf 就像数据库中的视图,把几个表的字段组合在一起, ...
- 支付接口API
//微信支付SDK https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=11_1
- http的长连接和短连接(史上最通俗!)
1.以前的误解 很久之前就听说过长连接的说法,而且还知道HTTP1.0协议不支持长连接,从HTTP1.1协议以后,连接默认都是长连接.但终究觉得对于长连接一直懵懵懂懂的,有种抓不到关键点的感觉. 今天 ...
- python练习:斐波那契数列的递归实现
python练习:斐波那契数列的递归实现 重难点:递归的是实现 def fib(n): if n==0 or n==1: return 1 else: return fib(n-1)+fib(n-2) ...
- 页面弹窗toast和加载loading
create-at 2019-04-04 都采用单例模式,原生js实现 兼容老版本浏览器内核,请将用es6语法的地方作修改 loading 加载 代码: 样式全部通过js创建style标签注入head ...
- 如何使用canvas绘制椭圆,扩展非chrome浏览器中的ellipse方法
这篇博文主要针对浏览器中绘制椭圆的方法扩展.在网上搜索了很多,发现他们绘制椭圆的方式都有缺陷.其中有压缩法,计算法,贝塞尔曲线法等多种方式.但是都不能很好的绘制出椭圆.所有我就对这个绘制椭圆的方式进行 ...
- 2020年一线大厂月薪35K的Python开发要求
为什么程序员要在2020年学习Python? 如果你正在考虑学习 Python,但又不确定为什么要这样做的话,那么你可以看看以下的内容: 马蜂窝裁员竟然达到了40%, 前段时间猪厂.菊厂裁员被推到了风 ...
- Springboot学习:核心配置文件
核心配置文件介绍 SpringBoot使用一个全局配置文件,配置文件名是固定的 application.properties application.yml 配置文件的作用:修改SpringBoot自 ...
- P1893山峰瞭望
传送门 看完这个题,大家都懂意思吧,然后代码呢,emmmmm #include <bits/stdc++.h> using namespace std; const int maxn = ...
- Fast Queries
传送门 #include <iostream> #include <cstdio> #include <cstring> #include <cmath> ...