Java技术栈 —— Hadoop入门(二)实战

news2024/11/22 1:17:00

Java技术栈 —— Hadoop入门(二)

  • 一、用MapReduce对统计单词个数
    • 1.1 项目流程
    • 1.2 可能遇到的问题
    • 1.3 代码勘误
    • 1.4 总结

一、用MapReduce对统计单词个数

1.1 项目流程

(1) 上传jar包。
(2) 上传words.txt文件。
(3) 用hadoop执行jar包的代码,对words.txt进行分析。

参考文章或视频链接
重点看这篇文章 [1] 《Hadoop实战——MapReduce对英文单词文本进行统计和排序(超详细教学,算法分析)》- CSDN
[2] Hadoop实战项目源码集合 - gitee
[3] HDFS文件系统的根目录和用户主目录解析 - CSDN

1.2 可能遇到的问题

(1) 无法Download结果文件。 这个问题看参考文章[1]-[3],有两个点要注意,注意你的hosts文件有没有配对,以及有没有开启dfs.webhdfs.enabled
在这里插入图片描述

(2) 删除不了hadoop下的文件夹。 这个问题的解决方案看本节参考文章[4],不过我要提醒你的是,他那篇文章里的summer对应与你当前的Linux用户,我这里就叫programmer,然后重启hadoop,dr.who是谁可以看参考文章[5]。
在这里插入图片描述

(3) 更改用户后还是无法删除文件夹。 解决方案看本节参考文章[6],先关闭安全模式再删除。

# 进入安全模式
hdfs dfsadmin -safemode enter
# 退出安全模式
hdfs dfsadmin -safemode leave

在这里插入图片描述

(4) 这里面的input文件夹和output文件夹在Linux系统上没搜到,是怎么回事?
当然搜不到,这并不是你自己OS的真实文件夹,而是存储在Hadoop的HDFS上,我下载的是3.3.6版本的hadoop,请检查你的hdfs-site.xml文件的${dfs.datanode.data.dir}配置项,注意!不同版本的hadoop这些配置项名字可能不一样,所以一切以官方文档为准,然而我并没有找到hdfs-default.xml,这些值可能已经默认存储了,具体见参考文章[7]-[9]。
这些是我的OS上的文件夹与文件位置。在这里插入图片描述

1.2 参考文章或视频链接
[1] Unable to open/download files in HDFS using Hadoop Web UI - stackoverflow
[2] 记一次HDFS Web报错Couldn‘t preview the file. NetworkError: Failed to execute ‘send‘ on ‘XMLHttpRequest‘ - CSDN
[3] HDFS Web报错Couldn‘t preview the file. - CSDN
[4] 《Hadoop常见错误及解决方案、Permission denied: user=dr.who, access=WRITE, inode=“/“:summer:supergroup:drwxr-xr-x》
[5] 《Permission denied. user=dr.who is not the owner of inode=/tmp》
[6] 《Name node is in safe mode》
[7] Where does HDFS store it’s files - stackoverflow
[8] hdfs-default.xml - hadoop
[9] 《过时的属性:Deprecated Properties》 - 博客园

1.3 代码勘误

本章节代码作者有个地方写错了,注意下即可。

//WordReduce.java文件里应该这样写
System.out.println(new Date().toGMTString() + ":" + key + "出现了" + sum);

1.4 总结

MapReduce也没那么神神秘秘(世界上没有事物是不可认识的,只有还有待认识的事物),总结起来就还是四个字,分工+协作,或者可以理解为民主集中制的基本原则之一:“个别酝酿,集体决定”
Map是拆分开来,各自计算各自思考,而Reduce就是将结果集中起来,看看大家提出的意见到底如何,并对结果按照具体需求进行排序。在MapReduce这个思想上,共产党人走在这帮搞技术的老外的前面。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1425242.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Leetcode 514】自由之路 —— 动态规划

514. 自由之路 电子游戏“辐射4”中,任务 “通向自由” 要求玩家到达名为 “Freedom Trail Ring” 的金属表盘,并使用表盘拼写特定关键词才能开门。 给定一个字符串ring,表示刻在外环上的编码;给定另一个字符串key,表…

Linux 驱动开发基础知识——总线设备驱动模型(八)

个人名片: 🦁作者简介:学生 🐯个人主页:妄北y 🐧个人QQ:2061314755 🐻个人邮箱:2061314755qq.com 🦉个人WeChat:Vir2021GKBS 🐼本文由…

unity WebGL发布游戏生成WebGL

1.unty Hub中安装WEBGL支持 2.项目平台的切换 color space需要根据项目选择 ColorSpace,是指玩家设置的颜色空间。 伽马颜色空间是历史悠久的标准格式,但线性颜色空间渲染可提供更精确的结果。 具体区别:ColorSpace 3.由于没有自己服务器…

Zookeeper分布式锁实战

目录 什么是分布式锁? 基于数据库设计思路 基于Zookeeper设计思路一(非公平锁) 基于Zookeeper设计思路二(公平锁) Curator可重入分布式锁 Curator可重入分布式锁工作流程 什么是分布式锁? 在单体的应…

无参考图像质量客观评估指标

文章目录 前言一、基于感知的图像质量评估器(Perception based Image Quality Evaluator,PIQE)二、盲/无参考图像空间质量评估器(Blind/Referenceless Image Spatial Quality Evaluator,BRISQUE)三、自然图…

C语言实战项目<贪吃蛇>

我们这篇会使用C语言在Windows环境的控制台中模拟实现经典小游戏贪吃蛇 实现基本的功能: 结果如下: 1.一些Win32 API知识 本次实现呢我们会用到一些Win32 API的知识(WIN32 API也就是Microsoft Windows 32位平台的应用程序编程接口): 1)控制窗口大小 我们可以使用…

【算法】Partitioning the Array(数论)

题目 Allen has an array a1,a2,…,an. For every positive integer k that is a divisor of n, Allen does the following: He partitions the array into n/k disjoint subarrays of length k. In other words, he partitions the array into the following subarrays: [a1,…

如何将Mac连接到以太网?这里有详细步骤

在Wi-Fi成为最流行、最简单的互联网连接方式之前,每台Mac和电脑都使用以太网电缆连接。这是Mac可用端口的标准功能。 如何将Mac连接到以太网 如果你的Mac有以太网端口,则需要以太网电缆: 1、将电缆一端接入互联网端口(可以在墙…

A+CLUB管理人支持计划第十一期 | 巨量均衡

免责声明 本文内容仅对合格投资者开放! 私募基金的合格投资者是指具备相应风险识别能力和风险承担能力,投资于单只私募基金的金额不低于100 万元且符合下列相关标准的单位和个人: (一)净资产不低于1000 万元的单位&a…

Flink 1.18.1 部署与配置 [CentOS7]

静态IP设置 # 修改网卡配置文件 vim /etc/sysconfig/network-scripts/ifcfg-ens33# 修改文件内容 TYPEEthernet PROXY_METHODnone BROWSER_ONLYno BOOTPROTOstatic IPADDR192.168.18.128 NETMASK255.255.255.0 GATEWAY192.168.18.2 DEFROUTEyes IPV4_FAILURE_FATALno IPV6INIT…

电源模块测试之电源开关机过冲测试方法

开关机过冲是指在电源在开机和关机过程中出现的瞬间电压过高或过低的现象,过冲过大容易损坏电源和设备。因此需要进行开关机过冲测试,观察在开机或关机过程中的电压波动情况,评估电源的在开关机时的性能。 电源开关机过冲的测试条件和测试标准…

Python处理图片生成天际线(2024.1.29)

1、天际线简介 天际线(SkyLine)顾名思义就是天空与地面的边界线,人站在不同的高度,会看到不同的景色和地平线,天空与地面建筑物分离的标记线,不得不说,每天抬头仰望天空,相信大家都可…

四、CPU架构介绍和分类

中央处理器(central processing unit,简称CPU)作为计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元 1、CPU架构 CPU架构是CPU厂商给属于同一系列的CPU产品定的一个制作规范,主要目的是为了作为区分不同…

最近宣布的NIST后量子密码学标准的3个关键要点

当今世界依赖于许多保护措施,即使您没有注意到这一点。从手机和智能技术到网站,从支付交易到城市基础设施,人们经常与之互动的一切,都通过保护和检查技术来保护。量子计算机能够快速轻松地打破这些保护措施,这是政府和…

Linux, Certbot快速申请免费https证书

linux环境. 更新apt,为了能正确的下载certbot apt update 安装certbot apt install certbot 如果之前nginx已经开启着了,先关掉,防止端口占用 nginx -s stop 运行certbot开始获取证书文件 certbot certonly 输入1直接回车,意思就是让certbot模拟一个web服务器执行下面的…

计算机设计大赛 深度学习 python opencv 实现人脸年龄性别识别

文章目录 0 前言1 项目课题介绍2 关键技术2.1 卷积神经网络2.2 卷积层2.3 池化层2.4 激活函数:2.5 全连接层 3 使用tensorflow中keras模块实现卷积神经网络4 Keras介绍4.1 Keras深度学习模型4.2 Keras中重要的预定义对象4.3 Keras的网络层构造 5 数据集处理训练5.1 …

社交营销巨手:HubSpot的数字推广策略揭密

在数字化的浪潮中,HubSpot作为领先的数字营销平台,一直在积极探索并应用各种关键策略,特别是在主流社交媒体平台上。今天,我们将深入解析HubSpot在数字推广中的关键策略,重点聚焦于其在社交媒体上的运用,以…

python-自动化篇-运维-可视化-绘图库-matplotlib

文章目录 Matplotlibmatplotlib开发环境搭建绘制基础绘制直线绘制折线设置标签文字和线条粗细绘制一元二次方程的曲线yx^2绘制正弦曲线和余弦曲线散点图绘制柱状图绘制饼状图绘制直方图等高线图绘制三维图 Matplotlib Matplotlib 是一个Python的 2D绘图库。通过 Matplotlib&am…

幻兽帕鲁服务器怎么收费?4核16G配置

幻兽帕鲁服务器价格多少钱?4核16G服务器Palworld官方推荐配置,阿里云4核16G服务器32元1个月、96元3个月,腾讯云换手帕服务器服务器4核16G14M带宽66元一个月、277元3个月,8核32G22M配置115元1个月、345元3个月,16核64G3…

redis源码之:redis-cli 集群命令

在集群命令执行前,需要先按上一章节的方式redis源码之:clion搭建cluster环境,启动四个新的redis节点,但不要执行cluster create命令,保持四个节点独立。 redis-cli的命令执行大抵流程差不多,下面以redis-c…